

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon SageMaker AI と IAM の連携の仕組み
<a name="security_iam_service-with-iam"></a>

**重要**  
Amazon SageMaker Studio または Amazon SageMaker Studio Classic に Amazon SageMaker リソースの作成を許可するカスタム IAM ポリシーでは、これらのリソースにタグを追加するアクセス許可も付与する必要があります。Studio と Studio Classic は、作成したリソースに自動的にタグ付けするため、リソースにタグを追加するアクセス許可が必要になります。IAM ポリシーで Studio と Studio Classic によるリソースの作成が許可されていても、タグ付けが許可されていない場合は、リソースを作成しようとしたときに「AccessDenied」エラーが発生する可能性があります。詳細については、「[SageMaker AI リソースにタグ付けのアクセス許可を付与する](security_iam_id-based-policy-examples.md#grant-tagging-permissions)」を参照してください。  
SageMaker リソースを作成するためのアクセス許可を付与する [AWS Amazon SageMaker AI の マネージドポリシー](security-iam-awsmanpol.md) には、それらのリソースの作成中にタグを追加するためのアクセス許可もあらかじめ含まれています。

SageMaker AI へのアクセスを管理するために IAM を使う前に、SageMaker AI で使用できる IAM 機能を理解しておく必要があります。SageMaker AI およびその他の AWS のサービスが IAM と連携する方法の概要については、「サービス認可リファレンス」の[AWS 「IAM と連携する](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_aws-services-that-work-with-iam.html) のサービス」を参照してください。 **

**Topics**
+ [Amazon SageMaker AI 向けのアイデンティティベースのポリシー](#security_iam_service-with-iam-id-based-policies)
+ [Amazon SageMaker AI 内のリソースベースのポリシー](#security_iam_service-with-iam-resource-based-policies)
+ [Amazon SageMaker AI 向けのポリシーアクション](#security_iam_service-with-iam-id-based-policies-actions)
+ [Amazon SageMaker AI 向けのポリシーリソース](#security_iam_service-with-iam-id-based-policies-resources)
+ [Amazon SageMaker AI 向けのポリシー条件キー](#security_iam_service-with-iam-id-based-policies-conditionkeys)
+ [SageMaker AI タグに基づく認証](#security_iam_service-with-iam-tags)
+ [SageMaker AI の IAM ロール](#security_iam_service-with-iam-roles)

## Amazon SageMaker AI 向けのアイデンティティベースのポリシー
<a name="security_iam_service-with-iam-id-based-policies"></a>

IAM アイデンティティベースのポリシーでは許可または拒否するアクションとリソース、またアクションを許可または拒否する条件を指定できます。SageMaker AI は、特定のアクション、リソース、条件キーをサポートしています。JSON ポリシーで使用するすべての要素については、「*Service Authorization Reference*」の「[IAM JSON Policy Elements Reference](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements.html)」を参照してください。

## Amazon SageMaker AI 内のリソースベースのポリシー
<a name="security_iam_service-with-iam-resource-based-policies"></a>

**リソースベースのポリシーのサポート:** なし 

リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。リソースベースのポリシーには例として、IAM *ロールの信頼ポリシー* や Amazon S3 *バケットポリシー* があげられます。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスをコントロールできます。ポリシーがアタッチされているリソースの場合、指定されたプリンシパルがそのリソースに対して実行できるアクションと条件は、ポリシーによって定義されます。リソースベースのポリシーで、[プリンシパルを指定する](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html)必要があります。プリンシパルには、アカウント、ユーザー、ロール、フェデレーティッドユーザー、または AWS サービスを含めることができます。

クロスアカウントアクセスを有効にするには、アカウント全体、または別のアカウントの IAM エンティティをリソースベースのポリシーのプリンシパルとして指定します。リソースベースのポリシーにクロスアカウントのプリンシパルを追加しても、信頼関係は半分しか確立されない点に注意してください。プリンシパルとリソースが異なる AWS アカウントにある場合、信頼されたアカウントの IAM 管理者は、リソースにアクセスするための許可をプリンシパルエンティティ (ユーザーまたはロール) に付与する必要もあります。IAM 管理者は、ID ベースのポリシーをエンティティにアタッチすることで許可を付与します。ただし、リソースベースのポリシーで、同じアカウントのプリンシパルへのアクセス権が付与されている場合は、アイデンティティベースのポリシーをさらに付与する必要はありません。詳細については、「*IAM ユーザーガイド*」の「[IAM でのクロスアカウントリソースアクセス](https://docs.aws.amazon.com//IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)」を参照してください。

**注記**  
サポートされている SageMaker AI リソースを安全に共有するには、[AWS Resource Access Manager](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) を使用します。共有可能なリソースのリストについては、「[共有可能な Amazon SageMaker AI のリソース](https://docs.aws.amazon.com/ram/latest/userguide/shareable.html#shareable-sagemaker)」を参照してください。

## Amazon SageMaker AI 向けのポリシーアクション
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

管理者は JSON AWS ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件下で****アクション**を実行できるかということです。

JSON ポリシーの `Action` 要素にはポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。このアクションは関連付けられたオペレーションを実行するためのアクセス許可を付与するポリシーで使用されます。

SageMaker AI のポリシーアクションは、アクション前にプレフィックス `sagemaker:` を使用します。例えば、SageMaker AI `CreateTrainingJob` API オペレーションで SageMaker AI トレーニングジョブを実行するための許可を付与するには、ポリシーに `sagemaker:CreateTrainingJob` アクションを含めます。ポリシーステートメントには`Action` または `NotAction` 要素を含める必要があります。SageMaker AI は、このサービスで実行できるタスクを記述する独自のアクションのセットを定義します。

単一のステートメントに複数のアクションを指定するには次のようにコンマで区切ります。

```
"Action": [
      "sagemaker:action1",
      "sagemaker:action2"
]
```

ワイルドカード (\*) を使用して複数アクションを指定できます。例えば、`Describe` という単語で始まるすべてのアクションを指定するには次のアクションを含めます。

```
"Action": "sagemaker:Describe*"
```



SageMaker AI アクションのリストを表示するには、「*サービス認可リファレンス*」の「[Amazon SageMaker AI のアクション、リソース、条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html)」を参照してください。

## Amazon SageMaker AI 向けのポリシーリソース
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>



**ポリシーリソースのサポート:** あり

管理者は JSON AWS ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件**下で**アクション**を実行できるかということです。

`Resource` JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ステートメントには`Resource` または `NotResource` 要素を含める必要があります。ベストプラクティスとして、[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) を使用してリソースを指定します。これは、*リソースレベルの許可* と呼ばれる特定のリソースタイプをサポートするアクションに対して実行できます。

オペレーションのリスト化など、リソースレベルの権限をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (\*) を使用します。

```
"Resource":  "*"
```

Amazon SageMaker AI リソースタイプとその ARN のリストをについては、「*サービス認可リファレンス*」の Amazon SageMaker AI によって定義されたアクション、リソースタイプ、条件キーに関する次のリファレンスを参照してください。
+ [Amazon SageMaker AI](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html)
+ [Amazon SageMaker 地理空間機能](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemakergeospatialcapabilities.html)
+ [Amazon SageMaker Ground Truth Synthetic](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemakergroundtruthsynthetic.html)
+ [Amazon SageMaker AI と MLflow](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemakerwithmlflow.html)

各リソースの ARN を指定できるアクションについては、「[ Amazon SageMaker AI で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html#amazonsagemaker-actions-as-permissions)」を参照してください。

## Amazon SageMaker AI 向けのポリシー条件キー
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

管理者は JSON AWS ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どの**プリンシパル**がどの**リソース**に対してどのような**条件下で****アクション**を実行できるかということです。

`Condition` 要素は、定義された基準に基づいてステートメントが実行される時期を指定します。イコールや未満などの[条件演算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)を使用して条件式を作成して、ポリシーの条件とリクエスト内の値を一致させることができます。すべての AWS グローバル条件キーを確認するには、*「IAM ユーザーガイド*」の[AWS 「グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)」を参照してください。

SageMaker AI は独自の条件キーを定義し、一部のグローバル条件キーの使用もサポートしています。すべての AWS グローバル条件キーを確認するには、*「サービス認可リファレンス*」の[AWS 「グローバル条件コンテキストキー](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_condition-keys.html)」を参照してください。



SageMaker AI では、次のオペレーションのきめ細かいアクセスコントロールに使用できるサービス固有の条件キーがいくつかサポートされています。
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProcessingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProcessingJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHyperParameterTuningJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHyperParameterTuningJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateNotebookInstance.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateNotebookInstance.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateNotebookInstance.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateNotebookInstance.html)

SageMaker AI 条件キーのリストを確認するには、「*サービス認可リファレンス*」の「[Amazon SageMaker AI の条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html#amazonsagemaker-policy-keys)」を参照してください。条件キーを使用できるアクションとリソースについては、「[ Amazon SageMaker AI で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html#amazonsagemaker-actions-as-permissions)」を参照してください。

SageMaker AI 条件キーの使用例については、「[条件キーを使用して SageMaker AI リソースの作成を制御する](security_iam_id-based-policy-examples.md#sagemaker-condition-examples)」を参照してください。

### 例
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



SageMaker AIのアイデンティティベースポリシーの例を確認するには、「[Amazon SageMaker AI のアイデンティティベースポリシーの例](security_iam_id-based-policy-examples.md)」を参照してください。

## SageMaker AI タグに基づく認証
<a name="security_iam_service-with-iam-tags"></a>

タグは、SageMaker AI リソースにアタッチしたり、タグをリクエストで SageMaker AI に渡したりできます。タグに基づいてアクセスを管理するには、`sagemaker:ResourceTag/{{key-name}}`、`aws:RequestTag/{{key-name}}`、または `aws:TagKeys` の条件キーを使用して、ポリシーの[条件要素](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements_condition.html)でタグ情報を提供します。SageMaker AI リソースへのタグ付けの詳細については、「[タグを使用して SageMaker AI リソースへのアクセスを制御する](security_iam_id-based-policy-examples.md#access-tag-policy)」を参照してください。

リソースのタグに基づいてリソースへのアクセスを制限するためのアイデンティティベースポリシーの例を表示するには、「[タグを使用して SageMaker AI リソースへのアクセスを制御する](security_iam_id-based-policy-examples.md#access-tag-policy)」を参照してください。

## SageMaker AI の IAM ロール
<a name="security_iam_service-with-iam-roles"></a>

[IAM ロール](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles.html)は、特定のアクセス許可を持つ AWS アカウント内のエンティティです。

### SageMaker AI での一時的な認証情報の使用
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

一時的な認証情報を使用して、フェデレーションでサインインする、IAM 役割を引き受ける、またはクロスアカウント役割を引き受けることができます。一時的なセキュリティ認証情報を取得するには、[AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) や [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html) などの AWS STS API オペレーションを呼び出します。

SageMaker AI では、一時的な認証情報の使用がサポートされています。

### サービスリンクロール
<a name="security_iam_service-with-iam-roles-service-linked"></a>

SageMaker AI は[サービスにリンクされたロール](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を部分的にサポートしています。サービスにリンクされたロールは、現在 SageMaker Studio Classic で使用できます。

### サービス役割
<a name="security_iam_service-with-iam-roles-service"></a>

この機能により、ユーザーに代わってサービスが[サービスロール](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles_terms-and-concepts.html#iam-term-service-role)を引き受けることが許可されます。この役割により、サービスがお客様に代わって他のサービスのリソースにアクセスし、アクションを完了することが許可されます。サービスロールはIAM アカウントに表示され、アカウントによって所有されます。つまり、IAM 管理者はこの役割の権限を変更できます。ただし、それにより、サービスの機能が損なわれる場合があります。

SageMaker AI はサービスロールをサポートしています。

### SageMaker AI での IAM ロールの選択
<a name="security_iam_service-with-iam-roles-choose"></a>

SageMaker AI でノートブックインスタンス、処理ジョブ、トレーニングジョブ、ホスト型エンドポイント、またはバッチ変換ジョブリソースを作成する場合、ユーザーの代理での SageMaker AI へのアクセスを SageMaker AI に許可するロールを選択する必要があります。サービスロールあるいはサービスにリンクされたロールを以前に作成している場合、SageMaker AI は選択できるロールのリストを示します。必要な AWS オペレーションとリソースへのアクセスを許可するロールを選択することが重要です。詳細については、「[SageMaker AI 実行ロールの使用方法](sagemaker-roles.md)」を参照してください。