17 KiB
+++ title = "EntraIDをAWSのIdPとして利用して、シングルサインオンする" date = 2025-03-16T22:23:00+09:00 lastmod = 2025-03-16T22:23:00+09:00 description = "お仕事で部門のサーバー管理者・クラウド管理者になって気になったものを検証してみたシリーズだよ。EntraIDをAWSのIdPとして利用して、シングルサインオンするための手順をまとめたよ" tags = ["aws", "クラウド"] categories = ["インフラ"] author = "kazu634" images = ["ogp/2025-03-16-use-entraid-as-idp-for-aws.webp"] +++
お仕事で部門のサーバー管理者・クラウド管理者になって気になったものを検証してみたシリーズだよ。EntraIDをAWSのIdPとして利用して、シングルサインオンするための手順をまとめたよ
必要なもの
EntraID
(個人のアカウントでAzure
契約すると、自動的にEntraID
が作成されるから、それを利用するのがお手軽)AWS
SSO の設定手順
SSO
に必要となる手順をまとめていきます。
AWS
:SSO
のIdP
を指定し、設定ファイルを取得するEntraID
: Enterprise Applicationの登録EntraID
:SSO
(SAML連携) の設定EntraID
: 連携するClaim
の設定EntraID
: AWSにログインを許可するユーザー・グループの指定EntraID
: Federation設定用のファイルを取得するAWS
: Federation設定y設定用のファイルの読み込みAWS
: Automatic Provisioningの有効化EntraID
: Provisioningの設定EntraID
: Provisioningの実施AWS
: Permission sets作成AWS
: プロビジョニングされたユーザー・グループへの権限割り当て- 動作確認
AWS: SSOのIdPを指定し、設定ファイルを取得する
AWS側にログインし、IAM Identity Center
を開きます。[Settings]
をクリックします。下部の[Identity source]
をクリックし、右側の[Actions]
から、[Change identity source]
をクリックします。
IdP
の種類として、External identity provider
を選択し、[Next]
ボタンをクリックします。
AWS
側のIdP
の設定をまとめたファイルをダウンロードします。図の[Download metadata file]
をクリックし、ダウンロードします:
EntraID: Enterprise Applicationの登録
EntraID
にログインして、左側のペインから[Enterprise applications]
をクリックします:
表示される画面で[New application]
をクリックします。
検索用のテキストボックスに「aws iam」と入力し、表示された「AWS IAM Identity Center (successor to AWS Single Sign-On」をクリックします:
次の画面が表示されます。[Create]
ボタンをクリックします:
EntraID: SSO (SAML連携) の設定
SAML連携の設定を行います。作成したAWS IAM Identity Center
をクリックし、左側のペインから[Single sign-on]
をクリック、右側に表示されるSAML
をクリックします:
表示される画面でUpload metadata file
をクリックします:
AWS
からダウンロードした設定ファイルをアップロードします:
EntraID: 連携するClaimの設定
以下のClaim
を追加します:
# | Type | Claim | Value |
---|---|---|---|
1 | - | Role | user.assignedroles |
2 | Group | Security Group | Group ID |
Attributes & Claims
から、Add new claim
をクリックします:
Security groups
を選択し、Group ID
を選択します。その後、Save
ボタンをクリックします:
EntraID: AWSにログインを許可するユーザー・グループの指定
左側のペインのUsers and groups
から、AWSにログインを許可させたいユーザー・グループを指定します:
EntraID: Federation設定用のファイルを取得する
AWS: Federation設定用のファイルの読み込み
EntraID
からダウンロードしたファイルを読み込ませます。先ほどメタデータをダウンロードしたページ下部のIdP SAML metadata
のセクションにあるChoose file
をクリックし、EntraID
から取得したファイルをアップロードします:
ファイルを選択すると、次のようになります。Next
ボタンをクリックします:
次の画面が表示されます。Change Identity source
をクリックします:
AWS: Automatic Provisioningの有効化
この段階では、AWS
側にアカウントが存在しないため、ログインできません。EntraID
側で指定されたユーザー・グループを自動的にAWS
側のアカウントとして追加するための設定を実施します。
以下の画面が表示されていると思いますので、Automatic Provisioning
でEnable
ボタンをクリックします:
EntraID
側で指定してあげる必要があるSCIM endpoint
とAccess token
が表示されます。メモしておきましょう:
EntraID: Provisioningの設定
EntraID側で必要となるアカウントプロビジョニングの設定を説明します。AWS IAM Identity Center
で表示される、Provision User Accounts
をクリックします:
Provisioning Mode
をAutomatic
に指定します。
EntraID: Provisioningの実施
AWS IAM Identity Center
のProvisioning
をクリックします:
しばらく経つと、以下のように表示され、プロビジョニングが完了したことがわかります:
AWS
側のユーザーを見ると、プロビジョニングされていることがわかります:
AWS: Permission sets作成
AWS
にプロビジョニングされたユーザーに対して、権限 (= Permission sets
)を付与します。まずはPermission sets
を作成していきます。今回はAdministrator Access
用のPermission sets
を作成していきます:
AWS: プロビジョニングされたユーザー・グループへの権限割り当て
IAM Identity Center
- AWSOrganizations: AWS accounts
をクリックします。紐付けたいAWS
アカウントを選択し、Assign users or groups
ボタンをクリックします:
紐付けるユーザーやグループを指定し、Next
ボタンをクリックします:
紐づけるPermission set
を指定し、Next
ボタンをクリックします:
確認の画面が表示されます。Create
ボタンをクリックします:
動作確認
EntraID
に表示されるUser access URL
をコピーし、ブラウザで接続してみます:
アカウント選択の画面が表示され、SSO
が機能しているように見えます: