

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

# IAM for SageMaker 訓練計畫
<a name="training-plan-iam-permissions"></a>

SageMaker 訓練計畫需要兩個不同角色的特定許可：

1. **計畫建立者角色**：獲指派*計畫建立者*角色的使用者需要許可，才能搜尋訓練計畫方案、建立新的訓練計畫、列出和描述訓練計畫。

1. **計畫使用者角色**：具有*計畫使用者*角色的使用者需要許可，才能在 SageMaker 訓練任務中或在建立和更新 SageMaker HyperPod 叢集時使用訓練計劃。

使用 SageMaker 訓練計畫之前，請根據您的存取方法更新許可：
+ 對於 AWS 管理主控台 或 SageMaker SDKs使用者：更新為主控台使用者或 API 使用者設定的 IAM 角色許可。
+ 對於 AWS CLI 使用者：確保您的 AWS CLI 設定檔已正確設定適當的登入資料和許可。
+ 對於 JupyterLab 等 Studio 應用程式使用者，設定與應用程式所用空間相關聯的執行角色許可。

您可以使用受管政策或個別更精細的許可來設定這些許可。

如需如何更新角色許可政策的相關資訊，請參閱[更新角色的許可](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` 受管政策設計為易於使用的政策，主要用於實驗目的。雖然它提供對 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>

本節提供每個角色所需個別許可的詳細明細，如 [IAM for SageMaker 訓練計畫](#training-plan-iam-permissions)一節中所述。

對於計畫建立者，需要下列許可：
+ `sagemaker:SearchTrainingPlanOfferings`
+ `sagemaker:CreateTrainingPlan`
+ `sagemaker:CreateReservedCapacity`
+ `sagemaker:AddTags`
+ `sagemaker:DescribeTrainingPlan`
+ `sagemaker:ListTrainingPlans`

計畫使用者需要下列許可：
+ `sagemaker:CreateTrainingJob` (適用於 SageMaker 訓練任務)
+ `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/"` 資源 ARN。

------
#### [ 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 組態，除了叢集特定的資源之外，還包含這些相同的 ARN。

------
#### [ 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/*"
      ]
    }
  ]
}
```

------