생성하며 겪은 에러 등을 다르고 기본 생성과정을 생략합니다.
객체 URL 확인하기
👉 S3에 업로드 되는 모든 파일에는 객체 URL이 부여됩니다. 해당 URL을 브라우저 주소창에서 호출하면 업로드된 파일이 보입니다. 하지만 파일에 권한을 퍼블릭 하게 주지 않았기 때문에 AccessDenied 라는 에러가 보입니다. ![](https://velog.velcdn.com/images/wonizizi99/post/86cb988d-0fec-4358-9af6-ffb1b92e91de/image.png)AWS 도 디버깅이 필요하다 (access Denied 는 파일이 있긴 한데 이 파일에 대한 소유권이 없어서 생기는 에러임,즉 권한문제!!)
파일 저장소의 권한에서 ACCESS 는 쉽게 파일읽기/쓰기 이다.
에러 원인 : 객체 소유자는 나로 되어 있고 , 나만 객체 읽기 쓰기 가 되어
해결 하려면 [모든사람(퍼블릭 엑세스)] 로 바꿔줘야한다. [편집] 클릭
여전히 모든사람에 대한 읽기/쓰기가 비활성화 되어 있다. 이유는 노란색 박스에 있음.
적재적소하게 맞는 걸로 체크하여 설정 하면됨 ( 실습 중엔 체크하지 않아 다 허용할 수 있게함)
예> 퍼블릭한 버킷 하나/ 퍼블릭하지 않은버킷 하나 를 두는 방법 또는 한 버킷 안에서 퍼블릭파일과 퍼플릭하지 않은 파일로 나누기도 함
여전히 에러
버킷의 권한이 퍼블릭 하다고 해서 파일까지 퍼블릭이 자동으로 적용되지 않는다. 그래서 업로드할 파일이나 업로드된 파일은 별도로 권한 설정이 필요함.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:Put*",
"s3:Get*"
],
"Resource": "arn:aws:s3:::final-8-team-project/*" 내버킷이름넣기
}
]
}
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"HEAD",
"GET",
"PUT",
"POST"
],
"AllowedOrigins": [
"*"
],
"ExposeHeaders": [
"ETag"
]
}
]
한 후 다시 브라우저로 새로고침하면 이미지 파일이 잘 업로드 된 것을 볼 수 있음
해당 링크 보고 직접 엑세스 키 ID, 비밀 엑세스 키 생성하기
**계정 액세스 키 ID와 보안 액세스 키를 얻는 방법은 다음과 같습니다.**
AWS 계정 및 액세스 키 - AWS Tools for PowerShell
메모해 둘것 ( 유출 조심)
엑**세스 키 ID :
**비밀 엑세스 키 :
cloud:
aws:
credentials:
secret-key: nO4OGU7dgf0pmfDTSBV4el/wimrYr2X+r8VoQw24
access-key: AKIA3PSCLOQMSB5J7ZBK
s3:
bucket: final-8-team-project
region:
static: ap-northeast-2
stack:
auto: 'false'