

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

# Amazon SageMaker 角色管理器
<a name="role-manager"></a>

努力透過 Amazon SageMaker AI 獲得最低權限許可的機器學習 (ML) 管理員必須考慮到多元化的業界觀點，包括資料科學家、機器學習操作 (MLOps) 工程師等人物角色所需的唯一最低權限存取需求。使用 Amazon SageMaker 角色管理器，直接透過 Amazon SageMaker AI 主控台為一般機器學習需求建立和管理人物角色型 IAM 角色。

Amazon SageMaker 角色管理器為常見的 ML 活動提供 3 個預先設定的角色人物角色和預先定義的許可。探索提供的人物角色及其建議的政策，或為您的業務需求獨特的角色建立和維護角色。如果您需要其他自訂項目，請在 Amazon SageMaker Role Manager 的[步驟 1. 輸入角色資訊](role-manager-tutorial.md#role-manager-tutorial-enter-role-information)為 [Amazon Virtual Private Cloud](https://aws.amazon.com/vpc/) 資源和 [AWS Key Management Service](https://aws.amazon.com/kms/) 加密金鑰指定聯網和加密許可。

**Topics**
+ [使用角色管理器 (主控台)](role-manager-tutorial.md)
+ [使用角色管理器 (AWS CDK)](role-manager-tutorial-cdk.md)
+ [人物角色參考](role-manager-personas.md)
+ [機器學習 (ML) 活動參考](role-manager-ml-activities.md)
+ [啟動 Studio Classic](role-manager-launch-notebook.md)
+ [角色管理器常見問題](role-manager-faqs.md)

# 使用角色管理器 (主控台)
<a name="role-manager-tutorial"></a>

您可以從 Amazon SageMaker AI 主控台左側導覽上的下列位置使用 Amazon SageMaker 角色管理器：
+ **入門** — 快速為您的使用者新增許可政策。
+ **網域** - 為 Amazon SageMaker AI 網域內的使用者新增許可政策。
+ **筆記本** — 為建立和執行筆記本的使用者新增最低許可。
+ **訓練** — 為建立和管理訓練工作的使用者新增最低許可。
+ **推論** — 為部署和管理推論模型的使用者新增最低許可。

您可以使用下列程序，從 SageMaker AI 主控台中的不同位置開始建立角色的程序。

## 開始使用
<a name="role-manager-tutorial-getting-started"></a>

如果您是第一次使用 SageMaker AI，我們建議您從**入門**一節建立角色。

若要使用 Amazon SageMaker 角色管理器建立角色，請執行下列動作。

1. 開啟 Amazon SageMaker AI 主控台。

1. 在左側導覽窗格中，選擇**管理員組態**。

1. 在**管理員組態**下，選擇**角色管理器**。

1. 選擇**建立角色**。

## domains
<a name="role-manager-tutorial-domain"></a>

當您開始建立 Amazon SageMaker AI 網域的程序時，您可以使用 Amazon SageMaker 角色管理器建立角色。

若要使用 Amazon SageMaker 角色管理器建立角色，請執行下列動作。

1. 開啟 Amazon SageMaker AI 主控台。

1. 在左側導覽窗格中，選擇**管理員組態**。

1. 在**管理員組態**下，選擇**網域**。

1. 選擇**建立網域**。

1. 選擇**使用角色建立精靈建立角色**。

## 筆記本
<a name="role-manager-tutorial-notebook"></a>

您可以在開始建立筆記本的程序時，使用 Amazon SageMaker 角色管理器建立角色。

若要使用 Amazon SageMaker 角色管理器建立角色，請執行下列動作。

1. 開啟 Amazon SageMaker AI 主控台。

1. 在左側導覽列中，選取**筆記本**。

1. 選擇**筆記本執行個體**。

1. 選擇**建立筆記本執行個體**。

1. 選擇**使用角色建立精靈建立角色**。

## 培訓
<a name="role-manager-tutorial-training"></a>

您可以在開始建立訓練任務的程序時，使用 Amazon SageMaker 角色管理器建立角色。

若要使用 Amazon SageMaker 角色管理器建立角色，請執行下列動作。

1. 開啟 Amazon SageMaker AI 主控台。

1. 在左側導覽列中，選擇**訓練**。

1. 選取**訓練工作**。

1. 選擇**建立訓練工作**。

1. 選擇**使用角色建立精靈建立角色**。

## Inference
<a name="role-manager-tutorial-inference"></a>

當您開始部署用於推論的模型的程序時，您可以使用 Amazon SageMaker 角色管理器建立角色。

若要使用 Amazon SageMaker 角色管理器建立角色，請執行下列動作。

1. 開啟 Amazon SageMaker AI 主控台。

1. 在左側導覽列中，選擇**推論**。

1. 選擇**模型**。

1. 選擇**建立模型**。

1. 選擇**使用角色建立精靈建立角色**。

完成上述程序之後，請使用下列各節中的資訊來協助您建立角色。

## 先決條件
<a name="role-manager-tutorial-prerequisites"></a>

若要使用 Amazon SageMaker 角色管理器，您必須擁有建立 IAM 角色的許可。此許可通常可用於機器學習 (ML) 系統管理員和 ML 從業人員具有最低權限許可的角色。

您可以切換角色，暫時在 中擔任 AWS 管理主控台 [IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)。如需使用角色的方法詳細資訊，請參閱 *IAM 使用者指南*中的[使用 IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html)。

## 步驟 1. 輸入角色資訊
<a name="role-manager-tutorial-enter-role-information"></a>

提供一個名稱用作新 SageMaker AI 角色的唯一尾碼。預設情況下，首碼 `"sagemaker-"` 會新增至每個角色名稱，以便可以在 IAM 主控台中輕鬆搜尋。例如，如果您在建立角色期間命名角色為 `test-123`，您的角色會在 IAM 主控台中顯示為 `sagemaker-test-123`。您可以選擇新增角色的描述，以提供其他詳細資訊。

然後，從其中一個可用的人物角色中選擇取得資料科學家、資料工程師或機器學習作業 (MLOps) 工程師等角色的建議許可。如需有關可用人物角色及其建議許可的資訊，請參閱[人物角色參考](role-manager-personas.md)。若要在沒有任何建議許可來引導您的情況下建立角色，請選擇**自訂角色設定**。

**注意**  
我們建議您先使用角色管理器建立 SageMaker AI 運算角色，以便 SageMaker AI 運算資源能夠執行訓練和推論等任務。使用 SageMaker AI 運算角色人物角色與角色管理器一起建立此角色。建立 SageMaker AI 運算角色後，請記下其 ARN 以備未來使用。

### 網路和加密條件
<a name="role-manager-tutorial-enter-role-information-network-and-encryption"></a>

建議您啟用 VPC 自訂，以使用 VPC 組態、子網路和安全群組，以及與新角色相關聯的 IAM 政策。啟用 VPC 自訂項目後，與 VPC 資源互動的機器學習 (ML) 活動之 IAM 政策會縮減範圍，以獲得最低權限存取。VPC 自訂項目不會預設為啟用。如需有關建議之網路架構的詳細資訊，請參閱*AWS 技術指南*中的[網路架構](https://docs.aws.amazon.com/whitepapers/latest/build-secure-enterprise-ml-platform/networking-architecture.html)。

您也可以使用 KMS 金鑰來加密、解密和重新加密包含高敏感資料的受管制工作負載資料。啟用 AWS KMS 自訂時，支援自訂加密金鑰之 ML 活動的 IAM 政策會縮小範圍，以取得最低權限的存取。如需更多資訊，請參閱*AWS 技術指南*中的[使用 AWS KMS加密](https://docs.aws.amazon.com/whitepapers/latest/build-secure-enterprise-ml-platform/encryption-with-kms.html)。

## 步驟 2. 設定機器學習 (ML) 活動
<a name="role-manager-tutorial-configure-ml-activities"></a>

每個 Amazon SageMaker Role Manager ML 活動都包含建議的 IAM 許可，以提供對相關 AWS 資源的存取。某些機器學習 (ML) 活動需要您新增服務角色 ARN 才能完成設定。如需有關預先定義機器學習 (ML) 活動及其許可的資訊，請參閱[機器學習 (ML) 活動參考](role-manager-ml-activities.md)。如需新增服務角色的資訊，請參閱[服務角色](#role-manager-tutorial-configure-ml-activities-service-roles)。

根據選擇的人物角色，已選取某些機器學習 (ML) 活動。您可以取消選取任何建議的機器學習 (ML) 活動，或選取其他活動來建立您自己的角色。如果您選取自訂角色設定的人物角色，則不會在此步驟中預先選取機器學習 (ML) 活動。

您可以在 中將任何其他 AWS 或客戶管理的 IAM 政策新增至您的角色[步驟 3：新增其他政策和標籤](#role-manager-tutorial-add-policies-and-tags)。

### 服務角色
<a name="role-manager-tutorial-configure-ml-activities-service-roles"></a>

有些 AWS 服務需要服務角色，才能代表您執行動作。如果您選取的機器學習 (ML) 活動要求您傳遞服務角色，則必須提供該服務角色的 ARN。

您可以建立新的服務角色或使用現有的服務角色，例如使用 SageMaker AI 運算角色人物角色建立的服務角色。您可以在 [IAM 主控台](https://console.aws.amazon.com/iamv2/)的角色區段中選取角色名稱以找到現有角色的 ARN。若要進一步了解 服務角色，請參閱[為 AWS 服務建立角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)。

## 步驟 3：新增其他政策和標籤
<a name="role-manager-tutorial-add-policies-and-tags"></a>

您可以將任何現有 AWS 或客戶管理的 IAM 政策新增至新角色。如需現有 SageMaker AI 政策的相關資訊，請參閱 [Amazon SageMaker AI 的AWS 受管政策](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol.html)。您也可以在 [IAM 主控台](https://console.aws.amazon.com/iamv2/)的**角色**區段中檢查現有政策。

或者，使用標籤型政策條件來指派中繼資料資訊，以分類和管理 AWS 資源。每個標籤都由鍵值組表示。如需詳細資訊，請參閱[使用標籤控制對 AWS 資源的存取](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html)。

## 檢閱角色
<a name="role-manager-tutorial-review-role"></a>

請花點時間檢閱與新角色關聯的所有資訊。選擇**上一步**返回並編輯任何資訊。當您準備好建立角色，請選擇**建立**。這會產生具有所選機器學習 (ML) 活動許可的角色。您可以在 [IAM 主控台](https://console.aws.amazon.com/iamv2/)的**角色**區段中檢視新角色。

# 使用角色管理器 (AWS CDK)
<a name="role-manager-tutorial-cdk"></a>

使用 AWS Cloud Development Kit (AWS CDK) 搭配 Amazon SageMaker Role Manager，以程式設計方式建立角色並設定許可。您可以使用 AWS CDK 來完成您可以使用 執行的任何任務 AWS 管理主控台。CDK 的程式設計存取可讓您更輕鬆地提供使用者存取特定資源的許可。如需 的詳細資訊 AWS CDK，請參閱[什麼是 AWS CDK？](https://docs.aws.amazon.com/cdk/v2/guide/home.html)

**重要**  
您必須使用 SageMaker AI 運算角色人物角色來建立 SageMaker AI 運算角色。如需有關運算人物角色的更多相關資訊，請參閱[SageMaker AI 運算人物角色](role-manager-personas.md#role-manager-personas-compute)。如需可用於在 中建立運算角色的程式碼 AWS CDK，請參閱 [將許可授予運算人物角色](#role-manager-cdk-compute-persona)。

以下是您可以在 AWS CDK中執行的任務範例：
+ 建立具有機器學習 (ML) 人物角色 (例如資料科學家和 MLOp 工程師) 具有細緻許可的 IAM 角色。
+ 從機器學習 (ML) 人物角色或 ML 活動授予 CDK 結構的許可。
+ 設定機器學習 (ML) 活動條件參數。
+ 啟用全域 Amazon VPC 和 AWS Key Management Service 條件，並為其設定值。
+ 為您的使用者從所有機器學習 (ML) 活動的版本中選擇，而不會造成他們的存取中斷。

與使用 SageMaker AI 的機器學習 (ML) 相關的常見 AWS 任務需要特定的 IAM 許可。執行任務的許可在 Amazon SageMaker 角色管理器中定義為機器學習 (ML) 活動。機器學習 (ML) 活動會指定連結至 IAM 角色的一組許可。例如，Amazon SageMaker Studio Classic 的 ML 活動具有使用者存取 Studio Classic 所需的所有許可。如需機器學習 (ML) 活動的更多相關資訊，請參閱[機器學習 (ML) 活動參考](role-manager-ml-activities.md)。

當您建立角色時，您必須先定義機器學習 (ML) 角色或 ML 活動的建構。建構是 AWS CDK 堆疊內的資源。例如，建構可以是 Amazon S3 儲存貯體、Amazon VPC 子網路或 IAM 角色。

建立人物角色或活動時，您可以將與該角色或活動關聯的許可限制在特定資源。例如，您可以自訂活動，僅為 Amazon VPC 內的特定子網路提供許可。

定義許可之後，您可以建立角色，然後傳遞這些角色來建立其他資源，例如 SageMaker 筆記本執行個體。



以下是 TypeScript 中的代碼範例，你可以使用 CDK 完成的任務。建立活動時，您可以指定活動建構的 ID 和選項。這些選項是指定活動所需參數的字典，例如 Amazon S3。對於沒有所需參數的活動，您會傳遞空白字典。

## 將許可授予運算人物角色
<a name="role-manager-cdk-compute-persona"></a>

下列程式碼會建立資料科學家機器學習 (ML) 人物角色，其中包含一組人物角色特定的 ML 活動。ML 活動的許可僅適用於角色建構中指定的 Amazon VPC 和 AWS KMS 組態。下列程式碼會為資料科學家人物角色建立類別。機器學習 (ML) 活動在活動清單中定義。VPC 許可和 KMS 許可定義為活動清單外的選用參數。

定義 類別之後，您可以在 AWS CDK 堆疊中建立角色做為建構。您也可以建立筆記本執行個體。使用您在下列程式碼中建立的 IAM 角色的人員，可以在登入其 AWS 帳戶時存取筆記本執行個體。

```
export class myCDKStack extends cdk.Stack {
  constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    const persona = new Persona(this, 'example-persona-id', {
        activities: [
            Activity.accessAwsServices(this, 'example-id1', {})
        ]
    });

    const role = persona.createRole(this, 'example-IAM-role-id', 'example-IAM-role-name');
    
    }
}
```

## 將許可授予資料科學家人物角色
<a name="role-manager-cdk-data-scientist"></a>

下列程式碼會建立資料科學家機器學習 (ML) 人物角色，其中包含一組人物角色特定的 ML 活動。機器學習 (ML) 活動的許可僅適用於角色建構中指定的 VPC 和 KMS 組態。下列程式碼會為資料科學家人物角色建立類別。機器學習 (ML) 活動在活動清單中定義。Amazon VPC 許可和 AWS KMS 許可會定義為活動清單外的選用參數。

定義 類別之後，您可以在 AWS CDK 堆疊中建立角色做為建構。您也可以建立筆記本執行個體。使用您在下列程式碼中建立的 IAM 角色的人員，可以在登入其 AWS 帳戶時存取筆記本執行個體。

```
export class myCDKStack extends cdk.Stack {
  constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    const persona = new Persona(this, 'example-persona-id', {
        activities: [
            Activity.runStudioAppsV2(this, 'example-id1', {}),
            Activity.manageJobs(this, 'example-id2', {rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')]}),
            Activity.manageModels(this, 'example-id3', {rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')]}),
            Activity.manageExperiments(this, 'example-id4', {}),
            Activity.visualizeExperiments(this, 'example-id5', {}),
            Activity.accessS3Buckets(this, 'example-id6', {s3buckets: [s3.S3Bucket.fromBucketName('amzn-s3-demo-bucket')]})
        ],
        // optional: to configure VPC permissions
        subnets: [ec2.Subnet.fromSubnetId('example-VPC-subnet-id')],
        securityGroups: [ec2.SecurityGroup.fromSecurityGroupId('example-VPC-security-group-id')],
        // optional: to configure KMS permissions
        dataKeys: [kms.Key.fromKeyArn('example-KMS-key-ARN')],
        volumeKeys: [kms.Key.fromKeyArn('example-KMS-key-ARN')],
    });

    const role = persona.createRole(this, 'example-IAM-role-id', 'example-IAM-role-name');
    
    const notebookInstance = new CfnNotebookInstance(this, 'example-notebook-instance-name', { RoleArn: role.RoleArn, ...});
    }
}
```

## 授予許可給機器學習 (ML) 操作人物角色
<a name="role-manager-cdk-ml-ops-persona"></a>

下列程式碼會建立機器學習 (ML) 操作角色，其中包含一組 ML 活動特定的該角色。ML 活動的許可僅適用於角色建構中指定的 Amazon VPC 和 AWS KMS 組態。下列程式碼會建立 ML Ops 人物角色的類別。機器學習 (ML) 活動在活動清單中定義。VPC 許可和 KMS 許可定義為活動清單外的選用參數。

定義 類別之後，您可以在 AWS CDK 堆疊中建立角色做為建構。您也可以建立 Amazon SageMaker Studio Classic 使用者設定檔。使用您在下列程式碼中建立的 IAM 角色的人員，可以在登入其 AWS 帳戶時開啟 SageMaker Studio Classic。

```
export class myCDKStack extends cdk.Stack {
  constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    const persona = new Persona(this, 'example-persona-id', {
        activities: [
            Activity.runStudioAppsV2(this, 'example-id1', {}),
            Activity.manageModels(this, 'example-id2', {rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')]}),
            Activity.manageEndpoints(this, 'example-id3',{rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')]}),
            Activity.managePipelines(this, 'example-id4', {rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')]}),
            Activity.visualizeExperiments(this, 'example-id5', {})
        ],
        subnets: [ec2.Subnet.fromSubnetId('example-VPC-subnet-id')],
        securityGroups: [ec2.SecurityGroup.fromSecurityGroupId('example-VPC-security-group-id')],
        dataKeys: [kms.Key.fromKeyArn('example-KMS-key-ARN')],
        volumeKeys: [kms.Key.fromKeyArn('example-KMS-key-ARN')],
    });

    const role = persona.createRole(this, 'example-IAM-role-id', 'example-IAM-role-name');
    
    let userProfile = new CfnNUserProfile(this, 'example-Studio Classic-profile-name', { RoleName: role.RoleName, ... });  
    }
}
```

## 授予建構的許可
<a name="role-manager-cdk-ml-ops"></a>

下列程式碼會建立 ML Ops 人物角色，其中包含一組 ML 活動特定的該角色。下列程式碼會建立 ML Ops 人物角色的類別。機器學習 (ML) 活動在活動清單中定義。

定義 類別之後，您可以在 AWS CDK 堆疊中建立角色做為建構。您也可以建立筆記本執行個體。程式碼會將機器學習 (ML) 活動的許可授予 Lambda 函式的 IAM 角色。

```
export class myCDKStack extends cdk.Stack {
  constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    const persona = new Persona(this, 'example-persona-id', {
        activities: [
            Activity.runStudioAppsV2(this, 'example-id1', {}),
            Activity.manageModels(this, 'example-id2', {rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')]}),
            Activity.manageEndpoints(this, 'example-id3',{rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')]}),
            Activity.managePipelines(this, 'example-id4', {rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')]}),
            Activity.visualizeExperiments(this, 'example-id5', {})
        ],
    });

    const lambdaFn = lambda.Function.fromFunctionName('example-lambda-function-name');
    persona.grantPermissionsTo(lambdaFn);
    }
}
```

## 授予單一機器學習 (ML) 活動的許可
<a name="role-manager-cdk-single-ml-activity"></a>

下列程式碼會建立機器學習 (ML) 活動，並從活動建立角色。活動的許可僅適用於您為使用者指定的 VPC 和 KMS 組態。

```
export class myCDKStack extends cdk.Stack {
  constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    const activity = Activity.manageJobs(this, 'example-activity-id', {
        rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')],
        subnets: [ec2.Subnet.fromSubnetId('example-VPC-subnet-id')],
        securityGroups: [ec2.SecurityGroup.fromSecurityGroupId('example-VPC-security-group-id')],
        dataKeys: [kms.Key.fromKeyArn('example-KMS-key-ARN')],
        volumeKeys: [kms.Key.fromKeyArn('example-KMS-key-ARN')],
    });

    const role = activity.createRole(this, 'example-IAM-role-id', 'example-IAM-role-name');
    }
}
```

## 建立角色並為其授予單一活動的許可
<a name="role-manager-cdk-permissions"></a>

下列程式碼會為單一機器學習 (ML) 活動建立 IAM 角色。

```
export class myCDKStack extends cdk.Stack {
  constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    const activity = Activity.manageJobs(this, 'example-activity-id', {
        rolesToPass: [iam.Role.fromRoleName('example-IAM-role-name')],
    });
        

    activity.create_role(this, 'example-IAM-role-id', 'example-IAM-role-name') 
    }
}
```

# 人物角色參考
<a name="role-manager-personas"></a>

Amazon SageMaker 角色管理器為數個機器學習 (ML) 人物角色提供建議許可。這些包括常見 ML 從業人員責任的使用者執行角色，以及使用 SageMaker AI 所需的常見 AWS 服務互動的服務執行角色。

每個人物角色都有所選的機器學習 (ML) 活動形式之建議許可。如需有關預先定義機器學習 (ML) 活動及其許可的資訊，請參閱[機器學習 (ML) 活動參考](role-manager-ml-activities.md)。

## 資料科學家人物角色
<a name="role-manager-personas-data-scientist"></a>

使用此人物角色來設定許可，以在 SageMaker AI 環境中執行一般機器學習開發和實驗。此人物角色包含下列預先選取的機器學習 (ML) 活動：
+ 執行 Studio Classic 應用程式
+ 管理機器學習 (ML) 工作
+ 管理模型
+ 管理 AWS Glue 資料表
+ Canvas AI 服務
+ Canvas MLOps
+ Canvas Kendra Access
+ 使用 MLflow
+ Services AWS for MLflow 所需的存取權
+ 執行 Studio EMR Serverless 應用程式

## MLOps 人物角色
<a name="role-manager-personas-mlops"></a>

選擇此角色以設定作業活動的權限。此人物角色包含下列預先選取的機器學習 (ML) 活動：
+ 執行 Studio Classic 應用程式
+ 管理模型
+ 管理管道
+ 搜尋和視覺化實驗
+ Amazon S3 完整存取

## SageMaker AI 運算人物角色
<a name="role-manager-personas-compute"></a>

**注意**  
我們建議您先使用角色管理器建立 SageMaker AI 運算角色，以便 SageMaker AI 運算資源可執行訓練和推論等任務。使用 SageMaker AI 運算角色人物角色與角色管理器一起建立此角色。建立 SageMaker AI 運算角色後，請記下其 ARN 以備未來使用。

此人物角色包含下列預先選取的機器學習 (ML) 活動：
+ 存取必要的 AWS 服務

# 機器學習 (ML) 活動參考
<a name="role-manager-ml-activities"></a>

ML 活動是與使用 SageMaker AI 進行機器學習相關的常見 AWS 任務，需要特定的 IAM 許可。使用 Amazon SageMaker 角色管理器建立角色時，每個[人物角色](https://docs.aws.amazon.com/sagemaker/latest/dg/role-manager-personas.html)都會建議相關的機器學習 (ML) 活動。您可以選取任何其他機器學習 (ML) 活動，或取消選取任何建議的 ML 活動，以建立符合您獨特商業需求的角色。

Amazon SageMaker 角色管理器為下列機器學習活動提供預先定義的許可：


****  

| **機器學習 (ML) 活動** | **Description** | 
| --- | --- | 
| 存取必要的 AWS 服務 | 存取 Amazon S3、Amazon ECR、Amazon CloudWatch 和 Amazon EC2 的許可。工作和端點的執行角色是必須的。 | 
| 執行 Studio Classic 應用程式 | 在 Studio Classic 環境內操作的許可。網域和使用者設定檔執行角色是必須的。 | 
| 管理機器學習 (ML) 工作 | 稽核、查詢歷程和視覺化實驗的許可。 | 
| 管理模型 | 在整個生命週期中管理 SageMaker AI 任務的許可。 | 
| 管理管道 | 管理 SageMaker 管道和管道執行的許可。 | 
| 搜尋和視覺化實驗 | 稽核、查詢歷程和視覺化 SageMaker AI 實驗的許可。 | 
| 管理模型監控 | 管理 SageMaker AI Model Monitor 監控排程的許可。 | 
| Amazon S3 完整存取 | 許可以執行所有 Amazon S3 操作。 | 
| Amazon S3 儲存貯體存取 | 在指定的 S3 儲存貯體上執行操作的許可。 | 
| 查詢 Athena 工作群組 | 執行和管理 Amazon Athena 查詢的許可。 | 
| 管理 AWS Glue 資料表 | 建立和管理 SageMaker AI Feature Store 和 Data Wrangler AWS Glue 資料表的許可。 | 
| SageMaker Canvas 核心存取 | 在 SageMaker Canvas 中執行實驗的許可 (即基本資料準備、模型建置、驗證)。 | 
| SageMaker Canvas 資料準備 (由 Data Wrangler 提供支援) | 在 SageMaker Canvas 中執行端對端資料準備的許可 (即彙總、轉換和分析資料、在大型資料集上建立和排程資料準備任務）。 | 
| SageMaker Canvas AI 服務 | 從 Amazon Bedrock、Amazon Textract、Amazon Rekognition 和 Amazon Comprehend 存取立即可用模型的許可。此外，使用者可以從 Amazon Bedrock 和 Amazon SageMaker JumpStart 微調基礎模型。 | 
| SageMaker Canvas MLOps | SageMaker Canvas 使用者將模型直接部署到端點的許可。 | 
| SageMaker Canvas Kendra Access | SageMaker Canvas 存取 Amazon Kendra 進行企業文件搜尋的許可。許可僅授予您在 Amazon Kendra 中選取的索引名稱。 | 
| 使用 MLflow | 在 MLflow 中管理實驗、執行和模型的許可。 | 
| 管理 MLflow 追蹤伺服器 | 管理、啟動和停止 MLflow 追蹤伺服器的許可。 | 
| Services AWS for MLflow 所需的存取權 | MLflow 追蹤伺服器存取 S3、Secrets Manager 和模型註冊庫的許可。 | 
| 執行 Studio EMR Serverless 應用程式 | 在 Amazon SageMaker Studio 上建立和管理 EMR Serverless 應用程式的許可。 | 

# 啟動 Studio Classic
<a name="role-manager-launch-notebook"></a>

使用以人物角色為中心的角色來啟動 Studio Classic。如果您是管理員，您可以授予使用者對 Studio Classic 的存取權，並讓他們直接透過 AWS 管理主控台 或透過 擔任其角色 AWS IAM Identity Center。

## 使用 啟動 Studio Classic AWS 管理主控台
<a name="role-manager-launch-notebook-console"></a>

若要讓資料科學家或其他使用者透過 AWS 管理主控台擔任他們指定的人物角色，他們需要主控台角色才能進入 Studio Classic 環境。

您無法使用 Amazon SageMaker 角色管理器建立角色授予 AWS 管理主控台許可。不過，在角色管理器中建立服務角色之後，您可以移至 IAM 主控台編輯角色並新增使用者存取角色。以下是提供使用者存取 AWS 管理主控台的角色範例：

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DescribeCurrentDomain",
            "Effect": "Allow",
            "Action": "sagemaker:DescribeDomain",
            "Resource": "arn:aws:sagemaker:us-east-1:111122223333:domain/<STUDIO-DOMAIN-ID>"
        },
        {
            "Sid": "RemoveErrorMessagesFromConsole",
            "Effect": "Allow",
            "Action": [
                "servicecatalog:ListAcceptedPortfolioShares",
                "sagemaker:GetSagemakerServicecatalogPortfolioStatus",
                "sagemaker:ListModels",
                "sagemaker:ListTrainingJobs",
                "servicecatalog:ListPrincipalsForPortfolio",
                "sagemaker:ListNotebookInstances",
                "sagemaker:ListEndpoints"
            ],
            "Resource": "*"
        },
        {
            "Sid": "RequiredForAccess",
            "Effect": "Allow",
            "Action": [
                "sagemaker:ListDomains",
                "sagemaker:ListUserProfiles"
            ],
            "Resource": "*"
        },
        {
            "Sid": "CreatePresignedURLForAccessToDomain",
            "Effect": "Allow",
            "Action": "sagemaker:CreatePresignedDomainUrl",
            "Resource": "arn:aws:sagemaker:us-east-1:111122223333:user-profile/<STUDIO-DOMAIN-ID>/<PERSONA_NAME>"
        }
    ]
}
```

------

在 Studio Classic 控制面板中，選擇**新增使用者**以建立新使用者。在**一般設定**區段中，提供您的使用者一個名稱，並將使用者的**預設執行角色**設定為您使用 Amazon SageMaker 角色管理器建立的角色。

在下一個畫面中，選擇適當的 Jupyter Lab 版本，以及是否開啟 SageMaker JumpStart 和 SageMaker AI 專案範本。然後選擇**下一步**。在 SageMaker Canvas 設定頁面上，選擇是否開啟 SageMaker Canvas 支援，以及是否允許在 SageMaker Canvas 中進行時間序列預測。然後選擇**提交**。

您的新使用者現在應該在 Studio Classic 控制面板中可見。若要測試此使用者，請從與使用者名稱相同列的**啟動應用程式**下拉式清單中選擇 **Studio**。

## 使用 IAM Identity Center 來啟動 Studio Classic
<a name="role-manager-launch-notebook-iam-identity-center"></a>

若要將 IAM Identity Center 使用者指派給執行角色，使用者必須先存在於 IAM Identity Center 目錄中。如需更多資訊，請參閱 *AWS IAM Identity Center* 中的[在 IAM Identity Center 中管理身分](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-sso.html)。

**注意**  
您的 IAM Identity Center 驗證目錄和 Studio Classic 網域必須位於相同的 AWS 區域中。

1. 若要將 IAM Identity Center 使用者指派給您的 Studio Classic 網域，請在 Studio Classic 控制面板中選擇**指派使用者和群組**。在**指派使用者和群組**畫面上，選取您的資料科學家使用者，然後選擇**指派使用者和群組**。

1. 將使用者新增到 Studio Classic 控制面板後，選擇使用者以打開使用者詳細資訊畫面。

1. 在**使用者詳細資訊**畫面中，選擇**編輯**。

1. 在**編輯使用者設定檔**畫面的**一般設定**下，修改**預設執行角色**，以符合您為資料科學家建立的使用者執行角色。

1. 在其餘設定頁面中選擇**下一步**，然後選擇**提交**以儲存變更。

當您的資料科學家或其他使用者登入 IAM Identity Center 入口網站時，他們會看到此 Studio Classic 網域的圖磚。選擇該圖磚，使用他們獲指派的使用者執行角色將他們登入 Studio Classic。

# 角色管理器常見問題
<a name="role-manager-faqs"></a>

如需有關 Amazon SageMaker 角色管理器的常見問題解答，請參閱下列常見問題集專案。

## 問題：如何存取 Amazon SageMaker 角色管理器？
<a name="role-manager-faqs-access"></a>

答：您可以透過 Amazon SageMaker AI 主控台中的多個位置存取 Amazon SageMaker 角色管理器。如需有關存取角色管理器及使用它來建立角色的資訊，請參閱[使用角色管理器 (主控台)](role-manager-tutorial.md)。

## 問題：什麼是人物角色？
<a name="role-manager-faqs-personas"></a>

答案：人物角色是基於一般機器學習 (ML) 責任的預先設定許可群組。例如，資料科學人物角色會建議在 SageMaker AI 環境中進行一般機器學習開發和實驗的許可，而 MLOps 人物角色則會建議進行與操作相關的 ML 活動的許可。

## 問題：什麼是機器學習 (ML) 活動？
<a name="role-manager-faqs-ml-activities"></a>

答：ML 活動是與使用 SageMaker AI 進行機器學習相關的常見 AWS 任務，需要特定的 IAM 許可。使用 Amazon SageMaker 角色管理器建立角色時，每個人物角色都會建議相關的機器學習 (ML) 活動。機器學習 (ML) 活動包括 Amazon S3 完整存取權或搜尋和視覺化實驗等任務。如需詳細資訊，請參閱[機器學習 (ML) 活動參考](role-manager-ml-activities.md)。

## 問：我使用角色管理員 AWS Identity and Access Management (IAM) 角色建立的角色是？
<a name="role-manager-faqs-iam"></a>

答案：是。使用 Amazon SageMaker 角色管理器建立的角色具有自訂存取政策的 IAM 角色。您可以在 [IAM 主控台](https://console.aws.amazon.com/iamv2/)的**角色**區段中檢視建立的角色。

## 問題：如何檢視我使用 Amazon SageMaker 角色管理器建立的角色？
<a name="role-manager-faqs-view-roles"></a>

答案：您可以在 [IAM 主控台](https://console.aws.amazon.com/iamv2/)的**角色**區段中檢視建立的角色。預設情況下，首碼 `"sagemaker-"` 會新增至每個角色名稱，以便可以在 IAM 主控台中輕鬆搜尋。例如，如果您在建立角色期間命名角色為 `test-123`，您的角色會作為 `sagemaker-test-123` 顯示在 IAM 主控台中。

## 問題：是否可以對使用 Amazon SageMaker 角色管理器建立的角色進行修改？
<a name="role-manager-faqs-modify-roles"></a>

答案：是。您可以透過 [IAM 主控台](https://console.aws.amazon.com/iamv2/)修改 Amazon SageMaker 角色管理器建立的角色和政策。如需更多資訊，請參閱 *AWS Identity and Access Management IAM 使用者指南*中的[修改角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html)。

## 問題：是否可以將自己的政策附加到使用 Amazon SageMaker 角色管理器建立的角色？
<a name="role-manager-faqs-attach-policies"></a>

答案：是。您可以將任何 AWS 或客戶管理的 IAM 政策從您的帳戶連接到您使用 Amazon SageMaker Role Manager 建立的角色。

## 問題：我可以在使用 Amazon SageMaker 角色管理器建立的角色中新增多少個政策？
<a name="role-manager-faqs-policy-limit"></a>

答案：將受管政策附加到 IAM 角色或使用者的上限為 20。受管政策的最大字元大小限制為 6,144。如需更多資訊，請參閱 [IAM 物件配額](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entities)和 [IAM 和 AWS Security Token Service 配額名稱要求以及字元限制](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html)。

## 問題：是否可將條件新增至機器學習 (ML) 活動？
<a name="role-manager-faqs-conditions"></a>

答案：您在 Amazon SageMaker 角色管理器的[步驟 1. 輸入角色資訊](role-manager-tutorial.md#role-manager-tutorial-enter-role-information)中提供的任何條件 (例如子網路、安全群組或 KMS 金鑰) 都會自動傳遞至[步驟 2. 設定機器學習 (ML) 活動](role-manager-tutorial.md#role-manager-tutorial-configure-ml-activities)中選取的任何機器學習 (ML) 活動。如有必要，您也可以將其他條件新增至機器學習 (ML) 活動。例如，您也可以在管理訓練工作活動中新增 `InstanceTypes` 或 `IntercontainerTrafficEncryption` 條件。

## 問：我可以使用標記來管理對任何 AWS 資源的存取嗎？
<a name="role-manager-faqs-tagging"></a>

答案：****您可以將標籤新增至您在 Amazon SageMaker 角色管理器之 [步驟 3：新增其他政策和標籤](role-manager-tutorial.md#role-manager-tutorial-add-policies-and-tags) 中的角色。若要使用標籤成功管理 AWS 資源，您必須將相同的標籤新增至角色和任何相關聯的政策。例如，您可以將標籤新增至角色和 Amazon S3 儲存貯體。然後，由於角色將標籤傳遞至 SageMaker AI 工作階段，因此只有具有該角色的使用者才能存取該 S3 儲存貯體。您可以透過 [IAM 主控台](https://console.aws.amazon.com/iamv2/)將標籤新增至政策。如需更多資訊，請參閱 IAM 使用者指南*AWS Identity and Access Management *中的[標記 IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags_roles.html)。

## 問題：是否可以使用 Amazon SageMaker 角色管理器建立角色存取 AWS 管理主控台？
<a name="role-manager-faqs-console-access"></a>

答案：不可以。不過，在角色管理器中建立服務角色之後，您可以移至 IAM 主控台編輯角色，並在 IAM 主控台中新增人類存取角色。

## 問：使用者聯合角色與 SageMaker AI 執行角色之間有何差異？
<a name="role-manager-faqs-role-types"></a>

答案：使用者直接扮演使用者聯合角色來存取 AWS 資源，例如存取 AWS 管理主控台。SageMaker AI 執行角色是由 SageMaker AI 服務擔任，以代表使用者或自動化工具執行功能。例如，當使用者開啟 Studio Classic 執行個體時，Studio Classic 會擔任與使用者設定檔相關的執行角色，以代表使用者存取 AWS 資源。如果使用者設定檔未指定執行角色，則會在 Amazon SageMaker AI 網域層級指定執行角色。

## 問：如果我使用透過預先簽署的 URL 存取 Studio Classic 的自訂 Web 應用程式，會使用什麼角色？
<a name="role-manager-faqs-studio-presigned-url"></a>

答：如果您使用自訂 Web 應用程式來存取 Studio Classic，則您具有混合使用者聯合角色和 SageMaker AI 執行角色。確保此角色對於使用者可以執行的操作以及 Studio Classic 可以代表關聯使用者執行的操作都具有最低權限。

## 問：是否可以將 Amazon SageMaker Role Manager 與 Studio Classic 網域的 AWS IAM Identity Center 身分驗證搭配使用？
<a name="role-manager-faqs-iam-identity-center"></a>

答： AWS IAM Identity Center Studio Classic Cloud 應用程式使用 Studio Classic 執行角色將許可授予聯合身分使用者。您可以在 Studio Classic IAM Identity Center 使用者設定檔層級或預設網域層級指定此執行角色。使用者身分識別和群組必須同步至 IAM Identity Center，而且您必須使用 [CreateUserProfile](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateUserProfile.html) 搭配 IAM Identity Center 使用者指派，來建立 Studio Classic 使用者設定檔。如需詳細資訊，請參閱[使用 IAM Identity Center 來啟動 Studio Classic](role-manager-launch-notebook.md#role-manager-launch-notebook-iam-identity-center)。