Microsoft EntraとGoogle Workspaceとの連携

  • フェデレーション(ID連携): Google Workspaceの認証元(IdP)としてMicrosoft Entra IDを設定し、SAML 2.0などのプロトコルを用いてシングルサインオン(SSO)を実現する。これにより、ユーザーがGoogleにログインしようとすると、自動的にMicrosoftのサインイン画面にリダイレクトされる

SSO(シングルサインオン)の仕組み:SAML 2.0を使った場合

まず用語の整理:

役割意味今回の例
IdP(Identity Provider)「この人は誰か」を証明する側Microsoft Entra ID
SP(Service Provider)サービスを提供する側(アクセスされる側)Google Workspace
ユーザー        Google Workspace (SP)       Microsoft Entra ID (IdP)
   |                    |                              |
   |--① Googleにアクセス-->|                              |
   |                    |--② SAMLリクエスト送信--------->|
   |<-----③ Entraログイン画面へリダイレクト---------------|
   |                    |                              |
   |--④ ID/PW + MFA入力------------------------------>|
   |                    |              ⑤ 認証成功・アサーション生成
   |                    |<--⑥ SAMLアサーション(XML)送信--|
   |                    |--⑦ アサーション検証            |
   |<--⑧ アクセス許可---|                              |

SAMLアサーションとは「このユーザーは認証済みで、このメールアドレス・属性を持っています」という情報をXML形式で記述した署名付き文書。GoogleはこのXMLを受け取り、Entra側の電子署名を検証してログインを許可する。

OAuth / OIDC との違い(参考)

同じ「ID連携」でもプロトコルによって用途が異なる:

プロトコル主な用途発行するものデータ形式
OAuth 2.0認可(アクセス権の委譲)アクセストークンJSON
OIDC(OpenID Connect)認証 + 認可IDトークン(JWT)+ アクセストークンJSON
SAML 2.0認証 + SSOSAMLアサーションXML

OIDCはOAuth 2.0の拡張版。OAuthは「BアプリがAさんのGoogleドライブにアクセスする権限を委譲する」(認可)のための仕組みで、「誰がログインしているか(認証)」は保証しない。OIDCはその上にIDトークン(JWT)を追加して認証もできるようにしたもの。エンタープライズSSO(EntraとGoogle Workspaceの連携など)ではSAML 2.0が多く使われる傾向にある。