
AWSルートアカウントでログインするのはセキュリティ上望ましくない上、毎回MFAも手間。そんなときは、Azure AD(現 Entra ID)と連携し、SSOとMFAを組み合わせるのがベストな選択です。
本記事では、AWSとAzure両方にルート権限を持っている前提で、IAMユーザーの作成からAzure ADとの連携までをステップバイステップでわかりやすく解説します。各設定の目的や技術的背景も初心者向けに丁寧に説明していきます。
✅ SSOとは?
**SSO(シングルサインオン)**とは、一度のログインで複数のサービスにアクセスできる仕組みです。Azure AD(IdP: Identity Provider)が認証を担い、AWS(SP: Service Provider)にアクセス権を提供することで、IDとパスワードの一元管理が可能になります。
加えて、Azure側のMFA(多要素認証)や条件付きアクセスも活用できるため、セキュリティと利便性を両立できます。
✅ 全体の流れ
- IAM Identity Center(旧AWS SSO)の有効化

IAM Identity Center に Azure AD をIdPとして連携
- Azure AD 側でエンタープライズアプリを作成
- ユーザーやグループにロールを割り当て
- 実際にSSOログインを確認
- Azure AD グループと AWS ロールのマッピング自動化
🔧 ステップ1:IAM Identity Center を有効化
1-1. AWS マネジメントコンソールにルートユーザーでログイン
1-2. IAM Identity Center のページに移動
- AWS マネジメントコンソール → IAM Identity Center

- 初回アクセス時は「有効化(Enable)」ボタンをクリック
1-3. Identity Centerの設定を完了
- Identity Source(IDソース) → 一時的に “AWS Identity Center” を選択(あとでAzure ADに切り替え)

azure を使用するので、「外部IDプロバイダー」をクリックして 次へをクリック

下記の情報をAzure で入力します

🏢 ステップ2:Azure AD 側にエンタープライズアプリを作成
2-1. Azure ポータルにログイン(https://portal.azure.com)
2-2. Azure Active Directory → “エンタープライズアプリケーション”
- “New application ” をクリック

- 検索窓に「AWS Single Sign-On」と入力して選択 「AWS IAM Identity Center」をクリック

- Create をクリック

このアプリがAzure側のIdPとしての窓口になります。
🔐 ステップ3:SAML設定の構成
🔍 用語解説
- **SAML(Security Assertion Markup Language)**は、IdPが認証した結果をSPに渡すためのXMLベースのプロトコル。
- メタデータXMLは、SAMLのやりとりに必要なエンドポイント情報や証明書を含んだ構成ファイルです。このファイルをAzure 側からダウンロードして、AWS側にインポートすると設定が簡単です
3-1. Azure 側の SAML 設定
- まずユーザーを選択します

次にSSOの設定を行います

SAMLを選択

上記のAWSで表示させた 下記2つの情報を入力します
Identifier (Entity ID) これはAWSのメタデータに入っているのでダウンロードして確認してください

ダウンロードしたメタデータの中に
" entityID="https://us-east-1.signin.aws.amazon.com/platform/saml/d
みたいな形で入っていますのでそれをAzure のIdentifier (Entity ID)に入力
Reply URL (Assertion Consumer Service URL) は前述した下記のURLです

上記を Azure のReply URL (Assertion Consumer Service URL ) に入力します


3-2. Azure からメタデータをダウンロード
- [SAML署名証明書] → “Federation Metadata XML” をダウンロード

🖇️ ステップ4:AWS側でIdPとしてAzure ADを登録
4-1. IAM Identity Center → 設定 → Identity Source を選択

- AzureからダウンロードしたメタデータXMLをアップロード

- アイデンティティソースを変更をクリック

👥 ステップ5:ユーザーやグループにAWSアクセスを割り当て
5-1. 自動プロビジョニングの設定
プロビジョニングの管理を選択

自動プロビジョニングを有効にして、SCIM のURLとトークンをコピー

このような感じですごく長いトークンが出てくるのでコピー

AZUREのProvisioniing でSCIMのURLとトークンを入れてテスト

Test Connection で成功するはずです

設定をセーブしたら、StartProvisioning を行います

これが成功すればIAM Identity center でAzure で作ったユーザーが下記のように現れるはずです

5-3. ユーザーにロール(アクセス許可セット)を割り当て
アカウントを割り当てるをクリック

- AWS Identity Center → ユーザー → 「アカウントへのアクセス」から、アクセス権限セット(例:AdministratorAccess)を付与 、今回はルートユーザにリンクして、アクセス権限セットを複数けて、割り当てるボタンをクリックします

問題なければ割り当てが完了するはずです

属性の調整
AWSとAzure で交換する属性を牡蠣のように調整します。調整しないと失敗したりする

AWSは下記のようにします

とにかくusername の箇所でuser.mail としておいて ユーザーをuser.localuserprincipalname ではなくuser.mailに統一しておくが無難
🚀 ステップ6:SSOログインを確認
6-1. Azureポータルの “マイアプリ” からAWSを選択
Azureで設定したSingle signon URL にアクセス

sign on URL からシングルサインオンのプロセスが始まります
ログイン出来たら AWSAdministratorAccess などのポリシー名をクリックすればアドミンのようにふるまえます

これでいちいちルートでアクセスして二段階認証のコードを入れる手間も省けます。
Single SignonURLはブックマークしておきましょう
🎉 まとめ
- AWSルートアカウントは非常用にして、日常操作はSSO連携されたユーザーで運用!
- Azure ADとIAM Identity CenterのSAML連携により、Azure MFAや条件付きアクセスも使える
- Azure AD グループとAWSロールのマッピングを活用すると、アクセス管理も柔軟に!
- セキュリティ強化 + 運用の簡略化が実現できます