AWS のアカウントを追加する
利用するアカウントには S3 へのアクセスポリシーが設定されているものとする。
macbook:~ user$ aws configure --profile NAME AWS Access Key ID [None]: AWS Secret Access Key [None]: Default region name [None]: Default output format [None]:
- NAME
- 何かわかりやすい名前を指定する。今後コマンド利用する際に指定する名前なので少し考えよう。
- AWS Access Key ID
- AWS の IAM 管理から発行した値
- AWS Secret Access Key
- AWS の IAM 管理から発行した値
- Default region name
- 東京の場合は「ap-northeast-1」
- Default output format
- 何も指定しないと記述されないが、json になる
追加できたら、~/.aws/config に追記される。
S3 が見えるか、追加した profile を指定して確認する
macbook:~ user$ aws s3 ls --profile NAME 2017-03-15 22:28:15 muccha-good-looking-bucket
見えましたね。
ファイルをアップロードして確かめてみる
macbook:~ user$ aws s3 cp ~/Pictures/yakiniku.jpg s3://muccha-good-looking-bucket/ --profile NAME upload: Pictures/yakiniku.jpg to s3://muccha-good-looking-bucket/yakiniku.jpg
このままだとアクセスしても Access Denied になります。 S3 のマネジメントコンソールから、yakiniku.jpg の権限を「全員」に「開く/ダウンロード」を指定して保存しましょう。
上記のバケット名や画像は実際には存在しないのですが、以下のような URL とすることでブラウザからアクセス出来ることを確認しましょう。
http://muccha-good-looking-bucket.s3-ap-northeast-1.amazonaws.com/yakiniku.jpg
見えたら成功です。
ちなみに
アップロードする時に権限を付与できるので、以下のようにすればマネジメントコンソールでの操作しなくても全世界に公開できると思います。
macbook:~ user$ aws s3 cp ~/Pictures/yakiniku.jpg s3://muccha-good-looking-bucket/ --acl public-read --profile NAME