步驟 2:(僅限 CLI) 為 Amazon Comprehend 創建 IAM 角色 - Amazon Comprehend

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

步驟 2:(僅限 CLI) 為 Amazon Comprehend 創建 IAM 角色

只有當您使用 AWS Command Line Interface (AWS CLI) 完成此自學課程時,才需要執行此步驟。如果您使用 Amazon Comprehend 主控台執行分析任務,請跳至。步驟 3:在 Amazon S3 中的文件上執行分析任務

若要執行分析任務,Amazon Comprehend 需要存取包含範例資料集且包含工作輸出的 Amazon S3 儲存貯體。IAM 角色可讓您控制 AWS 服務或使用者的許可。在此步驟中,您會為 Amazon Comprehend 創建 IAM 角色。然後,您建立並附加到此角色,以資源為基礎的政策,以授予 Amazon Comprehend 存取您的 S3 儲存貯體的存取權。在此步驟結束時,Amazon Comprehend 將擁有必要的許可,以存取您的輸入資料、存放輸出以及執行情緒和實體分析任務。

如需將 IAM 與亞馬遜合作搭配使用的詳細資訊,請參閱。Amazon Comprehend 如何與 IAM 合作

必要條件

開始之前,請執行以下動作:

建立 IAM 角色

若要存取您的 Amazon 簡單儲存服務 (亞馬遜 S3) 儲存貯體,亞馬遜需要擔任 AWS Identity and Access Management (IAM) 角色。IAM 角色宣告 Amazon Comprehend 為受信任的實體。在 Amazon Comprehend 擔任該角色並成為受信任的實體之後,您可以將儲存貯體存取權限授與 Amazon Comprehend。在此步驟中,您會建立將 Amazon Comprehend 標示為受信任實體的角色。您可以使用 AWS CLI 或 Amazon Comprehend 主控台建立角色。若要使用主控台,請跳至步驟 3:在 Amazon S3 中的文件上執行分析任務

Amazon Comprehend 主控台可讓您選取角色名稱包含「Comprehend」且信任政策包含的角色。comprehend.amazonaws.com如果您希望主控台顯示這些角色,請設定 CLI 建立的角色以符合這些準則。

若要為 Amazon Comprehend (AWS CLI) 建立 IAM 角色
  1. 將下列信任原則儲存為電腦上程式碼或文字編輯器comprehend-trust-policy.json中呼叫的 JSON 文件。此信任政策將 Amazon Comprehend 宣告為受信任的實體,並允許其擔任 IAM 角色。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "comprehend.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. 若要建立 IAM 角色,請執行下列 AWS CLI 命令。此命令會建立名為的 IAM 角色,AmazonComprehendServiceRole-access-role並將信任政策附加至該角色。path/以本機電腦的 JSON 文件路徑取代。

    aws iam create-role --role-name AmazonComprehendServiceRole-access-role --assume-role-policy-document file://path/comprehend-trust-policy.json
    提示

    如果您收到剖析參數訊息時發生錯誤,表示 JSON 信任原則檔的路徑可能不正確。根據您的主目錄提供檔案的相對路徑。

  3. 複製 Amazon 資源名稱(ARN)並將其保存在文本編輯器中。ARN 的格式類似於arn:aws:iam::123456789012:role/AmazonComprehendServiceRole-access-role。您需要此 ARN 才能執行 Amazon Comprehend 分析任務。

將身分與存取權管理政策附加至 IAM 角色

若要存取您的 Amazon S3 儲存貯體,Amazon Comprehend 需要列出、讀取和寫入的許可。若要授予 Amazon Comprehend 所需的許可,請建立 IAM 政策並將其附加到您的 IAM 角色。IAM 政策允許 Amazon Comprehend 從儲存貯體擷取輸入資料,並將分析結果寫入儲存貯體。建立政策後,您可以將其附加到 IAM 角色。

若要建立 IAM 政策 (AWS CLI)
  1. 將下列原則儲存為名為的 JSON 文件comprehend-access-policy.json。它會授予 Amazon Comprehend 對指定 S3 儲存貯體的存取權。

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ], "Effect": "Allow" }, { "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET" ], "Effect": "Allow" }, { "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ], "Effect": "Allow" } ] }
  2. 若要建立 S3 儲存貯體存取政策,請執行下列 AWS CLI 命令。path/以本機電腦的 JSON 文件路徑取代。

    aws iam create-policy --policy-name comprehend-access-policy --policy-document file://path/comprehend-access-policy.json
  3. 複製存取原則 ARN 並將其儲存在文字編輯器中。ARN 的格式類似於arn:aws:iam::123456789012:policy/comprehend-access-policy。您需要此 ARN 才能將存取政策附加到 IAM 角色。

將 IAM 政策附加到您的 IAM 角色 (AWS CLI)
  • 執行下列命令。取代policy-arn為您在上一個步驟中複製的存取原則 ARN。

    aws iam attach-role-policy --policy-arn policy-arn --role-name AmazonComprehendServiceRole-access-role

您現在擁有一個名為的 IAM 角色,AmazonComprehendServiceRole-access-role該角色具有適用於 Amazon Comprehend 的信任政策,以及授予對 S3 儲存貯體的 Amazon Comprehend 存取權限的存取政策。您也將 IAM 角色的 ARN 複製到文字編輯器。