

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

# Ground Truth を使用するための IAM アクセス権限を割り当てる
<a name="sms-security-permission"></a>

このセクションのトピックを使用して、 AWS Identity and Access Management (IAM) マネージドポリシーとカスタムポリシーを使用して Ground Truth および関連リソースへのアクセスを管理する方法について説明します。

このページのセクションを使用して、次のことを学習できます。
+ ラベル付けジョブを作成するためのアクセス許可をユーザーまたはロールに付与する IAM ポリシーを作成する方法。管理者は IAM ポリシーを使用して、Amazon SageMaker AI および Ground Truth に固有のその他の AWS サービスへのアクセスを制限できます。
+ SageMaker AI の*実行ロール*を作成する方法。実行ロールは、ラベル付けジョブの作成時に指定するロールです。ロールは、ラベル付けジョブを開始および管理する際に使用されます。

このページにあるトピックの概要を以下に示します。
+ Ground Truth の使用を開始する場合、またはユースケースに詳細なアクセス許可を必要としない場合は、「[Ground Truth で IAM 管理ポリシーを使用する](sms-security-permissions-get-started.md)」で説明されている IAM 管理ポリシーを使用することをお勧めします。
+ Ground Truth コンソールの使用に必要なアクセス許可の詳細については、「[Amazon SageMaker Ground Truth コンソールを使用するための IAM アクセス許可を付与する](sms-security-permission-console-access.md)」を参照してください。このセクションでは、プライベートワークチームの作成と変更、ベンダーワークチームのサブスクリプション、カスタムラベル付けワークフローの作成を行うアクセス許可を IAM エンティティに付与するポリシーの例を示します。
+ ラベル付けジョブを作成する際、実行ロールを指定する必要があります。「[Ground Truth ラベル付けジョブの SageMaker AI 実行ロールを作成する](sms-security-permission-execution-role.md)」を使用して、このロールに必要なアクセス許可について確認します。

# Ground Truth で IAM 管理ポリシーを使用する
<a name="sms-security-permissions-get-started"></a>

SageMaker AI と Ground Truth には、ラベル付けジョブの作成に使用できる AWS 管理ポリシーが用意されています。Ground Truth の使用を開始する場合、またはユースケースに詳細なアクセス許可を必要としない場合は、次のポリシーを使用することをお勧めします。
+ `[AmazonSageMakerFullAccess](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerFullAccess)` - このポリシーを使用して、ラベル付けジョブを作成するアクセス許可をユーザーまたはロールに付与します。これは、SageMaker AI 機能、および コンソールと API を通じて必要な AWS サービスの機能を使用するアクセス許可をエンティティに付与する広範なポリシーです。このポリシーは、Amazon Cognito を使用してラベル付けジョブを作成し、ワークフォースを作成および管理するアクセス許可をエンティティに付与します。詳細については、「[AmazonSageMakerFullAccess ポリシー](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonSageMakerFullAccess)」を参照してください。
+ `[AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)` - 実行ロールを作成するには、ポリシー `[AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)` をロールにアタッチします。実行ロールは、ラベル付けジョブの作成時に指定するロールで、ラベル付けジョブの開始に使用されます。このポリシーでは、ストリーミングラベル付けジョブと非ストリーミングラベル付けジョブの両方を作成し、任意のタスクタイプを使用してラベル付けジョブを作成できます。この管理ポリシーには以下の制限があります。
  + **Amazon S3 のアクセス許可**: このポリシーは、名前に次の文字列を含む Amazon S3 バケットにアクセスするためのアクセス許可を実行ロールに付与します。`GroundTruth`、`Groundtruth`、`groundtruth`、`SageMaker`、`Sagemaker`、`sagemaker` または、名前に `SageMaker` を含む (大文字と小文字は区別されません) [オブジェクトタグ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html)があるバケット。入出力バケット名にこれらの文字列が含まれていることを確認し、含まれていない場合は実行ロールに追加のアクセス許可を追加して [Amazon S3 バケットへのアクセス許可を付与](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_examples_s3_rw-bucket.html)します。Amazon S3 バケットで次のアクションを実行するには、このロールにアクセス許可を与える必要があります。`AbortMultipartUpload`、`GetObject`、`PutObject`。
  + **カスタムワークフロー**: [カスタムラベル付けワークフロー](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html)を作成する場合、この実行ロールは AWS Lambda 、関数名の一部として、、`GtRecipe`、`SageMaker``Sagemaker`、`sagemaker`または のいずれかの文字列を持つ関数の呼び出しに制限されます`LabelingFunction`。これは、前注釈と後注釈の Lambda 関数のいずれにも適用されます。これらの文字列を含まない名前を使用するように選択した場合は、ラベル付けジョブの作成に使用された実行ロールに `lambda:InvokeFunction` アクセス権限を明示的に指定する必要があります。

 AWS 管理ポリシーをユーザーまたはロールにアタッチする方法については、IAM ユーザーガイドの[「IAM ID アクセス許可の追加と削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html#add-policies-console)」を参照してください。

# Amazon SageMaker Ground Truth コンソールを使用するための IAM アクセス許可を付与する
<a name="sms-security-permission-console-access"></a>

SageMaker AI コンソールの Ground Truth エリアを使用するには、Ground Truth がやり取りする SageMaker AI やその他の AWS サービスにアクセスするためのアクセス許可をエンティティに付与する必要があります。他の AWS サービスにアクセスするために必要なアクセス許可は、ユースケースによって異なります。
+ Amazon S3 のアクセス許可は、すべてのユースケースで必要です。これらのアクセス許可は、入出力データを含む Amazon S3 バケットへのアクセス権を付与する必要があります。
+ AWS Marketplace ベンダーワークフォースを使用するには、 アクセス許可が必要です。
+ プライベートワークチームの設定には、Amazon Cognito アクセス許可が必要です。
+ AWS KMS 出力データの暗号化に使用できる AWS KMS キーを表示するには、 アクセス許可が必要です。
+ IAM アクセス許可は、既存の実行ロールを一覧表示するか、新しい実行ロールを作成するために必要です。さらに、`PassRole` アクセス許可を追加して、ラベル付けジョブを開始するために選択した実行ロールを SageMaker AI が使用できるようにする必要があります。

次のセクションでは、Ground Truth の 1 つ以上の機能を使用するためにロールに付与する可能性があるポリシーの一覧を示します。

**Topics**
+ [

## Ground Truth コンソールのアクセス許可
](#sms-security-permissions-console-all)
+ [

## カスタムラベル付けワークフローのアクセス許可
](#sms-security-permissions-custom-workflow)
+ [

## プライベートワークフォースのアクセス許可
](#sms-security-permission-workforce-creation)
+ [

## ベンダーワークフォースのアクセス許可
](#sms-security-permissions-workforce-creation-vendor)

## Ground Truth コンソールのアクセス許可
<a name="sms-security-permissions-console-all"></a>

SageMaker AI コンソール の Ground Truth 領域を使用してラベル付けジョブを作成するアクセス許可をユーザーまたはロールに付与するには、ユーザーまたはロールに次のポリシーをアタッチします。次のポリシーは、[組み込みタスクタイプ](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html)を使用してラベル付けジョブを作成するための IAM ロールクセス許可を付与します。カスタムラベル付けワークフローを作成する場合は、[カスタムラベル付けワークフローのアクセス許可](#sms-security-permissions-custom-workflow) のポリシーを以下のポリシーに追加します。次のポリシーに含まれる各 `Statement` の説明は、このコードブロックの下にあります。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "SageMakerApis",
            "Effect": "Allow",
            "Action": [
                "sagemaker:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "KmsKeysForCreateForms",
            "Effect": "Allow",
            "Action": [
                "kms:DescribeKey",
                "kms:ListAliases"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AccessAwsMarketplaceSubscriptions",
            "Effect": "Allow",
            "Action": [
                "aws-marketplace:ViewSubscriptions"
            ],
            "Resource": "*"
        },
        {
            "Sid": "SecretsManager",
            "Effect": "Allow",
            "Action": [
                "secretsmanager:CreateSecret",
                "secretsmanager:DescribeSecret",
                "secretsmanager:ListSecrets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ListAndCreateExecutionRoles",
            "Effect": "Allow",
            "Action": [
                "iam:ListRoles",
                "iam:CreateRole",
                "iam:CreatePolicy",
                "iam:AttachRolePolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "PassRoleForExecutionRoles",
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "sagemaker.amazonaws.com"
                }
            }
        },
        {
            "Sid": "GroundTruthConsole",
            "Effect": "Allow",
            "Action": [
                "groundtruthlabeling:*",
                "lambda:InvokeFunction",
                "lambda:ListFunctions",
                "s3:GetObject",
                "s3:PutObject",
                "s3:ListBucket",
                "s3:GetBucketCors",
                "s3:PutBucketCors",
                "s3:ListAllMyBuckets",
                "cognito-idp:AdminAddUserToGroup",
                "cognito-idp:AdminCreateUser",
                "cognito-idp:AdminDeleteUser",
                "cognito-idp:AdminDisableUser",
                "cognito-idp:AdminEnableUser",
                "cognito-idp:AdminRemoveUserFromGroup",
                "cognito-idp:CreateGroup",
                "cognito-idp:CreateUserPool",
                "cognito-idp:CreateUserPoolClient",
                "cognito-idp:CreateUserPoolDomain",
                "cognito-idp:DescribeUserPool",
                "cognito-idp:DescribeUserPoolClient",
                "cognito-idp:ListGroups",
                "cognito-idp:ListIdentityProviders",
                "cognito-idp:ListUsers",
                "cognito-idp:ListUsersInGroup",
                "cognito-idp:ListUserPoolClients",
                "cognito-idp:ListUserPools",
                "cognito-idp:UpdateUserPool",
                "cognito-idp:UpdateUserPoolClient"
            ],
            "Resource": "*"
        }
    ]
}
```

------

このポリシーには、次のステートメントが含まれます。そのステートメントの `Resource` リストに特定のリソースを追加することにより、これらのステートメントのスコープを絞り込むことができます。

`SageMakerApis`

このステートメントには、ユーザーがすべての [SageMaker AI API アクション](sagemaker/latest/APIReference/API_Operations.html)を実行できるようにする `sagemaker:*` が含まれています。ユーザーに対し、ラベル付けジョブの作成と監視に使用されないアクションの実行を制限することで、このポリシーの範囲を縮小できます。

**`KmsKeysForCreateForms`**

このステートメントを含める必要があるのは、出力データの暗号化に使用する Ground Truth コンソールで AWS KMS キーを一覧表示および選択するアクセス許可をユーザーに付与する場合のみです。上記のポリシーは、 AWS KMSのアカウント内の任意のキーを一覧表示および選択する許可をユーザーに付与します。ユーザーがリストして選択できるキーを制限するには、`Resource` でそれらのキー ARN を指定します。

**`SecretsManager`**

このステートメントは、ラベル付けジョブの作成 AWS Secrets Manager に必要な のリソースを記述、一覧表示、作成するアクセス許可をユーザーに付与します。

`ListAndCreateExecutionRoles`

このステートメントは、アカウントに IAM ロールを一覧表示 (`ListRoles`)および作成 (`CreateRole`) する許可をユーザーに付与します。また、エンティティにポリシーを作成 (`CreatePolicy`) およびアタッチ (`AttachRolePolicy`) する許可をユーザーに付与します。これらは、コンソールで実行ロールを一覧表示、選択、必要に応じて作成する際に必要です。

実行ロールを既に作成していて、ユーザーがコンソールでそのロールのみを選択できるようにこのステートメントの範囲を絞り込む場合は、ユーザーに `Resource` での表示と、アクション `CreateRole`、`CreatePolicy`、`AttachRolePolicy` の削除の許可を持たせるロールの ARN を指定します。

`AccessAwsMarketplaceSubscriptions`

これらの権限は、ラベル付けジョブの作成時に既にサブスクライブしているベンダーワークチームを表示および選択するために必要です。ベンダーの作業チームに*サブスクライブ*する許可をユーザーに与えるには、上記のポリシーに [ベンダーワークフォースのアクセス許可](#sms-security-permissions-workforce-creation-vendor) のステートメントを追加します

`PassRoleForExecutionRoles`

これは、ラベル付けジョブの作成者にワーカー UI をプレビューし、入力データ、ラベル、指示が正しく表示されることを確認する許可を与えるために必要です。このステートメントは、ラベル付けジョブを作成するために使用される IAM 実行ロールを SageMaker AI に渡し、ワーカー UI をレンダリングおよびプレビューする許可をエンティティに付与します。このポリシーのスコープを絞り込むには、`Resource` でラベル付けジョブの作成に使用される実行ロールのロール ARN を追加します。

**`GroundTruthConsole`**
+ `groundtruthlabeling` - これにより、ユーザーは Ground Truth コンソールの特定の機能を使用するために必要なアクションを実行できます。これには、ラベル付けジョブのステータスの記述 (`DescribeConsoleJob`)、入力マニフェストファイル内のすべてのデータセットオブジェクトの一覧表示 (`ListDatasetObjects`)、データセットサンプリングが選択されている場合は、データセットのフィルタリング (`RunFilterOrSampleDatasetJob`)、自動データラベリングが使用されている場合は、入力マニフェストファイルの生成 (`RunGenerateManifestByCrawlingJob`) の許可が含まれます。これらのアクションは Ground Truth コンソールを使用する場合にのみ使用でき、API を使用して直接呼び出すことはできません。
+ `lambda:InvokeFunction` と `lambda:ListFunctions` - これらのアクションは、カスタムラベル付けワークフローの実行に使用される Lambda 関数をリストして呼び出す許可をユーザーに付与します。
+ `s3:*` - このステートメントに含まれるすべてのAmazon S3 の許可は、[データの自動セットアップ](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-console-create-manifest-file.html)用の Amazon S3 バケットの表示(`ListAllMyBuckets`)、Amazon S3 の入力データへのアクセス（`ListBucket`、`GetObject`）、必要に応じて Amazon S3 の CORS ポリシーの確認と作成 (`GetBucketCors` と `PutBucketCors`)、S3 へのラベル付けジョブの出力ファイルの書き込み (`PutObject`) に使用されます。
+ `cognito-idp` - これらのアクセス許可は、Amazon Cognito を使用してワークフォースを作成、表示、管理し、プライベートにするために使用されます。これらのアクションの詳細については、「[Amazon Cognito API リファレンス](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-reference.html)」を参照してください。

## カスタムラベル付けワークフローのアクセス許可
<a name="sms-security-permissions-custom-workflow"></a>

次のステートメントを、[Ground Truth コンソールのアクセス許可](#sms-security-permissions-console-all) のポリシーと同様のポリシーに追加して、[カスタムラベル付けワークフローの作成中](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html)に、既存の注釈前と注釈後の Lambda 関数を選択する許可をユーザーに付与します。

```
{
    "Sid": "GroundTruthConsoleCustomWorkflow",
    "Effect": "Allow",
    "Action": [
        "lambda:InvokeFunction",
        "lambda:ListFunctions"
    ],
    "Resource": "*"
}
```

エンティティに、注釈前と注釈後の Lambda 関数の作成とテストを行う許可を与える方法については、「[Required Permissions To Use Lambda With Ground Truth](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates-step3-lambda-permissions.html)」を参照してください。

## プライベートワークフォースのアクセス許可
<a name="sms-security-permission-workforce-creation"></a>

アクセス許可ポリシーに追加すると、次のアクセス許可により、Amazon Cognito を使用してプライベートワークフォースとワークチームを作成および管理するアクセス許可が付与されます。これらのアクセス許可は、[OIDC IdP ワークフォース](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-create-private-oidc.html#sms-workforce-create-private-oidc-next-steps)の使用時には必要ありません。

```
{
    "Effect": "Allow",
    "Action": [
        "cognito-idp:AdminAddUserToGroup",
        "cognito-idp:AdminCreateUser",
        "cognito-idp:AdminDeleteUser",
        "cognito-idp:AdminDisableUser",
        "cognito-idp:AdminEnableUser",
        "cognito-idp:AdminRemoveUserFromGroup",
        "cognito-idp:CreateGroup",
        "cognito-idp:CreateUserPool",
        "cognito-idp:CreateUserPoolClient",
        "cognito-idp:CreateUserPoolDomain",
        "cognito-idp:DescribeUserPool",
        "cognito-idp:DescribeUserPoolClient",
        "cognito-idp:ListGroups",
        "cognito-idp:ListIdentityProviders",
        "cognito-idp:ListUsers",
        "cognito-idp:ListUsersInGroup",
        "cognito-idp:ListUserPoolClients",
        "cognito-idp:ListUserPools",
        "cognito-idp:UpdateUserPool",
        "cognito-idp:UpdateUserPoolClient"
        ],
    "Resource": "*"
}
```

Amazon Cognito を使用したプライベートワークフォースの作成の詳細については、「[Amazon Cognito ワークフォース](sms-workforce-private-use-cognito.md)」を参照してください。

## ベンダーワークフォースのアクセス許可
<a name="sms-security-permissions-workforce-creation-vendor"></a>

[Amazon SageMaker Ground Truth コンソールを使用するための IAM アクセス許可を付与する](#sms-security-permission-console-access) のポリシーに次のステートメントを追加して、[ベンダーワークフォース](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-vendor.html)にサブスクライブするアクセス許可をエンティティに付与できます。

```
{
    "Sid": "AccessAwsMarketplaceSubscriptions",
    "Effect": "Allow",
    "Action": [
        "aws-marketplace:Subscribe",
        "aws-marketplace:Unsubscribe",
        "aws-marketplace:ViewSubscriptions"
    ],
    "Resource": "*"
}
```

# Ground Truth ラベル付けジョブの SageMaker AI 実行ロールを作成する
<a name="sms-security-permission-execution-role"></a>

ラベル付けジョブを設定する場合は、*実行ロール*を用意する必要があります。これは、SageMaker AI がラベル付けジョブを開始および実行するための許可を持つロールです。

このロールは、以下へのアクセス許可を Ground Truth に付与する必要があります。
+ Amazon S3 を使用して入力データを取得し、Amazon S3 バケットに出力データを書き込みます。バケットの ARN を指定してバケット全体へのアクセス許可を IAM ロールに付与するか、バケット内の特定のリソースへのアクセス許可をロールに付与できます。例えば、バケットの ARN は `arn:aws:s3:::amzn-s3-demo-bucket1` のようになり、Amazon S3 バケット内のリソースの ARN は `arn:aws:s3:::amzn-s3-demo-bucket1/prefix/file-name.png` のようになります。アクションを Amazon S3 バケット内のすべてのリソースに適用するには、ワイルドカード `*` を使用できます。例えば、`arn:aws:s3:::amzn-s3-demo-bucket1/prefix/*`。詳細については、Amazon Simple Storage Service ユーザーガイドの「[Amazon S3 リソース](https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html)」を参照してください。
+ ワーカーメトリクスとラベル付けジョブステータスを記録する CloudWatch。
+ AWS KMS データ暗号化用。(オプション)
+ AWS Lambda カスタムワークフローの作成時に入出力データを処理するための 。

さらに、[ストリーミングラベル付けジョブ](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html)には、このロールへのアクセス許可が必要です。
+ [ラベル付けリクエストの管理](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html#sms-streaming-how-it-works-sqs)に使用する SQS キューとのやりとりを作成する Amazon SQS。
+ Amazon SNS では、Amazon SNS 入力トピックをサブスクライブしてメッセージを取得したり、Amazon SNS 出力トピックにメッセージを送信したりできます。

以下を*除いて*、これらのアクセス許可はすべて `[AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)` 管理ポリシーで付与されます。
+ Amazon S3 バケットのデータとストレージボリュームの暗号化。これらのアクセス許可を構成する方法については、「[で出力データとストレージボリュームを暗号化する AWS KMS](sms-security-kms-permissions.md)」を参照してください。
+ 関数名に `GtRecipe`、`SageMaker`、`Sagemaker`、`sagemaker`、または `LabelingFunction` を含まない Lambda 関数を選択および呼び出すための許可。
+ プレフィックスまたはバケット名に `GroundTruth`、`Groundtruth`、`groundtruth`、`SageMaker`、`Sagemaker`、`sagemaker` を含まない、あるいは名前に `SageMaker` を含む [オブジェクトタグ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html) を含まない Amazon S3 バケット (大文字と小文字は区別されません)。

`AmazonSageMakerGroundTruthExecution` で提供されているものよりも詳細なアクセス許可が必要な場合は、次のポリシーの例を使用して、特定のユースケースに適合する実行ロールを作成します。

**Topics**
+ [

## 組み込みタスクタイプ (非ストリーミング) の実行ロール要件
](#sms-security-permission-execution-role-built-in-tt)
+ [

## 組み込みタスクタイプ (ストリーミング) の実行ロール要件
](#sms-security-permission-execution-role-built-in-tt-streaming)
+ [

## カスタムタスクタイプの実行ロール要件
](#sms-security-permission-execution-role-custom-tt)
+ [

## 自動データラベリングアクセス許可の要件
](#sms-security-permission-execution-role-custom-auto-labeling)

## 組み込みタスクタイプ (非ストリーミング) の実行ロール要件
<a name="sms-security-permission-execution-role-built-in-tt"></a>

次のポリシーは、[組み込みタスクタイプ](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html)のラベル付けジョブを作成するアクセス許可を付与します。この実行ポリシーには、 AWS KMS データの暗号化または復号のためのアクセス許可は含まれません。赤の斜体の ARN をそれぞれ独自の Amazon S3 ARN に置き換えます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ViewBuckets",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::<input-bucket-name>",
                "arn:aws:s3:::<output-bucket-name>"
            ]
        },
        {
            "Sid": "S3GetPutObjects",
            "Effect": "Allow",
            "Action": [
                "s3:AbortMultipartUpload",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::<input-bucket-name>/*",
                "arn:aws:s3:::<output-bucket-name>/*"
            ]
        },
        {
            "Sid": "CloudWatch",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:PutMetricData",
                "logs:CreateLogStream",
                "logs:CreateLogGroup",
                "logs:DescribeLogStreams",
                "logs:PutLogEvents"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## 組み込みタスクタイプ (ストリーミング) の実行ロール要件
<a name="sms-security-permission-execution-role-built-in-tt-streaming"></a>

ストリーミングラベル付けジョブを作成する場合は、次のようなポリシーを、ラベル付けジョブの作成に使用する実行ロールに追加する必要があります。ポリシーの範囲を絞り込むには、 `*` `Resource`の を、IAM ロールにアクセスおよび使用するアクセス許可を付与する特定の AWS リソースに置き換えます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:AbortMultipartUpload",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/*",
                "arn:aws:s3:::amzn-s3-demo-bucket2/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {
                    "s3:ExistingObjectTag/SageMaker": "true"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketLocation",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket2"
            ]
        },
        {
            "Sid": "CloudWatch",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:PutMetricData",
                "logs:CreateLogStream",
                "logs:CreateLogGroup",
                "logs:DescribeLogStreams",
                "logs:PutLogEvents"
            ],
            "Resource": "*"
        },
        {
            "Sid": "StreamingQueue",
            "Effect": "Allow",
            "Action": [
                "sqs:CreateQueue",
                "sqs:DeleteMessage",
                "sqs:GetQueueAttributes",
                "sqs:GetQueueUrl",
                "sqs:ReceiveMessage",
                "sqs:SendMessage",
                "sqs:SetQueueAttributes"
            ],
            "Resource": "arn:aws:sqs:*:*:*GroundTruth*"
        },
        {
            "Sid": "StreamingTopicSubscribe",
            "Effect": "Allow",
            "Action": "sns:Subscribe",
            "Resource": [
                "arn:aws:sns:us-east-1:111122223333:input-topic-name",
                "arn:aws:sns:us-east-1:111122223333:output-topic-name"
            ],
            "Condition": {
                "StringEquals": {
                    "sns:Protocol": "sqs"
                },
                "StringLike": {
                    "sns:Endpoint": "arn:aws:sns:us-east-1:111122223333:*GroundTruth*"
                }
            }
        },
        {
            "Sid": "StreamingTopic",
            "Effect": "Allow",
            "Action": [
                "sns:Publish"
            ],
            "Resource": [
                "arn:aws:sns:us-east-1:111122223333:input-topic-name",
                "arn:aws:sns:us-east-1:111122223333:output-topic-name"
            ]
        },
        {
            "Sid": "StreamingTopicUnsubscribe",
            "Effect": "Allow",
            "Action": [
                "sns:Unsubscribe"
            ],
            "Resource": [
                "arn:aws:sns:us-east-1:111122223333:input-topic-name",
                "arn:aws:sns:us-east-1:111122223333:output-topic-name"
            ]
        }
    ]
}
```

------

## カスタムタスクタイプの実行ロール要件
<a name="sms-security-permission-execution-role-custom-tt"></a>

[カスタムラベル付けワークフロー](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html)を作成する場合は、[組み込みタスクタイプ (非ストリーミング) の実行ロール要件](#sms-security-permission-execution-role-built-in-tt) または [組み込みタスクタイプ (ストリーミング) の実行ロール要件](#sms-security-permission-execution-role-built-in-tt-streaming) にあるような実行ロールポリシーに次のステートメントを追加します。

このポリシーは、実行ロールに注釈前と注釈後の Lambda 関数 を `Invoke` する許可を与えます。

```
{
    "Sid": "LambdaFunctions",
    "Effect": "Allow",
    "Action": [
        "lambda:InvokeFunction"
    ],
    "Resource": [
        "arn:aws:lambda:<region>:<account-id>:function:<pre-annotation-lambda-name>",
        "arn:aws:lambda:<region>:<account-id>:function:<post-annotation-lambda-name>"
    ]
}
```

## 自動データラベリングアクセス許可の要件
<a name="sms-security-permission-execution-role-custom-auto-labeling"></a>

[自動データラベリング機能](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html)を有効にしてラベル付けジョブを作成する場合は、1) 実行ロールにアタッチされた IAM ポリシーに 1 つのポリシーを追加し、2) 実行ロールの信頼ポリシーを更新する必要があります。

次のステートメントでは、IAM 実行ロールを SageMaker AI に渡して、アクティブラーニングと自動データラベリングに使用されるトレーニングジョブと推論ジョブを実行できるようにします。このステートメントを [組み込みタスクタイプ (非ストリーミング) の実行ロール要件](#sms-security-permission-execution-role-built-in-tt) または [組み込みタスクタイプ (ストリーミング) の実行ロール要件](#sms-security-permission-execution-role-built-in-tt-streaming) にあるような実行ロールポリシーに追加します。`arn:aws:iam::<account-number>:role/<role-name>` を実行ロール ARN に置き換えます。IAM ロール ARN は、IAM コンソールの **[Roles]** (ロール) にあります。

```
{
    "Effect": "Allow",
    "Action": [
        "iam:PassRole"
    ],
    "Resource": "arn:aws:iam::<account-number>:role/<execution-role-name>",
    "Condition": {
        "StringEquals": {
            "iam:PassedToService": [
                "sagemaker.amazonaws.com"
            ]
        }
    }
}
```

次のステートメントでは、SageMaker AI が実行ロールを引き受け、SageMaker のトレーニングジョブと推論ジョブを作成および管理できます。このポリシーは、実行ロールの信頼関係に追加する必要があります。IAM ロールの信頼ポリシーを追加または変更する方法については、IAM ユーザーガイドの「[Modifying a role](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html)」 (ロールの変更) を参照してください。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Principal": {"Service": "sagemaker.amazonaws.com" },
        "Action": "sts:AssumeRole"
    }
}
```

------



# で出力データとストレージボリュームを暗号化する AWS KMS
<a name="sms-security-kms-permissions"></a>

 AWS Key Management Service (AWS KMS) を使用して、ラベル付けジョブの作成時に[カスタマーマネージドキー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys)を指定することで、ラベル付けジョブからの出力データを暗号化できます。API オペレーション `CreateLabelingJob` を使用して、自動データラベリングを使用するラベル付けジョブを作成するには、カスタマーマネージド型キーを使用して ML コンピューティングインスタンスにアタッチされたストレージボリュームを暗号化し、トレーニングジョブと推論ジョブを実行することもできます。

このセクションでは、出力データの暗号化を有効にするためにカスタマーマネージド型キーにアタッチする必要がある IAM ポリシーと、ストレージボリュームの暗号化を使用するためにカスタマーマネージド型キーと実行ロールにアタッチする必要があるポリシーについて説明します。これらのオプションの詳細については、「[出力データとストレージボリュームの暗号化](sms-security.md)」を参照してください。

## KMS を使用して出力データを暗号化する
<a name="sms-security-kms-permissions-output-data"></a>

出力データを暗号化するために AWS KMS カスタマーマネージドキーを指定する場合は、そのキーに次のような IAM ポリシーを追加する必要があります。このポリシーは、ラベル付けジョブの作成に使用する IAM 実行ロールに、このキーを使用して `"Action"` にリストされているすべてのアクションを実行するアクセス権限を付与します。これらのアクションの詳細については、「 AWS Key Management Service デベロッパーガイド」の[AWS KMS 「 アクセス許可](https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html)」を参照してください。

このポリシーを使用するには、`"Principal"` の IAM サービスロール ARN をラベル付けジョブの作成に使用する実行ロールの ARN に置き換えます。コンソールでラベル付けジョブを作成するとき、これが **[Job overview]** (ジョブの概要) セクションの **[IAM Role]** (IAM ロール) で指定するロールです。`CreateLabelingJob` を使用してラベル付けジョブを作成する場合、これが [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn) で指定する ARN です。

```
{
    "Sid": "AllowUseOfKmsKey",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/service-role/example-role"
    },
    "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
    ],
    "Resource": "*"
}
```

## 自動データラベリングの機械学習コンピューティングインスタンスストレージボリュームを暗号化する
<a name="sms-security-kms-permissions-storage-volume"></a>

[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobResourceConfig.html#sagemaker-Type-LabelingJobResourceConfig-VolumeKmsKeyId](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobResourceConfig.html#sagemaker-Type-LabelingJobResourceConfig-VolumeKmsKeyId) を指定して、自動データラベリングのトレーニングと推論に使用される機械学習コンピューティングインスタンスにアタッチされたストレージボリュームを暗号化する場合は、次の手順を実行する必要があります。
+ [KMS を使用して出力データを暗号化する](#sms-security-kms-permissions-output-data) で説明されているアクセス許可をカスタマーマネージド型キーにアタッチします。
+ ラベル付けジョブの作成に使用する IAM 実行ロールに、次のようなポリシーをアタッチします。これは、`CreateLabelingJob` の [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn) で指定した IAM ロールです。このポリシーが許可する`"kms:CreateGrant"`アクションの詳細については、 AWS Key Management Service API リファレンス[https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)の「」を参照してください。

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

****  

```
{
"Version":"2012-10-17",		 	 	  
"Statement": 
 [  
   {
    "Effect": "Allow",
    "Action": [
       "kms:CreateGrant"
    ],
    "Resource": "*"
  }
]
}
```

------

Ground Truth ストレージボリュームの暗号化の詳細については、「[KMS キーを使用して自動データラベリングのストレージボリュームを暗号化する (API のみ)](sms-security.md#sms-security-kms-storage-volume)」を参照してください。