AWS——パート 04 (AWS Amazon S3 (クラウド内のスケーラブルなストレージ)-02——EC2 が S3 バケットにアクセス)
1 はじめに
- AWS に関する最初のいくつかの紹介記事は次のとおりです。
2. EC2インスタンス+S3バケットの作成
- ここで使用するのは全て以前に作成したものですが、作成方法については以下の2つの記事を参照してください。
3. IAM ロールを作成する
-
IAM ロールについては、公式 Web サイトのドキュメントを参照してください:
https://docs.aws.amazon.com/zh_cn/IAM/latest/UserGuide/introduction.html?icmpid=docs_iam_console。
-
次のように IAM ロールを作成します。
4. EC2 の IAM ロールを変更する
- 次のように:
5. EC2 に接続して効果を確認します
5.1 EC2に接続する
- 次のように:
5.2 簡単なテスト
5.2.1 バケット内の保管状況を確認する
- 次のように:
5.2.2 ローカルファイルをバケットにコピーする
- 次のように:
5.2.3 バケット内のファイルをローカル EC2 サービスにコピーする
- 次のように:
aws s3 cp s3://susu-bucket/aa.txt ./
5.3 よく使用される簡単なコマンド
- バケットリストを表示する
aws s3 ls
- バケット内のストレージ状況を確認する
aws s3 ls s3://susu-bucket
- ローカルファイルをバケットに移動/コピーする
aws s3 mv aa.txt s3://susu-bucket aws s3 cp bb.txt s3://susu-bucket
- バケット内のファイルをローカルにコピーします
aws s3 cp s3://susu-bucket/aa.txt ./
6. 発生した問題
6.1 アクセスが拒否されました
6.6.1 問題の説明
- 次のように:
An error occurred (AccessDenied) when calling the ListBuckets operation: Access Denied
6.6.2 問題解決
6.6.2.1 問題 1 を解決してみる
- EC2インスタンスを再起動しても問題は解決しない
6.6.2.2 問題 2 を解決してみる
- 次のように新しいインスタンスを開始します。
- まだ動作せず、問題は解決されていません。
6.6.2.3 問題 3 を解決してみる
- バケットを空にしてバケットを再作成しても、問題は解決されません。!!
6.6.2.4 問題 4 の解決を試みる - 信頼関係を変更する
- 修正前は以下の通りでした。
- 修正後は以下の通りです。
- まだ未解決です!!!
6.6.2.5 問題 5 の解決を試みる - IAM アクセス許可ポリシーを変更する (問題の解決策)
- IAM の作成時に、権限ポリシーが次のように誤って選択されました。
- 次のようにコマンドを再試行してください
aws s3 ls
。