はじめに
前回はMicrosoft Entra IDとGoogle Cloud, AWS, GitHubのユーザー連携やってみる①にて、パブリッククラウドのリソース管理体系とユーザー管理体系を比較し、Microsoft Entra IDを利用したユーザー管理方法についてお話しました。
本記事では、Microsoft Entra ID(旧Azure AD)がメインのID基盤である場合に、Google Cloudとの連携を構築する方法を解説します。特に、ゲスト(外部)ユーザー連携について詳しく見ていきたいと思います。
※会社公式ではなく、2025年7月23日時点でのma333の見解となります。
本記事のゴール
ゲストユーザーのアドレスがuser@guest.com
で、自社ドメインが@host.com
の場合に、
-
Google Cloudコンソールにて自社ドメインに変換した
user_guest.com@host.com
を入力 - Microsoft Entra ID側にて元の
user@guest.com
で認証を実施
することで、Google Cloudのプロジェクトにアクセスできることを目指します。
以降のuser, guest, hostは置き換えてお読みください。
Google Cloudの中でプロジェクトへゲストユーザーを付与することもできますが、本構成のメリットとしては
- ゲストユーザーのメールアドレスがGoogleアカウントでない場合にも、新しいGoogleアカウントを作成して連携できること
- Microsoft Entra IDをメイン利用されている会社であれば、マルチクラウドの運用負荷が低減できること
があります。
Microsoft Entra IDとGoogle Cloudの連携構成
構成については、Google Cloud を Microsoft Entra ID(旧 Azure AD)と連携させるに詳しくまとまっています。
前提
- Microsoft Entra IDを利用していること
-
SaaSアプリへの自動グループ プロビジョニング
や、条件付きアクセス - 使用条件の確認
(利用規約の設定)についてはP1以上のライセンスが必要です
-
- Google Cloudを組織で利用していること
- Google Cloud Identity Freeに余力があればお試し可能ですし、有料版のCloud IdentityやGoogle Workspaceライセンスでも、もちろん利用可能です
ここからは作業手順を追っていきます。
1. Microsoft Entra IDでSSOを構成する
Microsoft Entra SSO の構成に沿って進めます。
AzureポータルのMicrosoft Entra IDにて、エンタープライズアプリケーション
> 作成したアプリ > シングル サインオン
が以下のように構成されます。
ここからがゲストユーザー設定のポイントです。
シングル サインオン
> ②属性とクレーム
> 必要な要求
> クレーム名
より、以下の画像を目指して、要求条件を設定していきます。
まずは、ユーザータイプで外部のゲスト
設定を追加していきます。
ソース
を変換
にして、変換の管理
にて以下の設定にします。
- 変換:
RegexReplace()
- パラメータ1:
属性
- 属性名:
user.userprincipalname
- ソースを複数値として扱います: □ (チェック入れない)
- 正規表現パターン:
(?'username'^.*?)#EXT#@(?i).*\.onmicrosoft\.com$
- ゲストユーザーが
user@guest.com
の場合、UPN名がuser_guest.com#EXT#@host.onmicrosoft.com
と設定されていることを想定し、user_guest.com
を抽出する処理をしています
- ゲストユーザーが
- 置換パターン:
{username}@host.com
次に、ユーザータイプでMicrosoft Entra のゲスト
設定を追加していきます。設定パラメータは上記から以下1点のみ変更します。
- 属性名:
user.localuserprincipalname
2. Google CloudでSSOを構成する
Google Cloud / G Suite Connector by Microsoft SSO を構成するに沿って進めます。
これによりSSOの設定が完了し、手動でGoogleアカウント側への@host.com
のユーザー追加が可能となります。Google側にアカウントが作成されると、Google Cloudのプロジェクト側でのアクセス権設定ができるようになります。
手動でなく、自動でアカウント追加を実施する際にはMicrosoft Entra IDのエンタープライズアプリケーションのプロビジョニング
で設定が可能です。
3. Microsoft Entra IDで条件付きアクセスを設定する
ご希望により、Microsoft Entra IDのエンタープライズアプリケーション > 作成したアプリ > (セキュリティ)条件付きアクセス
にて、MFA要求や、利用規約同意のような追加設定が可能です。
- ユーザー: ☑ゲストまたは外部ユーザー
- ターゲットリソース: 本アプリを組み込み
- アクセス制御-許可:
- ☑アクセス権の付与
- ☑多要素認証を要求する(以降は会社のルールに従い設定)
- エンタープライズアプリケーション全体の
条件付きアクセス
>(管理)利用規約
にて利用規約を追加していると、利用規約の同意を追加することができます。
- エンタープライズアプリケーション全体の
ポリシーは分割して作成したり、複数アプリケーション共通のものを作成することも可能です。
まとめ
Microsoft Entra IDからGoogle Cloudへのアカウント連携、特にゲストユーザーを自社ドメインに変換してアクセスできるようにする方法を解説しました。
これにより、共通のMicrosoft Entra IDにゲストユーザーを追加し、アクセス制御を一元化することが可能になります。棚卸作業やMFA・利用規約等の条件・認証が共通化できるため、Google Cloud以外もこちらに寄せていくと、より運用低減効果を発揮します。
次回は、Microsoft Entra ID → AWSの連携方式を書く予定です!