Amazon Elastic Container Service のアイデンティティとアクセスのトラブルシューティング
次の情報は、Amazon ECS と IAM の使用に伴って発生する可能性がある一般的な問題の診断や修復に役立ちます。
トピック
Amazon ECS でアクションを実行する権限がない
AWS Management Console から、アクションを実行する権限がないと通知された場合、管理者に問い合わせ、サポートを依頼する必要があります。管理者は、ユーザー名とパスワードの提供者です。
次のエラー例は、mateojackson
IAM ユーザーがコンソールを使用して架空の
リソースに関する詳細情報を表示しようとしているが、架空の my-example-widget
ecs:
許可がないという場合に発生します。GetWidget
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: ecs:
GetWidget
on resource:my-example-widget
この場合、Mateo は、ecs:
アクションを使用して GetWidget
リソースにアクセスできるように、ポリシーの更新を管理者に依頼します。my-example-widget
iam:PassRole を実行する権限がありません
iam:PassRole
アクションを実行する権限がないというエラーが表示された場合、管理者に問い合わせ、サポートを依頼する必要があります。管理者は、ユーザー名とパスワードの提供者です。Amazon ECS にロールを渡すことができるようにポリシーを更新するよう、管理者に依頼します。
一部の AWS のサービス では、新しいサービスロールまたはサービスにリンクされたロールを作成せずに、既存のロールをサービスに渡すことができます。そのためには、サービスにロールを渡す許可が必要です。
以下の例のエラーは、marymajor
という IAM ユーザーがコンソールを使用して Amazon ECS でアクションを実行しようする場合に発生します。ただし、アクションでは、サービスロールによって付与された許可がサービスにある必要があります。Mary には、ロールをサービスに渡すための許可がありません。
User: arn:aws:iam::123456789012:user/
marymajor
is not authorized to perform: iam:PassRole
この場合、Mary は担当の管理者に iam:PassRole
アクションを実行できるようにポリシーの更新を依頼します。
アクセスキーを表示したい
IAM ユーザーアクセスキーを作成すると、いつでもアクセスキー ID を表示できます。ただし、シークレットアクセスキーをもう一度表示することはできません。シークレットアクセスキーを紛失した場合は、新しいキーペアを作成する必要があります。
アクセスキーは、アクセスキー ID (AKIAIOSFODNN7EXAMPLE
など) とシークレットアクセスキー (wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
など) の 2 つの部分から構成されます。ユーザー名とパスワードと同様に、リクエストを認証するために、アクセスキー ID とシークレットアクセスキーの両方を使用する必要があります。ユーザー名とパスワードと同様に、アクセスキーを安全に管理してください。
[find your canonical user ID] (正規ユーザー ID を確認) するためであっても、アクセスキーをサードパーティーに提供しないでください。これを提供すると、第三者に、あなたのアカウントへの永続的なアクセスを与えることになります。
アクセスキーペアを作成する場合、アクセスキー ID とシークレットアクセスキーを安全な場所に保存するように求めるプロンプトが表示されます。このシークレットアクセスキーは、作成時にのみ使用できます。シークレットアクセスキーを紛失した場合、新しいアクセスキーを IAM ユーザーに追加する必要があります。最大 2 つのアクセスキーを持つことができます。既に 2 つある場合は、新しいキーペアを作成する前に、いずれかを削除する必要があります。手順を表示するには、「IAM User Guide」(IAM ユーザーガイド) の「Managing access keys」(アクセスキーの管理) をご参照ください。
管理者として Amazon ECS へのアクセスを他のユーザーに許可したい
Amazon ECS へのアクセスを他のユーザーに許可するには、アクセスを必要とする人またはアプリケーション用に IAM エンティティ (ユーザーまたはロール) を作成する必要があります。ユーザーは、このエンティティの認証情報を使用して AWS にアクセスします。次に、Amazon ECS の適切なアクセス許可を付与するポリシーを、そのエンティティにアタッチする必要があります。
すぐに開始するには、「IAM User Guide」(IAM ユーザーガイド) の「Creating your first IAM delegated user and group」(IAM が委任した最初のユーザーおよびグループの作成) をご参照ください。
自分の AWS アカウント 以外のユーザーに Amazon ECS リソースへのアクセスを許可したい
他のアカウントのユーザーや組織外のユーザーが、リソースへのアクセスに使用できるロールを作成できます。ロールを引き受けるように信頼できるユーザーを指定することができます。リソースベースのポリシーまたはアクセスコントロールリスト (ACL) をサポートするサービスの場合、それらのポリシーを使用して、リソースへのアクセスを付与できます。
詳細については、以下を参照してください:
-
Amazon ECS がこれらの機能をサポートしているかどうかについては、「IAM を使用するAmazon Elastic Container Service」を参照してください。
-
所有している AWS アカウント 全体のリソースへのアクセス権を提供する方法については、IAM ユーザーガイドの「所有している別の AWS アカウント アカウントへのアクセス権を IAM ユーザーに提供」を参照してください。
-
サードパーティーの AWS アカウント にリソースへのアクセス権を提供する方法については、IAM ユーザーガイドの「第三者が所有する AWS アカウント アカウントへのアクセス権を付与する」を参照してください。
-
ID フェデレーションを介してアクセスを提供する方法については、「IAM ユーザーガイド」の「Providing access to externally authenticated users (identity federation)」(外部で認証されたユーザー (ID フェデレーション) へのアクセスの許可) をご参照ください。
-
クロスアカウントアクセスでのロールとリソースベースのポリシーの使用の違いの詳細については、「IAM User Guide」(IAM ユーザーガイド) の「How IAM roles differ from resource-based policies」(IAM ロールとリソースベースのポリシーとの相違点) をご参照ください。