AWS S3の使い方
概要
- s3の一般公開はファイルホスティングをする必要がある際に便利
- s3はAWS固有のサービスではなく、互換の製品が様々なところで用いられている
- クラウド
- オンプレミス
- s3のバケットのセキュリティは個々に設定されるバケットポリシーで設定されており、IAMとは独立している
基本的なコマンド
aws s3 mb s3://my-new-bucket- バケットの作成aws s3 rb s3://my-new-bucket- バケットの削除aws s3 cp example.txt s3://my-bucket/example.txt- ファイルのアップロードaws s3 rm s3://my-bucket/example.txt- ファイルの削除aws s3 cp s3://my-bucket/example.txt example.txt- ファイルのダウンロードaws s3 cp s3://my-bucket/example.txt -- 標準出力にファイルの内容を表示(catコマンドのようなもの)aws s3 ls s3://my-bucket/- ディレクトリ(プレフィックス)のみリスト表示aws s3 ls s3://my-bucket/ --recursive- ディレクトリ以下の全てのファイルをリスト表示aws s3 cp my-folder s3://my-bucket/my-folder --recursive- フォルダのアップロードaws s3 cp s3://my-bucket/my-folder my-folder --recursive- フォルダのダウンロードaws s3 rm s3://my-bucket --recursive- バケット内の全てのファイルの削除
バケットポリシー
インターネットアクセス可能なbucketを作る
[BUCKET選択]->[アクセス権限]->[バケットポリシー]
JSONデータを記入する領域があるので、このように記す
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::{$YOUR_BACKET_NAME}/*"
}
]
}