0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

IAMロールへのスイッチロールをタグで許可する方法

Posted at

これは何?

IAMロールに対してスイッチロールする際にIMAユーザーのタグの有無で切り替え許可を与えられるかを検証したため、その結果をまとめたものです。

対応方法

  1. IAMユーザーに対し任意のタグを設定する
    image.png
    ※例としてキーに「CodeApproval」、値に「true」を設定

  2. IAMロールに対し、以下信頼関係(信頼されたエンティティ)を設定する
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::<AWSアカウントID>:root"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalTag/CodeApproval": "true"
                }
            }
        }
    ]
}

※aws:PrincipalTagの部分に対し、1にて設定したタグを設定する

3. 実際にスイッチロールを行い、結果を確認する

指定したタグが付与されている場合(成功)

→「現在アクティブです」の部分に対象のIAMロール名が表示されていればOK
image.png

指定したタグが付与されていない場合(失敗)

→「Invalid information in one or more fields」というエラーメッセージが表示される
image.png

最後に

IAMユーザーに対しタグを設定することで、特定のIAMロールに対してのスイッチロールの許可を与えるかどうかを制御できることが確認できました。

使用例として、IAMロールで許可する類のリソース(CodeCommitの承認ルールとか)を制御する際に、タグを使うことで柔軟に設定できるので、有効活用してもらえると幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?