AWS-AttachIAMToInstance - AWS Systems Manager オートメーションランブックリファレンス

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

AWS-AttachIAMToInstance

説明

AWS Identity and Access Management (IAM) ロールをマネージドインスタンスにアタッチします。

このオートメーションを実行する (コンソール)

ドキュメントタイプ

Automation

所有者

Amazon

[Platforms] (プラットフォーム)

Linux、macOS、Windows

パラメータ

  • AutomationAssumeRole

    型: 文字列

    説明: (オプション) Systems Manager Automation がユーザーに代わってアクションを実行できるようにする AWS Identity and Access Management (IAM) ロールの Amazon リソースネーム (ARN)。ロールを指定しない場合、Systems Manager Automation はこのランブックを開始するユーザーのアクセス許可を使用します。

  • ForceReplace

    型: ブール値

    説明: (オプション) 既存の IAM プロファイルを置き換えるかどうかを指定するためのフラグ。

    デフォルト: true

  • InstanceId

    型: 文字列

    説明: (必須) IAM ロールを割り当てるインスタンスの ID。

  • RoleName

    型: 文字列

    説明: (必須) マネージドインスタンスに追加する IAM ロール名。

ドキュメントステップ

  1. aws:executeAwsApi - DescribeInstanceProfile - EC2 インスタンスにアタッチされている IAM インスタンスプロファイルを検索します。

  2. aws:branch - CheckInstanceProfileAssociations - EC2 インスタンスにアタッチされている IAM インスタンスプロファイルを確認します。

    1. IAM インスタンスプロファイルがアタッチされており、ForceReplacetrue に設定されている場合:

      1. aws:executeAwsApi - DisassociateIamInstanceProfile IAM インスタンスプロファイルと EC2 インスタンスの関連付けを解除します。

    2. aws:executeAwsApi - ListInstanceProfilesForRole - 提供された IAM ロールのインスタンスプロファイルを一覧表示します。

    3. aws:branch - CheckInstanceProfileCreated - 指定された IAM ロールにインスタンスプロファイルが関連付けられているかどうかを確認します。

      1. IAM ロールにインスタンスプロファイルが関連付けられている場合:

        1. aws:executeAwsApi - AttachIAMProfileToInstance - IAM インスタンスプロファイルロールを EC2 インスタンスにアタッチします。

      1. IAM ロールにインスタンスプロファイルが関連付けられていない場合:

        1. aws:executeAwsApi - 指定された CreateInstanceProfileForRole IAM ロールのインスタンスプロファイルロールを作成します。

        2. aws:executeAwsApi - 指定された AddRoleToInstanceProfile IAM ロールにインスタンスプロファイルロールをアタッチします。

        3. aws:executeAwsApi - GetInstanceProfile 指定された IAM ロールのインスタンスプロファイルデータを取得します。

        4. aws:executeAwsApi - AttachIAMProfileToInstanceWithRetry - IAM インスタンスプロファイルロールを EC2 インスタンスにアタッチします。

[Outputs] (出力)

AttachIAMProfileToInstanceWithRetryします。AssociationId

GetInstanceProfile.InstanceProfileName

GetInstanceProfile.InstanceProfileArn

AttachIAMProfileToInstanceします。AssociationId

ListInstanceProfilesForRole.InstanceProfileName

ListInstanceProfilesForRole.InstanceProfileArn