

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

# AWS CodePipeline ID とアクセスのトラブルシューティング
<a name="security_iam_troubleshoot"></a>

次の情報は、CodePipeline と IAM の使用に伴って発生する可能性がある一般的な問題の診断や修復に役立ちます。

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

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

にアクションを実行する権限がないと AWS マネジメントコンソール 通知された場合は、管理者に連絡してサポートを依頼する必要があります。お客様のユーザー名とパスワードを発行したのが、担当の管理者です。

以下の例のエラーは、`mateojackson` IAM ユーザーがコンソールを使用してパイプラインの詳細を表示しようとしているが、 `codepipeline:GetPipeline` の許可がない場合に発生します。

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: codepipeline:GetPipeline on resource: my-pipeline
```

この場合、Mateo は、`codepipeline:GetPipeline` アクションを使用して `my-pipeline` リソースにアクセスできるように、管理者にポリシーの更新を依頼します。

## iam:PassRole を実行する権限がありません
<a name="security_iam_troubleshoot-passrole"></a>

`iam:PassRole` アクションを実行する権限がありませんというエラーが表示された場合、管理者に問い合わせ、サポートを依頼する必要があります。お客様のユーザー名とパスワードを発行したのが、担当の管理者です。CodePipeline にロールを渡すことができるようにポリシーを更新するよう、管理者に依頼します。

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

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

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

この場合、Mary は `iam:PassRole` アクションの実行が許可されるように、担当の管理者にポリシーの更新を依頼します。

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

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

IAM アイデンティティセンターを使用していない場合は、アクセスを必要とするユーザーまたはアプリケーションの IAM エンティティ (ユーザーまたはロール) を作成する必要があります。次に、CodePipeline の適切なアクセス許可を付与するポリシーを、そのエンティティにアタッチする必要があります。アクセス許可が付与されたら、ユーザーまたはアプリケーション開発者に認証情報を提供します。これらの認証情報を使用して 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 アカウント以外のユーザーに CodePipeline リソースへのアクセスを許可したい
<a name="security_iam_troubleshoot-cross-account-access"></a>

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

詳細については、以下を参照してください:
+ CodePipeline の今後の対応予定機能の詳細は、[が IAM と AWS CodePipeline 連携する方法](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) を参照してください。