このページの本文へ

FIXER Tech Blog - Cloud

FIXER cloud.config Tech Blog

IAM Identity CenterとAzure ADを統合し、AWSアカウントへSSOする方法

2023年06月01日 10時00分更新

文● 村上 滉樹/FIXER

  • この記事をはてなブックマークに追加
  • 本文印刷

 本記事はFIXERが提供する「cloud.config Tech Blog」に掲載された「【AWS】IAM Identity Center × Azure AD を統合してAWSアカウントへのシングルサインオンを試してみた」を再編集したものです。

前提条件

◆ AWS側の条件

[IAM Identity Center]サービスを利用できること
・[AWS Organizations]サービスを利用していること(オプション)
・IAM権限:Administrator Access

※ 本記事では「東京リージョン」にて「IAM Identity Center」を利用しています。

◆ Azure側の条件

Azure AD のライセンス:Azure AD Premium P1 または P2
・Azure AD 権限:アプリケーション管理者 or グローバル管理者

※ 本記事では「Azure AD 無料プラン」はAzure AD グループが作成できない(=グループ管理ができない)理由により、非推奨とします。

導入方法

1. IAM Identity Center と Azure AD  を構成する

1-1. Azure ADで外部IDプロバイダーを作成する

【Azure ポータルにサインイン】

1. [Azure Active Directory]>[エンタープライズ アプリケーション]>[すべてのアプリケーション]に移動します。

2.[+新しいアプリケーション]を選択します。

3. 検索ボックスに「AWS IAM Identity Center」と入力します。

4. 検索結果から [AWS IAM Identity Center] を選択します。

5. 適当な名前を入力します。 ※本記事では「AWS IAM Identity Center」と名付けます。

6. 「作成」を押下します。

 これで外部IDプロバイダーの作成は完了です。

 1-2. SAML認証 を設定する

【AWS Management Consoleにサインイン】

1. [IAM Identity Center]>[設定]に移動します。
2. [アイデンティティソース]の右上にある[アクション]>[アイデンティティソースを変更]を選択します。

3. 【ステップ1】 アイデンティティソースを選択
 ・[外部IDプロバイダー] を選択します。
 ・「次へ」を押下します。

4. 【ステップ2】 外部アイデンティティプロバイダーを設定
 ・[サービスプロバイダーのメタデータ]から[メタデータファイルをダウンロード]を押下して、IAM Identity Centerのメタデータ情報をダウンロードします。

 このまま、画面を保持してください。後で【ステップ2】の続きを行います。

【Azure ポータルにサインイン】

1. [Azure Active Directory]>[エンタープライズ アプリケーション]に移動します。

2. [すべてのアプリケーション]>「作成したアプリケーション(AWS IAM Identity Center)」>[シングル サインオン]に移動して、[SAML]を選択します。

3. [メタデータファイルをアップロードする]を選択して、先ほどダウンロードした「IAM Identity Centerのメタデータファイル」をアップロードします。

4. 「追加」を押下します。

5. [基本的な SAML 構成]の確認画面が表示されるため、そのまま[保存]を押下します。

6. 保存後、[AWS IAM Identity Center でシングルサインオンをTest]とポップアップが表示されますが、[いいえ、後でtestします]を選択してください。

7. [SAML 証明書]の[フェデレーション メタデータ XML]をダウンロードします。

【AWS Management Consoleにサインイン(〜【ステップ2】の続き 〜)】

1. 【ステップ2】 外部アイデンティティプロバイダーを設定
 ・[アイデンティティプロバイダーのメタデータ]に先ほどダウンロードした「フェデレーションメタデータ XMLファイル」をアップロードします。
 ・「次へ」を押下します。

2. 【ステップ3】 変更を確定
 ・[確認および確定]にて「承諾」と入力します。
 ・[アイデンティティソースを変更]を選択します。

3. [IAM Identity Center]>[設定]に移動します。

4. [アイデンティティソース]の[認証方法]が「SAML 2.0」に変更されていることを確認します。

 これでSAML認証の設定は完了です。

2. AWSアカウントに資格情報を設定する

2-1. IAM Identity Centerにユーザーを自動登録する

【AWS Management Consoleにサインイン】

1. [IAM Identity Center]>[設定]に移動します。

2. [自動プロビジョニング]の[有効にする]を押下します。

3. 押下後、[インバウンド自動プロビジョニング]のポップ画面が表示されます。

4. [SCIMエンドポイント]と[アクセストークン]をコピーします。

【Azure ポータルにサインイン】

1. [Azure Active Directory]>[グループ]に移動します。

2. [新しいグループ]を選択します。

3. [新しいグループ]には以下の設定を行いました。
 ・ [グループの種類]:「セキュリティ」
 ・ [グループ名]:<任意>(本記事では 「AWS SSO Members」と名付けます)
 ・ [グループの説明(オプション)]:<任意>
 ・ [メンバーシップの種類]:「割り当て済み」

4. [メンバー]にSSOさせたいユーザーを追加します。

5. 「作成」を押下します。

6. [Azure Active Directory]>[エンタープライズ アプリケーション]に移動します。

7. [すべてのアプリケーション]>「作成したアプリケーション(AWS IAM Identity Center)」>[ユーザーとグループ]に移動します。

8. [+ユーザーまたはグループの追加]を選択します。

9. [割り当ての追加]で先ほど作成したグループ(AWS SSO Members)を追加します。

10. [割り当て]を押下します。

11. 割り当て後、プロビジョニング画面に遷移します。

12. [作業の開始]を押下します。

13. [プロビジョニングモード]を自動に切り替えます。

14. [管理者資格情報]の[テナントの URL]には[SCIMエンドポイント]、[シークレット トークン]には[アクセストークン]を先ほど「自動プロビジョニングの有効化」でコピーした資格情報をペーストします。

15. [テスト接続]を押下します。成功のイベントが表示されたことを確認します。

16. [保存]を押下します。

17. 保存後、[概要]に移動します。

18. [プロビジョニングの開始]を選択します。

 2~3分ほどでプロビジョニングの状態が有効になります。

【AWS Management Consoleにサインイン】

1. [IAM Identity Center]>[グループ]に移動します。

2. 自動プロビジョニングされた[ユーザー/グループ(AWS SSO Members)]が表示されていることを確認します。

 これで登録手続きは完了です。

2-2. AWSアカウントに資格情報と権限を割り当てる

【AWS Management Consoleにサインイン】

1. [IAM Identity Center]>[マルチアカウント許可]>[許可セット]に移動します。
2. [許可セットの作成]を選択します。

3. 【ステップ1】 許可セットタイプを選択
 ・[許可セットのタイプ]で[事前定義された許可セットのポリシー]を選択します。  
 ・[事前定義された許可セットのポリシー]で「AdministratorAccess」を選択します。  
 ・「次へ」を押下します。

4. 【ステップ2】許可セットの詳細を指定
 [許可セットの詳細を指定]には下記の設定を行いました。
 ・[許可セット名]:<任意> (本記事では 「AdministratorAccess」と名付けます)
 ・[説明(オプション)]:<任意>
 ・[セッション期間]:8時間(デフォルトは1時間)
 ・[リレー状態(オプション)]:※シングルサインオン後にリダイレクトされるページURL

(本記事では https://ap-northeast-1.console.aws.amazon.com/console/home?region=ap-northeast-1をリレーに設定します)

5. 【ステップ3】確認して作成
 ・「作成」を押下します。

6. [IAM Identity Center]>[マルチアカウント許可]>[AWSアカウント]に移動します。

7. 対象のAWSアカウントを選択して、[ユーザーまたはグループを割り当て]を選択します。
 ※今回は4つのAWSアカウントに割り当ててみます。

8. 【ステップ1】 ユーザーとグループの選択
 ・[グループ]で自動プロビジョニングされたグループ(AWS SSO Members)を選択します。
 ・[選択されたユーザーとグループ]で選択した「ユーザー名/グループ名(AWS SSO Members)」を選択します。
 ・「次へ」を押下します。

9. 【ステップ2】 許可セットを選択
 ・[許可セット]で先ほど作成した「アクセス権限セット(AdministratorAccess)」を選択します。
 ・「次へ」を押下します。

10. 【ステップ3】 確認して送信
 ・「送信」を押下します。

11. [Permission sets]に作成した「アクセス権限セット(AdministratorAccess)」が割り当てられていることを確認します。

 これで資格情報と権限の割り当ては完了です。

動作確認

【Azure ポータル にサインイン】

1. [Azure Active Directory]>[エンタープライズ アプリケーション]に移動します。

2. [すべてのアプリケーション]>「作成したアプリケーション(AWS IAM Identity Center)」>[プロパティ]に移動します。

3. [ユーザーのアクセス URL]のリンクをブラウザで実行します。

4. サインオンしたいAWSアカウントを選択して、[Management console]を押下します。

5. 東京リージョンの管理コンソール画面(https://ap-northeast-1.console.aws.amazon.com/console/home?region=ap-northeast-)にアクセスできたことを確認します。

 これで動作確認は完了です。

村上 滉樹/FIXER
2020年4月 入社
サーバーレスやCI/CDが好き。
インフラエンジニア4年目の関西人です。

カテゴリートップへ

この連載の記事