S3 にアップロードするファイルにパブリックアクセスを付けたい

備忘録。

AWS マネコンから単純にファイルをアップロードするだけではパブリックアクセスは付かない。アクセスコントロールリスト (ACL) でパブリックアクセスを許可する必要がある。複数のファイルをまとめてアップロードする場合には不便。

CLI でもデフォルトは同様だが、--acl public-read を付けてアップロードするとパブリックアクセスを付けられる。以下はカレントの配下のファイルをパブリックアクセスを付けてまとめてアップロードする例。

aws s3 cp ./ s3://{bucket_name} --region {region_name} --acl public-read --recursive --profile {profile_name}

--recursive を付けると配下のサブフォルダを再帰的に処理してくれる。--region はなくてもいいかもしれない。

その他

あるバケットのファイルリストを見たい。

aws s3 ls s3://{bucket_name} --recursive --profile {profile_name}

あるバケットのファイルをダウンロードしたい。

aws s3 cp s3://{bucket_name}  ./ --recursive --profile {profile_name}

現場からは以上です。