

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

# Amazon Rekognition の Identity and Access Management
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) は、管理者が AWS リソースへのアクセスを安全に制御 AWS のサービス するのに役立つ です。IAM 管理者は、誰を *認証* (サインイン) し、誰に Amazon Rekognition リソースの使用を*承認する* (アクセス許可を付与する) かを制御します。IAM は、追加料金なしで使用できる AWS のサービス です。

**Topics**
+ [オーディエンス](#security_iam_audience)
+ [アイデンティティを使用した認証](#security_iam_authentication)
+ [ポリシーを使用したアクセスの管理](#security_iam_access-manage)
+ [Amazon Rekognition が IAM と機能する仕組み](security_iam_service-with-iam.md)
+ [AWS Amazon Rekognition の マネージドポリシー](security-iam-awsmanpol.md)
+ [ポリシーに関するベストプラクティス](#security_iam_service-with-iam-policy-best-practices)
+ [Amazon Rekognition コンソールの使用](security_iam_id-based-policy-examples-console.md)
+ [Amazon Rekognition のアイデンティティベースのポリシーの使用例](security_iam_id-based-policy-examples.md)
+ [Amazon Rekognition のリソースベースのポリシーの例](security_iam_resource-based-policy-examples.md)
+ [Amazon Rekognition アイデンティティとアクセスのトラブルシューティング](security_iam_troubleshoot.md)

## オーディエンス
<a name="security_iam_audience"></a>

 AWS Identity and Access Management (IAM) の使用方法は、ロールによって異なります。
+ **サービスユーザー** - 機能にアクセスできない場合は、管理者にアクセス許可をリクエストします (「[Amazon Rekognition アイデンティティとアクセスのトラブルシューティング](security_iam_troubleshoot.md)」を参照)。
+ **サービス管理者** - ユーザーアクセスを決定し、アクセス許可リクエストを送信します (「[Amazon Rekognition が IAM と機能する仕組み](security_iam_service-with-iam.md)」を参照)
+ **IAM 管理者** - アクセスを管理するためのポリシーを作成します (「[Amazon Rekognition のアイデンティティベースのポリシーの使用例](security_iam_id-based-policy-examples.md)」を参照)

## アイデンティティを使用した認証
<a name="security_iam_authentication"></a>

認証は、ID 認証情報 AWS を使用して にサインインする方法です。、IAM ユーザー AWS アカウントのルートユーザー、または IAM ロールを引き受けることで認証される必要があります。

 AWS IAM アイデンティティセンター (IAM Identity Center)、シングルサインオン認証、Google/Facebook 認証情報などの ID ソースからの認証情報を使用して、フェデレーティッド ID としてサインインできます。サインインの詳細については、「*AWS サインイン ユーザーガイド*」の「[AWS アカウントにサインインする方法](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html)」を参照してください。

プログラムによるアクセスの場合、 は SDK と CLI AWS を提供してリクエストを暗号化して署名します。詳細については、「*IAM ユーザーガイド*」の「[API リクエストに対するAWS 署名バージョン 4](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)」を参照してください。

### IAM ユーザーとグループ
<a name="security_iam_authentication-iamuser"></a>

*[IAM ユーザー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)*は、特定の個人やアプリケーションに対する特定のアクセス許可を持つアイデンティティです。長期認証情報を持つ IAM ユーザーの代わりに一時的な認証情報を使用することをお勧めします。詳細については、*IAM ユーザーガイド*の[「ID プロバイダーとのフェデレーションを使用して にアクセスする必要がある AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp)」を参照してください。

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html)は、IAM ユーザーの集合を指定し、大量のユーザーに対するアクセス許可の管理を容易にします。詳細については、「*IAM ユーザーガイド*」の「[IAM ユーザーに関するユースケース](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html)」を参照してください。

### IAM ロール
<a name="security_iam_authentication-iamrole"></a>

*[IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)*は、特定のアクセス許可を持つアイデンティであり、一時的な認証情報を提供します。ユーザー[から IAM ロール (コンソール) に切り替えるか、 または API オペレーションを呼び出すことで、ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)を引き受けることができます。 AWS CLI AWS 詳細については、「*IAM ユーザーガイド*」の「[ロールを引き受けるための各種方法](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html)」を参照してください。

IAM ロールは、フェデレーションユーザーアクセス、一時的な IAM ユーザーのアクセス許可、クロスアカウントアクセス、クロスサービスアクセス、および Amazon EC2 で実行するアプリケーションに役立ちます。詳細については、*IAM ユーザーガイド* の [IAM でのクロスアカウントリソースアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) を参照してください。

## ポリシーを使用したアクセスの管理
<a name="security_iam_access-manage"></a>

でアクセスを制御する AWS には、ポリシーを作成し、ID AWS またはリソースにアタッチします。ポリシーは、アイデンティティまたはリソースに関連付けられたときにアクセス許可を定義します。 は、プリンシパルがリクエストを行うときにこれらのポリシー AWS を評価します。ほとんどのポリシーは JSON ドキュメント AWS として に保存されます。JSON ポリシードキュメントの詳細については、「*IAM ユーザーガイド*」の「[JSON ポリシー概要](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json)」を参照してください。

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

デフォルトでは、ユーザーやロールにアクセス許可はありません。IAM 管理者は IAM ポリシーを作成してロールに追加し、このロールをユーザーが引き受けられるようにします。IAM ポリシーは、オペレーションの実行方法を問わず、アクセス許可を定義します。

### アイデンティティベースのポリシーを使用する
<a name="security_iam_access-manage-id-based-policies"></a>

アイデンティティベースのポリシーは、アイデンティティ (ユーザー、グループ、またはロール) にアタッチできる JSON アクセス許可ポリシードキュメントです。これらのポリシーは、アイデンティティがどのリソースに対してどのような条件下でどのようなアクションを実行できるかを制御します。アイデンティティベースポリシーの作成方法については、*IAM ユーザーガイド* の [カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) を参照してください。

アイデンティティベースのポリシーは、*インラインポリシー* (単一の ID に直接埋め込む) または*管理ポリシー* (複数の ID にアタッチされたスタンドアロンポリシー) にすることができます。管理ポリシーとインラインポリシーのいずれかを選択する方法については、「*IAM ユーザーガイド*」の「[管理ポリシーとインラインポリシーのいずれかを選択する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html)」を参照してください。

### リソースベースのポリシーを利用する
<a name="security_iam_access-manage-resource-based-policies"></a>

リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。例としては、IAM *ロール信頼ポリシー*や Amazon S3 *バケットポリシー*などがあります。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスを制御できます。リソースベースのポリシーでは、[プリンシパルを指定する](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html)必要があります。

リソースベースのポリシーは、そのサービス内にあるインラインポリシーです。リソースベースのポリシーでは、IAM の AWS マネージドポリシーを使用できません。

### アクセスコントロールリスト (ACL)
<a name="security_iam_access-manage-acl"></a>

アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするためのアクセス許可を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。

Amazon S3、および Amazon VPC は AWS WAF、ACLs。ACL の詳細については、*Amazon Simple Storage Service デベロッパーガイド* の [アクセスコントロールリスト (ACL) の概要](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) を参照してください。

### その他のポリシータイプ
<a name="security_iam_access-manage-other-policies"></a>

AWS は、より一般的なポリシータイプによって付与されるアクセス許可の最大数を設定できる追加のポリシータイプをサポートしています。
+ **アクセス許可の境界** – アイデンティティベースのポリシーで IAM エンティティに付与することのできるアクセス許可の数の上限を設定します。詳細については、「*IAM ユーザーガイド*」の「[IAM エンティティのアクセス許可境界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)」を参照してください。
+ **サービスコントロールポリシー (SCP)** - AWS Organizations内の組織または組織単位の最大のアクセス許可を指定します。詳細については、「*AWS Organizations ユーザーガイド*」の「[サービスコントロールポリシー](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)」を参照してください。
+ **リソースコントロールポリシー (RCP)** – は、アカウント内のリソースで利用できる最大数のアクセス許可を定義します。詳細については、「*AWS Organizations ユーザーガイド*」の「[リソースコントロールポリシー (RCP)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html)」を参照してください。
+ **セッションポリシー** – ロールまたはフェデレーションユーザーの一時セッションを作成する際にパラメータとして渡される高度なポリシーです。詳細については、「*IAM ユーザーガイド*」の「[セッションポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)」を参照してください。

### 複数のポリシータイプ
<a name="security_iam_access-manage-multiple-policies"></a>

1 つのリクエストに複数のタイプのポリシーが適用されると、結果として作成されるアクセス許可を理解するのがさらに難しくなります。が複数のポリシータイプが関与する場合にリクエストを許可するかどうか AWS を決定する方法については、*「IAM ユーザーガイド*」の[「ポリシー評価ロジック](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html)」を参照してください。

# Amazon Rekognition が IAM と機能する仕組み
<a name="security_iam_service-with-iam"></a>

IAM を使用して Amazon Rekognition へのアクセスを管理する前に、Amazon Rekognition で使用できる IAM 機能について理解しておく必要があります。Amazon Rekognition およびその他の AWS のサービスが IAM と連携する方法の概要については、IAM *ユーザーガイド*の[AWS 「IAM と連携する のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照してください。

**Topics**
+ [Amazon Rekognition のアイデンティティベースのポリシー](#security_iam_service-with-iam-id-based-policies)
+ [Amazon Rekognition リソースベースのポリシー](#security_iam_service-with-iam-resource-based-policies)
+ [Amazon Rekognition の IAM ロール](#security_iam_service-with-iam-roles)

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

IAM アイデンティティベースのポリシーでは許可または拒否するアクションとリソース、またアクションを許可または拒否する条件を指定できます。Amazon Rekognition は、特定のアクション、リソース、および条件キーをサポートしています。JSON ポリシーで使用するすべての要素については、「IAM ユーザーガイド」の「[IAM JSON ポリシー要素のリファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)」を参照してください。

### アクション
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

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

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

Amazon Rekognition のポリシーアクションは、アクションの前にプレフィックス `rekognition:` を使用します。たとえば、`DetectLabels` Amazon Rekognition API オペレーションでイメージ内のオブジェクト、シーン、または概念を検出するアクセス許可を付与するには、ポリシーに `rekognition:DetectLabels` アクションを含めます。ポリシーステートメントには`Action` または `NotAction` 要素を含める必要があります。Amazon Rekognition は、このサービスで実行できるタスクを記述する独自のアクションのセットを定義します。

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

```
"Action": [
      "rekognition:action1",
      "rekognition:action2"
```

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

```
"Action": "rekognition:Describe*"
```



Amazon Rekognition アクションのリストを確認するには、[IAM ユーザーガイド](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonrekognition.html#amazonrekognition-actions-as-permissions) の「*Amazon Rekognition で定義されるアクション*」を参照してください。

### リソース
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

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

`Resource` JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ベストプラクティスとして、[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) を使用してリソースを指定します。リソースレベルのアクセス許可をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (\$1) を使用します。

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



ARN の形式の詳細については、[「Amazon リソースネーム (ARNs)」と AWS 「サービス名前空間](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)」を参照してください。

たとえば、ステートメントで `MyCollection` コレクションを指定するには、次の ARN を使用します。

```
"Resource": "arn:aws:rekognition:us-east-1:123456789012:collection/MyCollection"
```

特定のアカウントに属するすべてのインスタンスを指定するには、ワイルドカード (\$1) を使用します。

```
"Resource": "arn:aws:rekognition:us-east-1:123456789012:collection/*"
```

リソースの作成を含む、一部の Amazon Rekognition アクションは、特定のリソースで実行できません。このような場合はワイルドカード \$1を使用する必要があります。

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

Amazon Rekognition のリソースタイプとそれらの ARN のリストを確認するには、[IAM ユーザーガイドの](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonrekognition.html#amazonrekognition-resources-for-iam-policies)「*Amazon Rekognition で定義されるリソースタイプ*」を参照してください。どのアクションで各リソースの ARN を指定できるかについては、「[Amazon Rekognition で定義されるアクション](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonrekognition.html#amazonrekognition-actions-as-permissions)」を参照してください。

### 条件キー
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Amazon Rekognition にはサービス固有条件キーがありませんが、いくつかのグローバル条件キーの使用をサポートしています。すべての AWS グローバル条件キーを確認するには、*IAM ユーザーガイド*の[AWS 「グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)」を参照してください。

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

Amazon Rekognition は、Custom Labels モデルのコピーオペレーションを行うためのリソースベースポリシーをサポートしています。詳細については、「[Amazon Rekognition resource-based policy examples](https://docs.aws.amazon.com/rekognition/latest/dg/security_iam_resource-based-policy-examples.html)」を参照してください。

Simple Storage Service (Amazon S3) などの他のサービスでは、リソースベースの許可ポリシーもサポートされています。例えば、ポリシーを S3 バケットにアタッチして、そのバケットに対するアクセス許可を管理できます。

Amazon S3 バケットに保存されているイメージにアクセスするには、S3 バケット内のオブジェクトにアクセスするための権限が必要です。このアクセス許可により、Amazon Rekognition は S3 バケットからイメージをダウンロードできます。次のポリシー例では、ユーザーは amzn-s3-demo-bucket3 という S3 バケットに対して、`s3:GetObject` アクションを実行できます。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:GetObject",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket3/*"
            ]
        }
    ]
}
```

------

バージョニングを有効にして S3 バケットを使用するには、次の例に示すように、`s3:GetObjectVersion` アクションを追加します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket3/*"
            ]
        }
    ]
}
```

------

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

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

### Amazon Rekognition での一時的な認証情報の使用
<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 オペレーションを呼び出します。

Amazon Rekognition は、一時的な認証情報の使用をサポートします。

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

[サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用すると、 AWS サービスは他の サービスのリソースにアクセスして、ユーザーに代わってアクションを実行できます。サービスリンクロールは IAM アカウント内に表示され、サービスによって所有されます。IAM 管理者は、サービスリンクロールの許可を表示できますが、編集することはできません。

Amazon Rekognition ではサービスにリンクされたロールがサポートされていません。

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

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

Amazon Rekognition ではサービスロールがサポートされています。

サービスロールを使用すると、Amazon Rekognition を使用して別のサービスを呼び出し、アクセスすべきではないリソースに対してアクションを実行するというセキュリティ上の問題が発生する可能性があります。アカウントを安全に保つには、Amazon Rekognition のアクセス範囲を、使用しているリソースのみに制限する必要があります。これは、IAM サービスロールに信頼ポリシーをアタッチすることで実行できます。これを行う方法については、「[サービス間の混乱した代理の防止](cross-service-confused-deputy-prevention.md)」を参照してください。

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

保存した動画を分析するために Amazon Rekognition を設定する場合は、Amazon Rekognition が自動的に Amazon SNS にアクセスすることを許可するロールを選択する必要があります。サービスロールあるいはサービスにリンクされたロールを以前に作成している場合、Amazon Rekognition は選択できるロールを一覧表示します。詳細については、「[Amazon Rekognition Video の設定](api-video-roles.md)」を参照してください。

### 例: Amazon S3 バケット内のイメージにアクセスするための Amazon Rekognition の設定
<a name="security_iam_service-s3-example"></a>

以下は、Amazon S3 バケット内のイメージを分析するために Amazon Rekognition を設定する方法の例です。Amazon Rekognition を使用して Amazon S3 バケット内のイメージを分析するには、以下を実行する必要があります。

1. IAM ユーザー/ロール (クライアント) に、関連する Amazon Rekognition API オペレーション (DetectLabels、DetectFaces など) を呼び出すアクセス許可があることを確認します。

   目的の API オペレーションを呼び出すための適切なアクセス許可を付与する ID ベースのポリシーをアタッチします。たとえば、 `DetectLabels` と `DetectFaces` を呼び出すアクセス許可をロールに付与するには、次のようなポリシーをロールにアタッチします。

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "rekognition:DetectLabels",
                   "rekognition:DetectFaces"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Amazon Rekognition サービスには、Amazon S3 バケットにアクセスするためのアクセス許可が必要です。API コールを行うときに Amazon Rekognition に渡す必要がある IAM サービスロールを作成します。サービスロールが、Amazon Rekognition のサービスプリンシパルを信頼しており、バケットに対する `s3:GetObject` アクセス許可を持っていることを確認してください。

   信頼ポリシーは次のようになります。

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

****  

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

------

   サービスロールにアタッチされた ID ベースのポリシーは次のようになります。

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "s3:GetObject",
               "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
           }
       ]
   }
   ```

------

# AWS Amazon Rekognition の マネージドポリシー
<a name="security-iam-awsmanpol"></a>







ユーザー、グループ、ロールにアクセス許可を追加するには、自分でポリシーを記述するよりも AWS 管理ポリシーを使用する方が簡単です。チームに必要な権限のみを提供する [IAM カスタマーマネージドポリシーを作成する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html)には時間と専門知識が必要です。すぐに開始するには、 AWS マネージドポリシーを使用できます。これらのポリシーは一般的なユースケースを対象としており、 AWS アカウントで利用できます。 AWS 管理ポリシーの詳細については、*IAM ユーザーガイド*の「 [AWS 管理ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)」を参照してください。

AWS サービスは、 AWS 管理ポリシーを維持および更新します。 AWS 管理ポリシーのアクセス許可は変更できません。サービスでは新しい機能を利用できるようにするために、 AWS マネージドポリシーに権限が追加されることがあります。この種類の更新はポリシーがアタッチされている、すべてのアイデンティティ (ユーザー、グループおよびロール) に影響を与えます。新しい機能が立ち上げられた場合や、新しいオペレーションが使用可能になった場合に、各サービスが AWS マネージドポリシーを更新する可能性が最も高くなります。サービスは AWS 管理ポリシーからアクセス許可を削除しないため、ポリシーの更新によって既存のアクセス許可が損なわれることはありません。

さらに、 は、複数のサービスにまたがるジョブ関数の 管理ポリシー AWS をサポートしています。例えば、**ReadOnlyAccess** AWS 管理ポリシーは、すべての AWS サービスとリソースへの読み取り専用アクセスを提供します。サービスが新機能を起動すると、 は新しいオペレーションとリソースの読み取り専用アクセス許可 AWS を追加します。ジョブ機能のポリシーの一覧および詳細については、「*IAM ユーザーガイド*」の「[AWS のジョブ機能のマネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)」を参照してください。









## AWS 管理ポリシー:AmazonRekognitionFullAccess
<a name="security-iam-awsmanpol-AmazonRekognitionFullAccess"></a>

`AmazonRekognitionFullAccess` Amazon Rekognition リソースに対して、コレクションの作成や削除なども含めて、フルアクセスを許可します。

`AmazonRekognitionFullAccess` ポリシーを IAM アイデンティティにアタッチできます。

**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。

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

****  

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

------

## AWS 管理ポリシー: AmazonRekognitionReadOnlyAccess
<a name="security-iam-awsmanpol-AmazonRekognitionReadOnlyAccess"></a>

`AmazonRekognitionReadOnlyAccess` Amazon Rekognition リソースへの読み取り専用アクセスを許可します。

`AmazonRekognitionReadOnlyAccess` ポリシーを IAM アイデンティティにアタッチできます。

**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AmazonRekognitionReadOnlyAccess",
            "Effect": "Allow",
            "Action": [
                "rekognition:CompareFaces",
                "rekognition:DetectFaces",
                "rekognition:DetectLabels",
                "rekognition:ListCollections",
                "rekognition:ListFaces",
                "rekognition:SearchFaces",
                "rekognition:SearchFacesByImage",
                "rekognition:DetectText",
                "rekognition:GetCelebrityInfo",
                "rekognition:RecognizeCelebrities",
                "rekognition:DetectModerationLabels",
                "rekognition:GetLabelDetection",
                "rekognition:GetFaceDetection",
                "rekognition:GetContentModeration",
                "rekognition:GetPersonTracking",
                "rekognition:GetCelebrityRecognition",
                "rekognition:GetFaceSearch",
                "rekognition:GetTextDetection",
                "rekognition:GetSegmentDetection",
                "rekognition:DescribeStreamProcessor",
                "rekognition:ListStreamProcessors",
                "rekognition:DescribeProjects",
                "rekognition:DescribeProjectVersions",
                "rekognition:DetectCustomLabels",
                "rekognition:DetectProtectiveEquipment",
                "rekognition:ListTagsForResource",
                "rekognition:ListDatasetEntries",
                "rekognition:ListDatasetLabels",
                "rekognition:DescribeDataset",
                "rekognition:ListProjectPolicies",
                "rekognition:ListUsers",
                "rekognition:SearchUsers",
                "rekognition:SearchUsersByImage",
                "rekognition:GetMediaAnalysisJob",
                "rekognition:ListMediaAnalysisJobs"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## AWS 管理ポリシー:AmazonRekognitionServiceRole
<a name="security-iam-awsmanpol-AmazonRekognitionServiceRole"></a>

`AmazonRekognitionServiceRole` Amazon Rekognition は、お客様に代わって Amazon Kinesis Data Streams および Amazon SNS サービスを呼び出すことを許可します。

`AmazonRekognitionServiceRole` ポリシーを IAM アイデンティティにアタッチできます。

このサービスロールを使用する場合は、Amazon Rekognition のアクセス範囲を、使用しているリソースのみに制限してアカウントを安全に保つ必要があります。これは、IAM サービスロールに信頼ポリシーをアタッチすることで実行できます。これを行う方法については、「[サービス間の混乱した代理の防止](cross-service-confused-deputy-prevention.md)」を参照してください。

**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sns:Publish"
            ],
            "Resource": "arn:aws:sns:*:*:AmazonRekognition*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesis:PutRecord",
                "kinesis:PutRecords"
            ],
            "Resource": "arn:aws:kinesis:*:*:stream/AmazonRekognition*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesisvideo:GetDataEndpoint",
                "kinesisvideo:GetMedia"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## AWS 管理ポリシー:Amazon RekognitionCustomLabelsFullAccess
<a name="security-iam-awsmanpol-custom-labels-full-access"></a>

このポリシーは、Amazon Rekognition Custom Labels; users を対象としています。AmazonRekognitionCustomLabelsFullAccess ポリシーを使用して、ユーザーが Amazon Rekognition カスタムラベル API へのフルアクセスと、Amazon Rekognition カスタムラベルコンソールによって作成されたコンソールバケットへのフルアクセスを許可します。

**アクセス許可の詳細**

このポリシーには、以下のアクセス許可が含まれています。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:ListAllMyBuckets",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:GetObjectTagging",
                "s3:GetObjectVersion",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::*custom-labels*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "rekognition:CopyProjectVersion",
                "rekognition:CreateProject",
                "rekognition:CreateProjectVersion",
                "rekognition:StartProjectVersion",
                "rekognition:StopProjectVersion",
                "rekognition:DescribeProjects",
                "rekognition:DescribeProjectVersions",
                "rekognition:DetectCustomLabels",
                "rekognition:DeleteProject",
                "rekognition:DeleteProjectVersion",
                "rekognition:TagResource",
                "rekognition:UntagResource",
                "rekognition:ListTagsForResource",
                "rekognition:CreateDataset",
                "rekognition:ListDatasetEntries",
                "rekognition:ListDatasetLabels",
                "rekognition:DescribeDataset",
                "rekognition:UpdateDatasetEntries",
                "rekognition:DistributeDatasetEntries",
                "rekognition:DeleteDataset",
                "rekognition:PutProjectPolicy",
                "rekognition:ListProjectPolicies",
                "rekognition:DeleteProjectPolicy"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## AWS マネージドポリシーに対する Amazon Rekognition の更新
<a name="security-iam-awsmanpol-updates"></a>



このサービスがこれらの変更の追跡を開始してからの Amazon Rekognition の AWS マネージドポリシーの更新に関する詳細を表示します。このページへの変更に関する自動アラートを受け取るには、Amazon Rekognition の ドキュメント履歴 ページで RSS フィードにサブスクライブしてください。




| 変更 | 説明 | 日付 | 
| --- | --- | --- | 
| メディア分析ジョブを含むアクションが次の管理ポリシーに追加されました。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html) |  Amazon Rekognition が、次のアクションを AmazonRekognitionReadOnlyAccess 管理ポリシーに追加しました。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html) |  2023 年 10 月 31 日  | 
| ユーザーを管理するアクションが以下の管理ポリシーに追加されました。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html) |  Amazon Rekognition が、次のアクションを AmazonRekognitionReadOnlyAccess 管理ポリシーに追加しました。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html) |  2023 年 6 月 12 日  | 
| ProjectPolicy と Custom Labels モデルコピーのアクションが以下の管理ポリシーに追加されました。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html) |  Amazon Rekognition が、次のアクションを AmazonRekognitionCustomLabelsFullAccess および AmazonRekognitionFullAccess 管理ポリシーに追加しました。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html) |  2022 年 7 月 21 日  | 
| ProjectPolicy と Custom Labels モデルコピーのアクションが以下の管理ポリシーに追加されました。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html) |  Amazon Rekognition が、次のアクションを AmazonRekognitionReadOnlyAccess 管理ポリシーに追加しました。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html) | 2022 年 7 月 21 日 | 
|  次の管理ポリシーのデータセット管理が更新されます。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html)  |  Amazon Rekognition は、AmazonRekognitionReadOnlyAccess、AmazonrekognitionfullOnlyAccess、およびAmazonrekognitionCustomLabelsFullAccess 管理ポリシーに以下のアクションを追加しました。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/security-iam-awsmanpol.html)  |  2021 年 11 月 1 日  | 
|  更新のタグ付け [AWS 管理ポリシー: AmazonRekognitionReadOnlyAccess](#security-iam-awsmanpol-AmazonRekognitionReadOnlyAccess) および [AWS 管理ポリシー:AmazonRekognitionFullAccess](#security-iam-awsmanpol-AmazonRekognitionFullAccess)  |  Amazon Rekognition は、AmazonrekognitionFullAccess および AmazonrekognitionReadOnlyAccess ポリシーに新しいタグ付けアクションを追加しました。  | 2021 年 4 月 2 日 | 
|  Amazon Rekognition が変更の追跡を開始  |  Amazon Rekognition は、 AWS 管理ポリシーの変更の追跡を開始しました。  | 2021 年 4 月 2 日 | 

## ポリシーに関するベストプラクティス
<a name="security_iam_service-with-iam-policy-best-practices"></a>

アイデンティティベースのポリシーは、アカウント内で誰かが Amazon Rekognition リソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションでは、 AWS アカウントに費用が発生する場合があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:
+ ** AWS 管理ポリシーを開始し、最小特権のアクセス許可に移行する** – ユーザーとワークロードにアクセス許可の付与を開始するには、多くの一般的なユースケースにアクセス許可を付与する*AWS 管理ポリシー*を使用します。これらは で使用できます AWS アカウント。ユースケースに固有の AWS カスタマー管理ポリシーを定義することで、アクセス許可をさらに減らすことをお勧めします。詳細については、*IAM ユーザーガイド* の [AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) または [ジョブ機能のAWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) を参照してください。
+ **最小特権を適用する** – IAM ポリシーでアクセス許可を設定する場合は、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権アクセス許可とも呼ばれています。IAM を使用して許可を適用する方法の詳細については、*IAM ユーザーガイド* の [IAM でのポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) を参照してください。
+ **IAM ポリシーで条件を使用してアクセスをさらに制限する** - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。たとえば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。条件を使用して、サービスアクションが などの特定の を通じて使用されている場合に AWS のサービス、サービスアクションへのアクセスを許可することもできます CloudFormation。詳細については、*IAM ユーザーガイド* の [IAM JSON ポリシー要素:条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) を参照してください。
+ **IAM アクセスアナライザー を使用して IAM ポリシーを検証し、安全で機能的な権限を確保する** - IAM アクセスアナライザー は、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、*IAM ユーザーガイド* の [IAM Access Analyzer でポリシーを検証する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) を参照してください。
+ **多要素認証 (MFA) を要求する** – で IAM ユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、MFA をオンにしてセキュリティを強化します。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、*IAM ユーザーガイド* の [MFA を使用した安全な API アクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) を参照してください。

IAM でのベストプラクティスの詳細については、*IAM ユーザーガイド* の [IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) を参照してください。

# Amazon Rekognition コンソールの使用
<a name="security_iam_id-based-policy-examples-console"></a>

Amazon Rekognition カスタムラベル機能を除く、Amazon Rekognition は、Amazon Rekognition コンソールの使用時に追加のアクセス許可を必要としません。Amazon Rekognition カスタムラベルの詳細については、「[ステップ 5: Amazon Rekognition カスタムラベルコンソールのアクセス許可を設定する](https://docs.aws.amazon.com/rekognition/latest/dg/su-console-policy.html)」を参照してください。

 AWS CLI または AWS API のみを呼び出すユーザーには、最小限のコンソールアクセス許可を付与する必要はありません。代わりに、実行しようとしている API オペレーションに一致するアクションのみへのアクセスが許可されます。

# Amazon Rekognition のアイデンティティベースのポリシーの使用例
<a name="security_iam_id-based-policy-examples"></a>

デフォルトでは、ユーザーおよびロールには Amazon Rekognition リソースを作成または修正するアクセス権限はありません。また、 AWS マネジメントコンソール、 AWS CLI、または AWS API を使用してタスクを実行することはできません。IAM 管理者は、ユーザーとロールに必要な、指定されたリソースで特定の API オペレーションを実行する権限をユーザーとロールに付与する IAM ポリシーを作成する必要があります。続いて、管理者はそれらのアクセス許可が必要なユーザーまたはグループにそのポリシーをアタッチします。

JSON ポリシードキュメントのこれらの例を使用して、IAM アイデンティティベースのポリシーを作成する方法については、「**IAM ユーザーガイド」の「[JSON タブでのポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor)」を参照してください。

**Topics**
+ [Amazon Rekognition カスタムラベル例](#security_iam_id-based-policy-examples-custom-labels)
+ [例 1: リソースへの読み取り専用アクセスをユーザーに許可する](#security_iam_id-based-policy-examples-read-only)
+ [例 2: リソースへのフルアクセスをユーザーに許可する](#security_iam_id-based-policy-examples-full-acess)
+ [自分の権限の表示をユーザーに許可する](#security_iam_id-based-policy-examples-view-own-permissions)

## Amazon Rekognition カスタムラベル例
<a name="security_iam_id-based-policy-examples-custom-labels"></a>

Amazon Rekognition Custom Labels のアイデンティティベースのポリシーを作成できます。詳細については、「[セキュリティ](https://docs.aws.amazon.com/rekognition/latest/customlabels-dg/sc-introduction.html)」を参照してください。

## 例 1: リソースへの読み取り専用アクセスをユーザーに許可する
<a name="security_iam_id-based-policy-examples-read-only"></a>

次の例では、Amazon Rekognition リソースへのフルアクセスを許可します。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "rekognition:CompareFaces",
                "rekognition:DetectFaces",
                "rekognition:DetectLabels",
                "rekognition:ListCollections",
                "rekognition:ListFaces",
                "rekognition:SearchFaces",
                "rekognition:SearchFacesByImage",
                "rekognition:DetectText", 
                "rekognition:GetCelebrityInfo",
                "rekognition:RecognizeCelebrities",
                "rekognition:DetectModerationLabels",  
                "rekognition:GetLabelDetection",
                "rekognition:GetFaceDetection",
                "rekognition:GetContentModeration",
                "rekognition:GetPersonTracking",
                "rekognition:GetCelebrityRecognition",
                "rekognition:GetFaceSearch",
                "rekognition:GetTextDetection",
                "rekognition:GetSegmentDetection",
                "rekognition:DescribeStreamProcessor",
                "rekognition:ListStreamProcessors",
                "rekognition:DescribeProjects",
                "rekognition:DescribeProjectVersions",
                "rekognition:DetectCustomLabels",
                "rekognition:DetectProtectiveEquipment",
                "rekognition:ListTagsForResource",
               "rekognition:ListDatasetEntries",
                "rekognition:ListDatasetLabels",
                "rekognition:DescribeDataset"

            ],
            "Resource": "*"
        }
    ]
}
```

------

## 例 2: リソースへのフルアクセスをユーザーに許可する
<a name="security_iam_id-based-policy-examples-full-acess"></a>

次の例では、Amazon Rekognition リソースへのフルアクセスを許可します。

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

****  

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

------

## 自分の権限の表示をユーザーに許可する
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を IAM ユーザーに許可するポリシーの作成方法を示します。このポリシーには、コンソールで、または AWS CLI または AWS API を使用してプログラムでこのアクションを実行するアクセス許可が含まれています。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

# Amazon Rekognition のリソースベースのポリシーの例
<a name="security_iam_resource-based-policy-examples"></a>

Amazon Rekognition Custom Labels は、*プロジェクトポリシー*と呼ばれるリソースベースポリシーを使用して、モデルバージョンのコピー権限を管理します。

プロジェクトポリシーは、ソースプロジェクトから目的のプロジェクトにモデルバージョンをコピーするアクセス許可を許可または拒否します。宛先プロジェクトが別の AWS アカウントにある場合、または AWS アカウント内のアクセスを制限する場合は、プロジェクトポリシーが必要です。たとえば、特定の IAM ロールへのコピーアクセス許可を拒否できます。詳細については、「[Copying a model](https://docs.aws.amazon.com/rekognition/latest/customlabels-dg/md-copy-model-overview.html)」を参照してください。

## モデルのバージョンをコピーする権限を付与する
<a name="security_iam_resource-based-policy-examples-account"></a>

次の例では、プリンシパル `arn:aws:iam::123456789012:role/Admin` がモデルバージョン `arn:aws:rekognition:us-east-1:123456789012:project/my_project/version/test_1/1627045542080` をコピーできます。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect":"Allow",
      "Principal":{
        "AWS":"arn:aws:iam::123456789012:role/Admin"
      },
      "Action":"rekognition:CopyProjectVersion",
      "Resource":"arn:aws:rekognition:us-east-1:123456789012:project/my_project/version/test_1/1627045542080"
    }
  ]
}
```

------

# Amazon Rekognition アイデンティティとアクセスのトラブルシューティング
<a name="security_iam_troubleshoot"></a>

以下の情報を使用して、Amazon Rekognition と IAM の使用時に発生する可能性がある一般的な問題の診断と修正に役立てます。

**Topics**
+ [Amazon Rekognition でアクションを実行する権限がない](#security_iam_troubleshoot-no-permissions)
+ [iam:PassRole を実行する権限がない](#security_iam_troubleshoot-passrole)
+ [管理者として Amazon Rekognition へのアクセスを他のユーザーに許可したい](#security_iam_troubleshoot-admin-delegate)
+ [AWS アカウント以外のユーザーに Amazon Rekognition リソースへのアクセスを許可したい](#security_iam_troubleshoot-cross-account-access)

## Amazon Rekognition でアクションを実行する権限がない
<a name="security_iam_troubleshoot-no-permissions"></a>

にアクションを実行する権限がないと AWS マネジメントコンソール 通知された場合は、管理者に連絡してサポートを依頼する必要があります。管理者とは、サインイン認証情報を提供した担当者です。

以下の例のエラーは、`mateojackson` IAM ユーザーがコンソールを使用して [*ウィジェット*] の詳細を表示する際に、`rekognition:GetWidget` 許可がない場合に発生します。

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: rekognition:GetWidget on resource: my-example-widget
```

この場合、Mateo は、`rekognition:GetWidget` アクションを使用して `my-example-widget` リソースへのアクセスが許可されるように、管理者にポリシーの更新を依頼します。

## iam:PassRole を実行する権限がない
<a name="security_iam_troubleshoot-passrole"></a>

`iam:PassRole` アクションを実行する権限がないというエラーが表示された場合は、ポリシーを更新して Amazon Rekognition にロールを渡せるようにする必要があります。

一部の AWS のサービス では、新しいサービスロールまたはサービスにリンクされたロールを作成する代わりに、既存のロールをそのサービスに渡すことができます。そのためには、サービスにロールを渡すアクセス許可が必要です。

以下の例のエラーは、`marymajor` という IAM ユーザーがコンソールを使用して Amazon Rekognition でアクションを実行しようする場合に発生します。ただし、このアクションをサービスが実行するには、サービスロールから付与されたアクセス許可が必要です。Mary には、ロールをサービスに渡すアクセス許可がありません。

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

この場合、Mary のポリシーを更新してメアリーに `iam:PassRole` アクションの実行を許可する必要があります。

サポートが必要な場合は、 AWS 管理者にお問い合わせください。サインイン資格情報を提供した担当者が管理者です。

## 管理者として Amazon Rekognition へのアクセスを他のユーザーに許可したい
<a name="security_iam_troubleshoot-admin-delegate"></a>

他のユーザーに Amazon Rekognition へのアクセスを許可するには、アクセスが必要なユーザーまたはアプリケーションにアクセス許可を付与する必要があります。 AWS IAM アイデンティティセンター を使用してユーザーとアプリケーションを管理する場合は、アクセスレベルを定義するアクセス許可セットをユーザーまたはグループに割り当てます。アクセス許可セットは、ユーザーまたはアプリケーションに関連付けられている IAM ロールに自動的に IAM ポリシーを作成して割り当てます。詳細については、「*AWS IAM アイデンティティセンター ユーザーガイド*」の「[アクセス許可セット](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)」を参照してください。

IAM アイデンティティセンターを使用していない場合は、アクセスを必要としているユーザーまたはアプリケーションの IAM エンティティ (ユーザーまたはロール) を作成する必要があります。次に、 Amazon Rekognition の適切な許可を付与するエンティティにポリシーをアタッチする必要があります。アクセス許可が付与されたら、ユーザーまたはアプリケーション開発者に認証情報を提供します。これらの認証情報を使用して AWSにアクセスします。IAM ユーザー、グループ、ポリシー、アクセス許可の作成の詳細については、「*IAM ユーザーガイド*」の「[IAM アイデンティティ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html)」と「[IAM のポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)」を参照してください。

## AWS アカウント以外のユーザーに Amazon Rekognition リソースへのアクセスを許可したい
<a name="security_iam_troubleshoot-cross-account-access"></a>

他のアカウントのユーザーや組織外の人が、リソースにアクセスするために使用できるロールを作成できます。ロールの引き受けを委託するユーザーを指定できます。リソースベースのポリシーまたはアクセスコントロールリスト (ACL) をサポートするサービスの場合、それらのポリシーを使用して、リソースへのアクセスを付与できます。

詳細については、以下を参照してください:
+ Amazon Rekognition がこれらの機能をサポートしているかどうかを確認するには、「[Amazon Rekognition が IAM と機能する仕組み](security_iam_service-with-iam.md)」を参照してください。
+ 所有 AWS アカウント している のリソースへのアクセスを提供する方法については、[「IAM ユーザーガイド」の「所有 AWS アカウント している別の の IAM ユーザーへのアクセスを提供する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html)」を参照してください。 **
+ リソースへのアクセスをサードパーティーに提供する方法については AWS アカウント、*IAM ユーザーガイド*の[「サードパーティー AWS アカウント が所有する へのアクセスを提供する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)」を参照してください。
+ ID フェデレーションを介してアクセスを提供する方法については、*IAM ユーザーガイド* の [外部で認証されたユーザー (ID フェデレーション) へのアクセスの許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) を参照してください。
+ クロスアカウントアクセスにおけるロールとリソースベースのポリシーの使用方法の違いについては、「*IAM ユーザーガイド*」の「[IAM でのクロスアカウントのリソースへのアクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)」を参照してください。