

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

# を使用してモデル評価ジョブを暗号化するために必要なキーポリシー要素 AWS KMS
<a name="model-evaluation-security-kms"></a>

すべての AWS KMS キーには、キーポリシーが 1 つだけ必要です。キーポリシーのステートメントは、 AWS KMS キーを使用するアクセス許可を持つユーザーとその使用方法を決定します。IAM ポリシーと許可を使用して AWS KMS キーへのアクセスを制御することもできますが、すべての AWS KMS キーにキーポリシーが必要です。

**Amazon Bedrock で必要な AWS KMS キーポリシー要素**
+ `kms:Decrypt` — AWS Key Management Service キーで暗号化されたファイルの場合、Amazon Bedrock にそれらのファイルにアクセスして復号するアクセス許可を付与します。
+ `kms:GenerateDataKey` — AWS Key Management Service キーを使用してデータキーを生成するアクセス許可を制御します。Amazon Bedrock は、`GenerateDataKey` を使用して評価ジョブを保存する一時データを暗号化します。
+ `kms:DescribeKey` — KMS キーに関する詳細情報を提供します。

既存の AWS KMS キーポリシーに次のステートメントを追加する必要があります。これにより、指定した AWS KMS を使用して Amazon Bedrock サービスバケットにデータを一時的に保存するアクセス許可が Amazon Bedrock に付与されます。

```
{
	"Effect": "Allow",
	"Principal": {
	    "Service": "bedrock.amazonaws.com"
	},
	"Action": [
	    "kms:GenerateDataKey",
	    "kms:Decrypt",
	    "kms:DescribeKey"
	],
	"Resource": "*",
	"Condition": {
	    "StringLike": {
	        "kms:EncryptionContext:evaluationJobArn": "arn:aws:bedrock:{{region}}:{{accountId}}:evaluation-job/*",
	        "aws:SourceArn": "arn:aws:bedrock:{{region}}:{{accountId}}:evaluation-job/*"
	    }
	}
}
```

完全な AWS KMS ポリシーの例を次に示します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "key-consolepolicy-3",
    "Statement": [
        {
            "Sid": "EnableIAMUserPermissions",
            "Effect": "Allow",
            "Principal": {
            "AWS": "arn:aws:iam::{{111122223333}}:root"
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Sid": "BedrockDataKeyAndDecrypt",
            "Effect": "Allow",
            "Principal": {
                "Service": "bedrock.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt"
            ],
            "Resource": "*",
            "Condition": {
                "ArnLike": {
                    "kms:EncryptionContext:evaluationJobArn": "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:evaluation-job/*",
                    "aws:SourceArn": "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:evaluation-job/*"
                }
            }
        },
        {
            "Sid": "BedrockDescribeKey",
            "Effect": "Allow",
            "Principal": {
                "Service": "bedrock.amazonaws.com"
            },
            "Action": "kms:DescribeKey",
            "Resource": "*",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:evaluation-job/*"
                }
            }
        }
    ]
}
```

------

## CreateEvaluationJob API を呼び出すロールの KMS アクセス許可の設定
<a name="model-evaluation-kms-create-job"></a>

評価ジョブで使用する KMS キーに対して、評価ジョブの作成に使用するロールに DescribeKey、GenerateDataKey、Decrypt アクセス許可があることを確認します。

KMS キーポリシーの例

```
{
    "Statement": [
       {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::account-id:role/APICallingRole"
            },
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKey",
                "kmsDescribeKey"
            ],
            "Resource": "*"
       }
   ]
}
```

CreateEvaluationJob API を呼び出すロールの IAM ポリシーの例

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CustomKMSKeyProvidedToBedrockEncryption",
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt",
                "kms:DescribeKey"
            ],
            "Resource": [
                "arn:aws:kms:{{us-east-1}}:{{123456789012}}:key/{{keyYouUse}}"
            ]
        }
    ]
}
```

------