Amazon S3에서 버킷을 공개합니다. [닫기]


286

기본적으로 모든 파일이 공개적으로 읽기 전용이되도록 Amazon S3에서 버킷을 설정하려면 어떻게해야합니까?


10
이 질문이 주제가 아닌 것으로 신고되었습니다. AWS는 심각한 프로그래머에게 중요합니다. 다음과 같이 acl 인수와 함께 cli sync 명령을 사용할 수 있습니다.aws s3 sync ./local-folder-name s3://remote-bucket-name --acl=public-read
John Vandivier

비슷한 게시물이 답변이 도움이 될 수 stackoverflow.com/a/23102551/475882
jaxxbo

답변:


462

이 블로그 게시물에 설명 된대로 버킷 정책을 설정할 수 있습니다.

http://ariejan.net/2010/12/24/public-readable-amazon-s3-bucket-policy/


@robbyt의 제안에 따라 다음 JSON을 사용하여 버킷 정책을 만듭니다.

{
  "Version": "2008-10-17",
  "Statement": [{
    "Sid": "AllowPublicRead",
    "Effect": "Allow",
    "Principal": { "AWS": "*" },
    "Action": ["s3:GetObject"],
    "Resource": ["arn:aws:s3:::bucket/*" ]
  }]
}

중요 : 교체 bucket에서 Resource버킷의 이름과 일치.


공식 AWS CLI를 사용 arn:aws:s3:::bucket하는 경우 Resource어레이에 추가해야합니다 . (그래서 /*.) 없이 나는 이것이 나와 같은 어려움을 겪고있는 다른 사람들을 돕기를 바랍니다.
silvenon

내 잘못이야. sync버킷을 보지 않고 하려는 경우에만 필요합니다 .
silvenon

6
파이썬의 boto를 통한 익명 액세스를 지원하려면이 정책을 설정하는 것 외에도 버킷의 속성> 권한 섹션에서 List권한을 부여 해야 Everyone했습니다.
크리스 베티

버전 작성 규칙은 무엇입니까? 내가 현재 날짜 2017년 11월 16일를 사용하고, 그것을보고 : 오류 : 정책이 유효한 버전 문자열이 포함되어야합니다
Timothy.Li

1
@ Timothy.Li 당신은 따옴표로 감싸는 것을 기억하십니까? "2017-11-16",
froggomad

57

Amazon은 정책 생성기 도구를 제공합니다.

https://awspolicygen.s3.amazonaws.com/policygen.html

그런 다음 AWS 콘솔에서 버킷에 대한 정책 요구 사항을 입력 할 수 있습니다.

https://console.aws.amazon.com/s3/home


이 << >> 버킷 정책 및 사용자 정책을 사용하여 공식 문서입니다 docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
Timothy.Li

1
훌륭한 링크. 구문은 너무 복잡해서 생성기를 작성해야했습니다.
timbo 2016 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.