コンテンツにスキップ

AWS IAM Identity Center と接続する

Actagate は、承認済みの申請に固定された AWS アカウント ID と permission set を AWS IAM Identity Center に渡し、アカウント割り当て (account assignment) を作成します。 申請者は Slack と同期されたメールアドレスで Identity Center のユーザーに解決されます。 期限付きの申請は、期限が来ると同じ割り当てを自動で削除します。

接続しない場合も申請と承認は使えます。その場合、付与と回収は担当グループへの手順書タスクになります。

Bot と Web の実行環境に次の 3 つを設定します。いずれかが未設定なら AWS 連携は無効になり、手順書タスクにフォールバックします。

AWS_REGION=ap-northeast-1
ACTAGATE_AWS_SSO_INSTANCE_ARN=arn:aws:sso:::instance/ssoins-0123456789abcdef
ACTAGATE_AWS_IDENTITY_STORE_ID=d-0123456789

値は次のコマンドで確認できます。

aws sso-admin list-instances --region ap-northeast-1

AWS SDK の標準の認証方法 (実行環境の IAM ロール、AWS プロファイル、または標準の環境変数) を使います。 固定のアクセスキーを Actagate の設定ファイルやデータベースに保存する必要はありません。

付与・完了確認・回収に必要な操作だけを許可します。<INSTANCE_ID> などは実際の値に置き換え、 対象が複数ある場合は Resource に ARN を追加してください。ListInstances だけはリソース単位の制限ができないため * にします。

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ActagateIdentityCenterAssignments",
"Effect": "Allow",
"Action": ["sso:CreateAccountAssignment", "sso:DeleteAccountAssignment"],
"Resource": [
"arn:aws:sso:::instance/<INSTANCE_ID>",
"arn:aws:sso:::permissionSet/<INSTANCE_ID>/<PERMISSION_SET_ID>",
"arn:aws:sso:::account/<TARGET_ACCOUNT_ID>"
]
},
{
"Sid": "ActagateIdentityCenterStatus",
"Effect": "Allow",
"Action": [
"sso:DescribeAccountAssignmentCreationStatus",
"sso:DescribeAccountAssignmentDeletionStatus"
],
"Resource": "arn:aws:sso:::instance/<INSTANCE_ID>"
},
{
"Sid": "ActagateIdentityCenterPermissionSetRead",
"Effect": "Allow",
"Action": "sso:DescribePermissionSet",
"Resource": [
"arn:aws:sso:::instance/<INSTANCE_ID>",
"arn:aws:sso:::permissionSet/<INSTANCE_ID>/<PERMISSION_SET_ID>"
]
},
{
"Sid": "ActagateIdentityCenterDiscovery",
"Effect": "Allow",
"Action": "sso:ListInstances",
"Resource": "*"
},
{
"Sid": "ActagateIdentityStoreUserResolution",
"Effect": "Allow",
"Action": ["identitystore:GetUserId", "identitystore:ListUsers"],
"Resource": [
"arn:aws:identitystore::<IDENTITY_CENTER_ACCOUNT_ID>:identitystore/<IDENTITY_STORE_ID>",
"arn:aws:identitystore:::user/*"
]
}
]
}

初期設定が済んだ後の実行用ロールからは sso:ListInstances と identitystore:ListUsers を外せます。

aws-access カタログの「AWS アカウント」と「Permission set」の選択肢を、貴社の実際の値に置き換えてください (管理画面のカタログ編集から変更できます)。申請者のメールアドレスが Identity Center のユーザーと一致している必要があります。

  1. aws-access から短い期限で申請し、承認を通します
  2. AWS 管理コンソールで割り当てが作成され、Actagate の台帳に期限付きの発行物が 1 件記録されていることを確認します。すでに同じ割り当てがある場合も申請は成功し、記録に「既存」と残ります
  3. 期限が来ると割り当てが削除され、台帳の発行物が回収済みになります。すでに削除されていた場合も成功として記録されます

6. 記録されるもの・されないもの

Section titled “6. 記録されるもの・されないもの”
  • 台帳には割り当ての正確な識別子 (アカウント ID、permission set ARN、ユーザー ID) を記録し、回収時はこの識別子だけを使います
  • ユーザーが見つからない場合や API エラーの場合は、固定の理由コードだけを記録し、メールアドレスやエラー本文は記録しません