ロールマネージャーを使用してロールを自動的に作成する
多くの AWS サービスは、IAM ロールを使用してユーザーに代わってアクションを実行します。IAM ロールマネージャーは、このようなロールを自動的にプロビジョニングするためのオプションのアカウント設定であるため、自分で設定する必要はありません。ロールマネージャーは、追加の手動 IAM 設定なしで AWS サービスの構築を開始できるように設計されています。
ロールマネージャーは、このページの AWS ロールマネージャーをサポートするサービスコンソール に記載されている一部の AWS サービスコンソールで使用できます。
ロールマネージャーの仕組み
ロールマネージャーを有効にすると、関連するコンソールワークフローの一部として、サービスとリソースに適したロールが提供されます。サポートされているサービスコンソールには、ロールマネージャーが現在使用可能かどうかが表示されます。ロールマネージャーが提供するロールを受け入れるのに、追加のアクションは必要ありません。たとえば、コンソールで AWS Lambda 関数を作成すると、Lambda はロールマネージャーを使用してデフォルトでその関数向け実行ロールを作成します。別のロールを使用するには、既存のロールを選択するか、新しいロールを手動で作成します。
ロールマネージャーは、ロールテンプレート、ロールの信頼ポリシーの定義、サービスおよびユースケースのアクセス許可を適用することで機能します。各サービスが使用するテンプレートの詳細については、「ロールテンプレートの概要」を参照してください。定義されたタスクのテンプレートは、タスクに必要なアクションのみを付与します。独自のコードの実行など、オープンエンド型の作業用のテンプレートは、各サービスへの個別のアクセス許可を必要とせずに構築作業を進められるよう、AWS API への広範なアクセスを許可します。
ロールマネージャーによって作成された IAM ロールは、ユーザーが作成した他のロールと同じように動作します。それらのロールは、表示、編集、または削除が可能です。各ロールには、元となったロールテンプレートも記録されるため、ロールマネージャーにより元々作成されたロールを特定できます。AWSCloudTrail は、ロールマネージャーがロールを作成するとログに記録するため、各ロールがいつどのように作成されたかを監査できます。ロールマネージャーによるロールの作成は、AcquireRole イベントとして CloudTrail に表示されます。
前提条件
ロールマネージャーを有効にするには、iam:PutAccountProperties および iam:CreateServiceLinkedRole アクセス許可が必要です。ロールマネージャーを無効にするには、iam:PutAccountProperties アクセス許可が必要です。現在の設定を表示するには、iam:GetAccountProperties アクセス許可が必要です。AWS 管理ポリシー IAMFullAccess には、これらのアクセス許可がすべて含まれています。ロールマネージャーが必要とするすべてのアクセス許可については、「ロールマネージャーへのアクセスを管理する」を参照してください。
ロールマネージャーを有効または無効にする方法
AWS マネジメントコンソール、AWS CLI、または AWS API を使用して、ロールマネージャーを有効または無効にできます。ロールマネージャーは、アカウントレベルのプロパティ RoleManager/Enabled によって制御されます。このプロパティは PutAccountProperties API を使用して設定します。値を true にするとロールマネージャーが有効になり、false にすると無効になります。
注記
ほとんどの AWS アカウントでは、ロールマネージャーはデフォルトで無効になっています。ただし、新しい AWS エクスペリエンスを使用してアカウントを作成すると、ロールマネージャーはデフォルトで有効になり、高度な機能を有効にするまでは無効にすることはできません。詳細については、「Activate advanced AWS features」を参照してください。
ロールマネージャーを有効または無効にする方法 (コンソール)
ロールマネージャーは、IAM コンソールの [アカウント設定] ページで有効または無効にできます。このページには、お使いのアカウントでロールマネージャーが有効になっているかどうかも表示されます。
-
AWS マネジメントコンソール にサインインし、IAM コンソール を開きます。
-
ナビゲーションペインで [アカウント設定] を選択します。
-
[ロールマネージャー] セクションで、[有効にする] または [無効にする] を選択します。
ロールマネージャーを無効にしても、ロールマネージャーによって作成されたロールは削除されません。
ロールマネージャーを有効または無効にする方法 (AWS CLI)
RoleManager/Enabled プロパティを true に設定するとロールマネージャーが有効になり、false に設定すると無効になります。
-
ロールマネージャーを有効にするには、
put-account-propertiesを実行します。aws iam put-account-properties --properties RoleManager/Enabled=true -
ロールマネージャーを無効にするには、
put-account-propertiesを実行します。aws iam put-account-properties --properties RoleManager/Enabled=false -
アカウントでロールマネージャーが有効になっているかどうかを確認するには、
get-account-propertiesを実行します。aws iam get-account-properties
ロールマネージャーを有効または無効にする方法 (AWS API)
-
ロールマネージャーを有効にするには
RoleManager/Enabledプロパティをtrueに、無効にするにはfalseに設定して、PutAccountProperties を呼び出します。 -
現在の設定を表示するには、GetAccountProperties を呼び出します。
詳細については、IAM API リファレンスの PutAccountProperties と GetAccountProperties を参照してください。
AWS ロールマネージャーをサポートするサービスコンソール
ロールマネージャーは、次の AWS サービスコンソールのロール作成をサポートします。
AWS バックアップ
AWS CloudFormation
Amazon CloudWatch
AWS Elastic Beanstalk
Amazon EventBridge
AWS Lambda
Amazon SageMaker Unified Studio
AWS 秘密マネジャー
AWS Step Functions
AWS は、時間の経過とともにサービスサポートを追加し続けます。各サービスが使用するロールテンプレートの詳細については、「ロールテンプレートの概要」を参照してください。