

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

# 建立模型自訂的服務角色
<a name="model-customization-iam-role"></a>

若要使用自訂角色進行模型自訂，而非 Amazon Bedrock 自動建立的角色，請建立 IAM 角色，並依照[建立角色以將許可委派給 AWS服務中的步驟連接下列許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)。
+ 信任關係
+ 在 S3 中存取訓練和驗證資料以及將輸出資料寫入 S3 的許可
+ (選用) 如果您使用 KMS 金鑰加密下列任何資源，則需要解密金鑰的權限 (請參閱 [自訂模型的加密](encryption-custom-job.md))
  + 模型自訂任務或產生的自訂模型
  + 模型自訂任務的訓練、驗證或輸出資料

**Topics**
+ [信任關係](#model-customization-iam-role-trust)
+ [存取 S3 中訓練和驗證檔案以及寫入輸出檔案的許可](#model-customization-iam-role-s3)
+ [(選用) 使用跨區域推論設定檔建立蒸餾任務的許可](#customization-iam-sr-ip)

## 信任關係
<a name="model-customization-iam-role-trust"></a>

下列政策允許 Amazon Bedrock 擔任此角色，並執行模型自訂任務。以下顯示您可使用的範例政策。

您可以選擇性地限制[跨服務混淆代理人預防](cross-service-confused-deputy-prevention.md)的許可範圍，方法是使用一或多個全域條件內容索引鍵搭配 `Condition` 欄位。如需詳細資訊，請參閱 [AWS 全域條件內容索引鍵](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)。
+ 將 `aws:SourceAccount` 值設定為您的帳戶 ID。
+ (選用) 使用 `ArnEquals` 或 `ArnLike` 條件將範圍限制為帳戶 ID 中特定的模型自訂任務。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "bedrock.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnEquals": {
                    "aws:SourceArn": "arn:aws:bedrock:us-east-1:111122223333:model-customization-job/*"
                }
            }
        }
    ]
}
```

------

## 存取 S3 中訓練和驗證檔案以及寫入輸出檔案的許可
<a name="model-customization-iam-role-s3"></a>

連接下列政策，以允許角色存取訓練和驗證資料，以及寫入輸出資料的儲存貯體。將 `Resource` 清單中的值取代為您實際的儲存貯體名稱。

若要限制對儲存貯體中特定資料夾的存取，請使用資料夾路徑新增 `s3:prefix` 條件索引鍵。您可以遵循[範例 2：取得具有特定字首之儲存貯體中的物件清單](https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazon-s3-policy-keys.html#condition-key-bucket-ops-2)中的**使用者政策**範例 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::training-bucket",
                "arn:aws:s3:::training-bucket/*",
                "arn:aws:s3:::validation-bucket",
                "arn:aws:s3:::validation-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::output-bucket",
                "arn:aws:s3:::output-bucket/*"
            ]
        }
    ]
}
```

------

## (選用) 使用跨區域推論設定檔建立蒸餾任務的許可
<a name="customization-iam-sr-ip"></a>

若要在分割任務中使用教師模型的跨區域推論描述檔，服務角色除了在推論描述檔中每個區域中的模型之外AWS 區域，還必須具有在 中調用推論描述檔的許可。

如需使用跨區域 (系統定義) 推論設定檔調用的許可，請使用下列政策作為許可政策的範本，以連接至服務角色：

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CrossRegionInference",
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1:123456789012:inference-profile/${InferenceProfileId}",
                "arn:aws:bedrock:us-east-1::foundation-model/${ModelId}",
                "arn:aws:bedrock:us-east-1::foundation-model/${ModelId}"
            ]
        }
    ]
}
```

------