

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# テストワークベンチ用の IAM ロールを作成する - 高度な機能
<a name="create-iam-test-set-features"></a>

**テストワークベンチ IAM ロールのアクセス許可の設定**

このセクションでは、Test Workbench アクセス許可の最小特権アクセスコントロールを実装するための AWS Identity and Access Management (IAM) アイデンティティベースのポリシーの例をいくつか示します。

1. **テストワークベンチが S3 のオーディオファイルを読み取るためのポリシー** – このポリシーにより、テストワークベンチはテストセットで使用されているオーディオファイルを読み取ることができます。以下のポリシーは、テストセット内のオーディオファイルの Amazon S3 の場所を指すように、*S3BucketName* と *S3Path* を更新するよう適宜変更する必要があります。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "TestWorkbenchS3AudioFilesReadOnly",
         "Effect": "Allow",
         "Action": [
           "s3:GetObject",
           "s3:GetObjectVersion"
         ],
         "Resource": [
           "arn:aws:s3:::S3BucketName/S3Path/*"
         ]
       }
     ]
   }
   ```

------

1. **テストワークベンチがテストセットと結果を Amazon S3 バケットに読み書きするためのポリシー** – このポリシーにより、テストワークベンチはテストセットの入力と結果を保存できます。以下のポリシーを変更して、*S3BucketName* をテストセットデータが保存される Amazon S3 バケットに更新する必要があります。テストワークベンチは、これらのデータを Amazon S3 バケットのみに保存し、Lex Service インフラストラクチャには保存しません。そのため、テストワークベンチは、適切に機能させるために Amazon S3 バケットへのアクセスが必要です。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "TestSetDataUploadWithEncryptionOnly",
         "Effect": "Allow",
         "Action": [
           "s3:PutObject"
         ],
         "Resource": [
           "arn:aws:s3:::S3BucketName/*/lex_testworkbench/test_set/*",
           "arn:aws:s3:::S3BucketName/*/lex_testworkbench/test_execution/*",
           "arn:aws:s3:::S3BucketName/*/lex_testworkbench/test_set_discrepancy_report/*"
         ],
         "Condition": {
           "StringEquals": {
             "s3:x-amz-server-side-encryption": "aws:kms"
           }
         }
       },
       {
         "Sid": "TestSetDataGetObject",
         "Effect": "Allow",
         "Action": [
           "s3:GetObject",
           "s3:GetObjectVersion"
         ],
         "Resource": [
           "arn:aws:s3:::S3BucketName/*/lex_testworkbench/test_set/*",
           "arn:aws:s3:::S3BucketName/*/lex_testworkbench/test_execution/*",
           "arn:aws:s3:::S3BucketName/*/lex_testworkbench/test_set_discrepancy_report/*"
         ]
       },
       {
         "Sid": "TestSetListS3Objects",
         "Effect": "Allow",
         "Action": [
           "s3:ListBucket"
         ],
         "Resource": [
           "arn:aws:s3:::S3BucketName"
         ]
       }
     ]
   }
   ```

------

1. **テストワークベンチが CloudWatch Logs を読み取るためのポリシー** – このポリシーにより、テストワークベンチは Amazon CloudWatch Logs に保存されている Lex 会話テキストログからテストセットを生成できます。以下のポリシーを変更して、*リージョン*、*AwsAccountId*、*LogGroupName* を更新する必要があります。

1. **テストワークベンチが Lex ランタイムを呼び出すためのポリシー** – このポリシーにより、テストワークベンチは Lex ボットに対してテストセットを実行できます。以下のポリシーを変更して、*リージョン*、*AwsAccountId*、*BotId* を更新する必要があります。テストワークベンチは Lex 環境で任意のボットをテストできるため、リソースを「arn:aws:lex:*Region*:*AwsAccountId*:bot-alias/\$1」に置き換えて、テストワークベンチにアカウント内のすべての Amazon Lex V2 ボットへのアクセスを許可できます。

1. **(オプション) テストワークベンチがテストセットデータを暗号化および復号化するポリシー** – テストワークベンチがカスタマーマネージド KMS キーを使用してテストセットの入力と結果を Amazon S3 バケットに保存するように設定されている場合、テストワークベンチには KMS キーへの暗号化と復号化の両方のアクセス許可が必要です。以下のポリシーを変更して、*Region*、*AwsAccountId*、および *KmsKeyId* を更新する必要があります。ここで、*KmsKeyId* はカスタマーマネージド KMS キーの ID です。

1. **(オプション) テストワークベンチがオーディオファイルを復号化するためのポリシー** – オーディオファイルがカスタマーマネージド KMS キーを使用して S3 バケットに保存されている場合、テストワークベンチには KMS キーへの復号化アクセス許可が必要です。以下のポリシーを変更して、*Region*、*AwsAccountId*、および *KmsKeyId* を更新する必要があります。ここで、*KmsKeyId* は、オーディオファイルの暗号化に使用されるカスタマーマネージド KMS キーの ID です。