AWS – S3 버켓 정책

아마존 S3에서 기본적으로 버켓은 Private로 생성이 된다. 대량의 파일을 업로드 하고 이를 공유할려고 한다면 일일이 권한을 바꿔주어야 한다. 매우 반복적인 작업이 되므로 아래와 같이 정책을 생성하여, 버켓에 적용하게 되면, 버켓 내부에 포함된 모든 파일을 쉽게 접근 할 수 있다.


Example)

{
  "Id": "Policy125042226491",
  "Statement": [
    {
      "Sid": "Stmt2123042135427",
      "Action": [
        "s3:GetObject"
      ],
      "Effect": "Allow",
      "Resource": "arn:aws:s3:::mybucket/*",
      "Principal": "*"
    }
  ]
}

위와 같은 JSON구조를 가지게 된다. 포멧을 외울 필요 없이 아마존은 정책 생성기 툴을 지원한다.

AWS – S3 버킷 전체 파일 내려받기

AWS CLI 문서 : http://docs.aws.amazon.com/cli/latest/index.html

Command Line Tool을 이용하여 쉽게 파일들을 내려 받을 수 있다. 또한 버킷에서 또 다른 버킷으로 쉽게 파일을 동기화 시킬 수 있으며, Local에서 S3 버킷 또한 가능하다.

 

1. Command Line Tool 설치하기

$ sudo easy_install awscli

또는

$ sudo pip install awscli

참조 : http://docs.aws.amazon.com/cli/latest/userguide/installing.html#install-with-pip

 

2. Bucket 전체 파일 내려받기

$ aws s3 sync s3://mybucket .

 

참조 : http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html

 

http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html