如何將我的 Amazon EC2 執行個體存取權授予 Amazon S3 儲存貯體?

2 分的閱讀內容
0

我無法從我的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體存取 Amazon Simple Storage Service (Amazon S3) 儲存貯體。如何從 EC2 執行個體啟用 S3 儲存貯體的讀取/寫入存取權?

簡短描述

若要從 EC2 執行個體連線至 S3 儲存貯體,您必須執行下列操作:

1.    建立授予 Amazon S3 存取權的 AWS Identity and Access Management (IAM) 設定檔角色。

2.    將 IAM 執行個體設定檔連接至執行個體。

3.    驗證 S3 儲存貯體的許可。

4.    驗證從 EC2 執行個體至 Amazon S3 的網路連線。

5.    驗證 S3 儲存貯體的存取權。

解決方法

建立授予 Amazon S3 存取權的 IAM 執行個體設定檔

1.    開啟 IAM 主控台

2.    選擇角色,然後選擇建立角色

3.    選取 AWS 服務,然後在使用案例下選擇 EC2

**注意:**從選取 EC2 作為可信實體的主控台建立 IAM 角色,即會自動建立與角色名稱相同名稱的 IAM 執行個體設定檔。但是,如果角色是使用 AWS Command Line Interface (AWS CLI) 或從 API 建立,則不會自動建立執行個體設定檔。如需詳細資訊,請參閱我建立 IAM 角色,但我啟動執行個體時,角色不會出現在下拉式清單中。我該怎麼辦?

4.    選取下一步: 許可

5.    建立自訂政策,該政策會提供存取 S3 儲存貯體必要的最低許可。如需有關建立自訂政策的指示,請參閱撰寫 IAM 政策:如何授予 Amazon S3 儲存貯體存取權以及 Amazon S3 中的身分與存取管理

**注意:**建立具有最低必要許可的政策是安全性最佳實務。不過,若要允許 EC2 存取您所有的 Amazon S3 儲存貯體,請使用 AmazonS3ReadOnlyAccess 或 AmazonS3FullAccess 受管的 IAM 政策。

6.    選取下一步: 標籤,然後選取下一步: 檢閱

7.    輸入角色名稱,然後選取建立角色

將 IAM 執行個體設定檔連接至 EC2 執行個體

1.    開啟 Amazon EC2 主控台

2.    選擇執行個體

3.    選取您想要連接 IAM 角色至其中的執行個體。

4.    選擇動作標籤,選擇安全,然後選擇修改 IAM 角色

5.    選取您剛建立的 IAM 角色,然後選擇儲存。將 IAM 角色指派給您的 EC2 執行個體。

驗證 S3 儲存貯體的許可

1.    開啟 Amazon S3 主控台

2.    選取您想要驗證政策的 S3 儲存貯體。

3.    選擇許可

4.    選擇儲存貯體政策

5.    搜尋含有 Effect: Deny 的陳述式。

6.    在您的儲存貯體政策中,編輯或移除任何 Effect: Deny 陳述式,該陳述式會拒絕儲存貯體的 IAM 執行個體設定檔存取權。如需有關編輯政策的指示,請參閱編輯 IAM 政策

驗證從 EC2 執行個體到 Amazon S3 的網路連線

若要讓您的 EC2 執行個體連線至 S3 端點,執行個體必須是下列其中一個:

  • 具有公用 IP 地址的 EC2 執行個體,並具有預設路由指向網際網路閘道的路由表項目
  • 具有透過 NAT 閘道 的預設路由的私有 EC2 執行個體
  • 使用閘道 VPC 端點連線至 Amazon S3 的私有 EC2 執行個體

若要對私有 EC2 執行個體和 S3 儲存貯體之間的連線問題進行疑難排解,請參閱為什麼無法使用閘道 VPC 端點連線到 S3 儲存貯體?

驗證 S3 儲存貯體的存取權

1.    在您的 EC2 執行個體上安裝 AWS CLI

**注意:**如果您在執行 AWS CLI 命令時收到錯誤,請確保您使用的是最新版本的 AWS CLI

2.    執行下列命令,驗證您的 S3 儲存貯體的存取權。將 DOC-EXAMPLE-BUCKET 取代為 S3 儲存貯體的名稱。

aws s3 ls s3://DOC-EXAMPLE-BUCKET

**注意:**使用 AWS Key Management Service (AWS KMS) 金鑰加密的 S3 物件必須具有在下列情況授予的 kms: 解密許可:

  • 連接至執行個體的 IAM 角色。
  • KMS 金鑰政策。

如果未授予這些許可,則您無法複製或下載 S3 物件。如需詳細資訊,請參閱從 Amazon S3 下載 KMS 加密物件時,我是否需要指定 AWS KMS 金鑰?


相關資訊

為什麼我無法使用閘道 VPC 端點連線至 S3 儲存貯體?

AWS 官方
AWS 官方已更新 2 年前