【AWS】クロスアカウントアクセスの設定方法

当ページのリンクには広告が含まれている可能性があります。

クロスアカウントアクセスの設定方法を解説します。

アカウントID:4090-〇〇〇-6674に、アカウントID:8913-〇〇〇-0673のcompany_username2からアクセスできるようにしていきます。

これ以降、アカウントID:4090-〇〇〇-6674をアカウント(1)、アカウントID:8913-〇〇〇-0673をアカウント(2)と呼びます。

アカウント(1)でIAMロールを作成し、アカウント(2)に割り当てる

アカウント(1)に移動します。

IAMロールに移動し、「ロールを作成」をクリックします。


信頼されたエンティティタイプに「AWSアカウント」を選択します。

「別のAWSアカウント」を選択し、アカウントIDを入力します。


アカウント(2)に許可するポリシーを選択します。


「ロールを作成」をクリックします。


ロールが作成されました。信頼されたエンティティにはアカウント(2)が表示されています。


ロール名をクリックします。


ARNとアカウントIDはこの後使うのでメモしておきましょう。

アカウント(1)にアクセスするためのIAMポリシーを作成する

アカウント(2)に移動します。


IAMポリシーに移動し、「ポリシーの作成」をクリックします。


JSONを選択し、以下を入力します。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "アカウント(1)で作成したIAMロールのARN"
        }
    ]
}


「ポリシーの作成」をクリックします。


アカウント(1)にアクセスするためのIAMポリシーが作成されました。

アカウント(1)にアクセスするためのIAMポリシーをIAMユーザーに割り当てる

アカウント(1)にアクセスするIAMユーザーをクリックします。


「許可を追加」をクリックします。


先ほど作成したアカウント(1)にアクセスするためのIAMポリシーを選択します。


「許可を追加」をクリックします。


アカウント(1)にアクセスするためのIAMポリシーをIAMユーザーに割り当てました。


アカウント(1)に、アカウント(2)のIAMユーザーからアクセスしてみる

「ロールの切り替え」をクリックします。


アカウントにアカウント(1)のIDを、ロールにアカウント(1)で作成し、アカウント(2)に割り当てるたIAMロールを入力します。

「ロールの切り替え」をクリックします。


アカウント(1)に、アカウント(2)のIAMユーザーからアクセスできました。


アクセス許可の範囲について確認する

今回、「アカウント(1)でIAMロールを作成し、アカウント(2)に割り当てる」で作成したIAMロールの許可ポリシーはS3へのアクセスのみ許可していました。

そのためEC2やIAMにはアクセスできませんが、


S3はアクセスできます。


またS3へのアクセスを許可する許可ポリシーを削除すると


S3にアクセスできなくなります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!