

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

# 用于 SageMaker 培训计划的 IAM
<a name="training-plan-iam-permissions"></a>

SageMaker 培训计划需要两个不同角色的特定权限::

1. **计划创建者角色**：分配了*计划创建者*角色的用户需要相应权限，以便搜索训练计划产品、创建新的训练计划，以及列出和描述训练计划。

1. **计划用户角色**：拥有 “*计划用户” 角色的用户*需要权限才能在 SageMaker 训练作业中或创建和更新 SageMaker HyperPod 集群时使用训练计划。

在使用 SageMaker 训练计划之前，请根据您的访问方法更新权限：
+ 对于 AWS 管理控制台 或 SageMaker SDKs 用户：更新为控制台用户或 API 用户配置的 IAM 角色的权限。
+ 对于 AWS CLI 用户：确保您的 AWS CLI 个人资料已正确配置相应的凭据和权限。
+ 对于 Studio 应用程序用户（例如） JupyterLab，为与应用程序使用的空间关联的执行角色设置权限。

您可以使用托管策略或单个更精细的权限来设置这些权限。

有关如何更新角色的权限策略的信息，请参阅[更新角色的权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-permissions.html)。有关如何查找并更新执行角色的信息，请参阅[获取执行角色](sagemaker-roles.md#sagemaker-roles-get-execution-role)。

**注意**  
管理员应仔细考虑哪些用户需要能够创建训练计划并相应地分配权限。

## 托管策略
<a name="training-plan-managed-policies"></a>
+ 对于计划创建者：[https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSageMakerTrainingPlanCreateAccess.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSageMakerTrainingPlanCreateAccess.html) 提供了创建和管理训练计划的权限。
+ 对于计划用户：[https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSageMakerFullAccess.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSageMakerFullAccess.html) 包含使用训练计划的权限。

**注意**  
`AmazonSageMakerFullAccess`托管策略被设计为主要用于实验目的的 ease-of-use策略。虽然它提供了对 SageMaker AI 功能的广泛访问权限，包括使用训练计划，但值得注意的是：  
由于该策略的权限范围较广，因此建议不要在生产环境中使用该策略。
该策略不包括创建训练计划的权限，因为 `CreateTrainingPlan` 被视为需要预付款的管理类操作。
对于生产使用案例，我们强烈建议您创建符合最低权限原则的自定义策略，并仅授予每个角色所需的特定权限。

## 单独权限
<a name="training-plan-individual-permissions"></a>

以下列表根据用户需要在 SageMaker 训练计划中执行的特定操作，详细说明了应在角色的 IAM 策略声明中设置的精细权限：

### 训练计划权限列表
<a name="training-plan-individual-permissions-list"></a>
+ `SearchTrainingPlanOfferings`：此权限允许用户搜索可用的训练计划产品。

  ```
  {
    "Sid": "SearchTrainingPlanOfferingsPermissions",
    "Effect": "Allow",
    "Action": [
      "sagemaker:SearchTrainingPlanOfferings"
    ],
    "Resource": "*"
  }
  ```
+ `CreateTrainingPlan`：此权限允许用户创建新的训练计划。
**注意**  
您还必须包括 `CreateReservedCapacity` 和 `AddTags` 的权限，并同时指定 `training-plan` 和 `reserved-capacity` 资源类型。

  ```
  {
    "Sid": "CreateTrainingPlanPermissions",
    "Effect": "Allow",
    "Action": [
      "sagemaker:CreateTrainingPlan",
      "sagemaker:CreateReservedCapacity",
      "sagemaker:AddTags"
    ],
    "Resource": [
      "arn:aws:sagemaker:*:*:training-plan/*",
      "arn:aws:sagemaker:*:*:reserved-capacity/*"
    ]
  }
  ```
+ `DescribeTrainingPlan`：此权限允许用户查看现有训练计划的详细信息。

  ```
  {
    "Sid": "DescribeTrainingPlanPermissions",
    "Effect": "Allow",
    "Action": [
      "sagemaker:DescribeTrainingPlan"
    ],
    "Resource": [
      "arn:aws:sagemaker:::training-plan/*"
    ]
  }
  ```
+ `ListTrainingPlans`：此权限允许用户列出其 AWS 账户中的所有训练计划。

  ```
  {
    "Sid": "ListTrainingPlansPermissions",
    "Effect": "Allow",
    "Action": [
      "sagemaker:ListTrainingPlans"
    ],
    "Resource": "*"
  }
  ```

### 每种用户类型的单独权限
<a name="training-plan-permissions-per-user-type"></a>

此部分针对[用于 SageMaker 培训计划的 IAM](#training-plan-iam-permissions) 部分中提及的各个角色，详细解析了其所需的单独权限。

对于计划创建者，以下权限是必需的：
+ `sagemaker:SearchTrainingPlanOfferings`
+ `sagemaker:CreateTrainingPlan`
+ `sagemaker:CreateReservedCapacity`
+ `sagemaker:AddTags`
+ `sagemaker:DescribeTrainingPlan`
+ `sagemaker:ListTrainingPlans`

计划用户需要以下权限：
+ `sagemaker:CreateTrainingJob`（适用于 T SageMaker raining Job）
+ `sagemaker:CreateCluster`和`sagemaker:UpdateCluster`（对于 SageMaker HyperPod）
+ 访问`training-plan`和`reserved-capacity`资源；为 SageMaker 培训计划配置 IAM 策略时，包括对`training-plan`和`reserved-capacity`资源的权限。 SageMaker 训练作业和 SageMaker HyperPod 集群都需要这些资源。这样，您的 IAM 角色就可以与 SageMaker 培训计划资源进行交互并管理预留容量。
  + 对于 SageMaker 培训任务，请确保您的策略包含`"arn:aws:sagemaker:::training-plan/"`和`"arn:aws:sagemaker:::reserved-capacity/"`资源 ARNs。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sagemaker:CreateTrainingJob"
      ],
      "Resource": [
        "arn:aws:sagemaker:us-east-2:111122223333:training-job/",
        "arn:aws:sagemaker:us-east-2:111122223333:training-plan/",
        "arn:aws:sagemaker:us-east-2:111122223333:reserved-capacity/*"
      ]
    }
  ]
}
```

------

同样，对于 SageMaker HyperPod 配置，除了群集特定的 ARNs 资源外，还要包括这些配置。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sagemaker:CreateCluster",
        "sagemaker:UpdateCluster"
      ],
      "Resource": [
        "arn:aws:sagemaker:us-east-2:111122223333:cluster/",
        "arn:aws:sagemaker:us-east-2:111122223333:training-plan/",
        "arn:aws:sagemaker:us-east-2:111122223333:reserved-capacity/*"
      ]
    }
  ]
}
```

------