

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 批量推理所需权限
<a name="batch-inference-permissions"></a>

要执行批量推理，您必须为以下 IAM 身份设置权限：
+ 用于创建和管理批量推理作业的 IAM 身份。
+ Amazon Bedrock 代入的批量推理[服务角色](security-iam-sr.md)，用于代表您执行操作。

要了解如何为每个身份设置权限，请浏览以下主题：

**Topics**
+ [

## IAM 身份提交和管理批量推理作业所需的权限
](#batch-inference-permissions-user)
+ [

## 服务角色执行批量推理所需的权限
](#batch-inference-permissions-service)

## IAM 身份提交和管理批量推理作业所需的权限
<a name="batch-inference-permissions-user"></a>

要让 IAM 身份能够使用此功能，您必须为其配置必要的权限。为此，请执行以下操作之一：
+ 要允许身份执行所有 Amazon Bedrock 操作，请将[AmazonBedrockFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonBedrockFullAccess)策略附加到该身份。如果您这样做，可跳过此主题。此选项安全性较低。
+ 作为安全最佳实践，您应仅向身份授予必要的操作权限。本主题介绍此功能所需的权限。

要将权限限制为仅用于批量推理相关的操作，请将以下基于身份的策略附加到 IAM 身份：

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "BatchInference",
            "Effect": "Allow",
            "Action": [  
                "bedrock:ListFoundationModels",
                "bedrock:GetFoundationModel",
                "bedrock:ListInferenceProfiles",
                "bedrock:GetInferenceProfile",
                "bedrock:ListCustomModels",
                "bedrock:GetCustomModel",
                "bedrock:TagResource", 
                "bedrock:UntagResource", 
                "bedrock:ListTagsForResource",
                "bedrock:CreateModelInvocationJob",
                "bedrock:GetModelInvocationJob",
                "bedrock:ListModelInvocationJobs",
                "bedrock:StopModelInvocationJob"
            ],
            "Resource": "*"
        }
    ]   
}
```

------

要进一步限制权限，您可以忽略操作，或者指定用于筛选权限的资源和条件键。有关操作、资源和条件键的更多信息，请参阅《服务授权参考》**中的以下主题：
+ [Amazon Bedrock 定义的操作](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-actions-as-permissions) – 了解操作、您可以在 `Resource` 字段中限定范围的资源类型，以及 `Condition` 字段中可用于筛选权限的条件键。
+ [Amazon Bedrock 定义的资源类型](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-resources-for-iam-policies) – 了解 Amazon Bedrock 中的资源类型。
+ [Amazon Bedrock 的条件键](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys) – 了解 Amazon Bedrock 中的条件键。

以下策略示例限定了批量处理的权限范围，仅允许账户 ID 为 `123456789012` 的用户在 `us-west-2` 区域中创建批量推理作业，并使用 Anthropic Claude 3 Haiku 模型：

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CreateBatchInferenceJob",
            "Effect": "Allow",
            "Action": [
                "bedrock:CreateModelInvocationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:us-west-2::foundation-model/anthropic.claude-3-haiku-20240307-v1:0",
                "arn:aws:bedrock:us-west-2:123456789012:model-invocation-job/*"
            ]
        }
    ]
}
```

------

## 服务角色执行批量推理所需的权限
<a name="batch-inference-permissions-service"></a>

由代入您的身份并代表您执行操作的[服务角色](security-iam-sr.md)执行批量推理。您可以通过以下方式创建服务角色：
+ 使用 AWS 管理控制台，让 Amazon Bedrock 自动为您创建具有必要权限的服务角色。您可以在创建批量推理作业时选择此选项。
+ 使用AWS Identity and Access Management并附加必要的权限，为 Amazon Bedrock 创建自定义服务角色。提交批量推理作业时，您需要指定此角色。有关创建用于批量推理的自定义服务角色的更多信息，请参阅[为批量推理创建自定义服务角色](batch-iam-sr.md)。有关创建服务角色的更多常规信息，请参阅《IAM 用户指南》中的[创建角色以委派权限给 AWS 服务](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)。

**重要**  
如果您在其中[上传数据以进行批量推断](batch-inference-data.md)的 S3 存储桶位于不同的存储桶中AWS 账户，则必须配置 S3 存储桶策略以允许服务角色访问数据。即使您使用控制台自动创建服务角色，仍必须手动配置此策略。要了解如何为 Amazon Bedrock 资源配置 S3 存储桶策略，请参阅[将存储桶策略附加到 Amazon S3 存储桶以允许其他账户访问它](s3-bucket-access.md#s3-bucket-access-cross-account)。
Amazon Bedrock 中的基础模型是AWS托管资源，不能用于需要客户所有权的 IAM 策略条件。这些模型由个人客户拥有和运营AWS，不能归个人客户所有。任何检查客户拥有的资源的 IAM 政策条件（例如使用资源标签、组织 ID 或其他所有权属性的条件）在应用于基础模型时都将失败，这可能会阻止对这些服务的合法访问。  
例如，如果您的保单包含这样的`aws:ResourceOrgID`条件：  

  ```
  {
    "Condition": {
      "StringEqualsIgnoreCase": {
        "aws:ResourceOrgID": ["o-xxxxxxxx"]
      }
    }
  }
  ```
您的批量推理作业将失败。`AccessDeniedException`删除`aws:ResourceOrgID`条件或为基础模型创建单独的策略声明。