AWS IAM 連携

AWS IAM のユーザー・ロール・ポリシーを自動取得して、アクセスレビューの対象リストを生成します。AWS IAM と連携するには、アプリからアクセスできる IAM Role を作成し、その Role ARN をシステムに入力する必要があります。以下の手順で設定を行ってください。

事前に必要な情報

Integrationページで表示される以下 2 つの情報をご用意ください。

情報説明
AWS Account IDAssumeRole を呼び出すアプリ側のアカウント ID
External IDIntegrations ページに表示されているワークスペース固有の文字列

IAM Role 作成手順

  1. 1

    IAM コンソールを開く

    AWS マネジメントコンソール → IAM を開き、左メニューの「ロール(Roles)」→「ロールを作成(Create role)」をクリックします。

  2. 2

    信頼されたエンティティの種類を選択

    1. 信頼されたエンティティタイプ: AWS アカウント(AWS Account) を選択
    2. AWSアカウント: 別の AWS アカウント(Another AWS account) を選択
    3. アカウント ID: アプリの AWS Account ID を入力
    4. オプション:外部 ID を要求する(Require external ID) にチェックを入れる
    5. 外部 ID(External ID): Integrations ページに表示されている External ID を貼り付ける
    ⚠️ 重要: External ID を省略すると Confused Deputy 攻撃のリスクがあります。必ず設定してください。

    設定が完了したら「次へ」をクリックします。

  3. 3

    許可ポリシーをアタッチ

    検索ボックスに IAMReadOnlyAccess と入力し、チェックを入れて「次へ」をクリックします。

    IAMReadOnlyAccess には iam:GetAccountAuthorizationDetails が含まれており、ユーザー・ポリシー情報の取得に必要な最小限の権限です。

  4. 4

    ロール名を設定して作成

    1. ロール名(Role name): AccessReviewRole(任意)
    2. 内容を確認し「ロールを作成(Create role)」をクリック
  5. 5

    Role ARN をコピー

    1. 作成したロールをクリック
    2. ページ上部の ARN をコピー

    形式: arn:aws:iam::123456789012:role/AccessReviewRole

  6. 6

    アプリに ARN を入力

    Integrations ページの AWS IAM →「接続」をクリックし、コピーした Role ARN を入力して接続完了です。

Trust Policy の JSON(参考)

AWS コンソールの「信頼関係(Trust relationships)」タブで確認できる JSON は以下の形式になります。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::{AWS Account ID}:root"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "sts:ExternalId": "{External ID}"
        }
      }
    }
  ]
}

よくある質問

Q: Role ARN を入力した後、定期的に更新が必要ですか?

A: 不要です。Role ARN は永続的な識別子です。アプリが同期・レビュー作成のたびに自動で一時認証情報を取得するため、顧客の追加操作は不要です。

Q: 接続解除したい場合は?

A: アプリ側で「解除」ボタンを押すだけです。AWS 側の IAM Role は残り続けるため、不要になった場合は AWS コンソールから手動で削除してください。

ご不明な点は サポートページ またはメール(support@shitameru.com)までお問い合わせください。