さくらのクラウド:Microsoft Entra IDでプロビジョニングとシングルサインオン

さくらのクラウドでは、Microsoft Entra IDやGoogle Workspaceといった外部のID管理システム(IDaaS)と連携して、シングルサインオン(SSO)を実現できます。これによりアカウント管理を外部に集約でき、運用負荷の軽減に貢献します。一方、ユーザー認証の設定やプロビジョニングの構成は画面遷移も多く、「どこで何を設定しているのか分かりづらい」と感じる方も少なくないでしょう。
本記事では、さくらのクラウドのユーザー管理をMicrosoft Entra IDと連携させる手順を紹介します。SAMLによるSSOからユーザーやグループの自動プロビジョニングまで、一連の操作を実際の画面遷移に沿って説明していきます。初めての方でも迷わず作業できるよう、各設定項目の役割や注意点もあわせて解説します。
なお、シングルサインオンに関する技術的な概要や、Google Workspaceとさくらのクラウドを連携させる具体的な手順については、下記の記事を参照してください。
👉 さくらのクラウド:シングルサインオン(SSO)連携 ~ Google Workspace編 ~ | さくらのナレッジ
それではEntra IDとの連携について説明していきましょう。
目次
事前に確認しておくこと
ID連携において権限が不足していると、設定に必要な項目が表示されなかったり保存やテスト接続ができなかったりと、作業をスムーズに進められません。あらかじめ現在の状態を確認しておきましょう。
まず「何をどこで設定するか」を意識して、必要な管理画面(Entra IDならエンタープライズアプリケーションの設定、さくらのクラウドであれば「SSOプロファイル」と「ユーザープロビジョニング」)や、操作できる適切なアカウントを確認しておいてください。
Microsoft Entra IDの管理画面で確認すること
Microsoft Entraテナントにおいて、さくらのクラウドはエンタープライズアプリケーションとして登録されます。本記事のさまざまな設定は、Azureポータルから「Microsoft Entra ID」を開き、左側のメニューから「エンタープライズアプリケーション」を選択した画面で進めていきます。次の状態になっていることを確認してください。
- Entra IDの管理画面に管理者権限のユーザーでログインできる
- SSOの対象となるユーザーとグループがEntra IDですでに作成されている
- さくらのクラウド用のエンタープライズアプリケーションがすでに作成されている
さくらのクラウド用のエンタープライズアプリケーションをまだ作成していない場合には、エンタープライズアプリケーションの管理画面で「+新しいアプリケーション」をクリックして「独自のアプリケーションの作成」で「ギャラリー以外」のアプリケーションを作成しておいてください。
さくらのクラウドの管理画面で確認すること
一方、さくらのクラウド側の「さくらのクラウドホーム」には、これからEntra IDのユーザーやグループが自動で追加されることになります。そのため現在はまだ以下の状態です。
- さくらのクラウドに管理者権限(さくらインターネット会員ID)でログインできる
- SSOの対象となるユーザーやグループはまだ作成されていない
- SSOプロファイルとユーザープロビジョニングもまだ設定されていない
それでは、まずシングルサインオンについて、その後でユーザープロビジョニングについて設定していきましょう。
1. シングルサインオンのSAMLを設定しよう
さくらのクラウドとEntra IDの双方で、SSOに必要な情報をお互いに登録します。さくらのクラウドにユーザーがアクセスしたときに、その認証をEntra IDに任せ、Entra IDが発行する認証結果をさくらのクラウドで受け取れるようにするためです。
ここでは「誰が使えるか」はまだ確定していません。あくまで、正しい相手(Entra ID)を信頼してログインを成立させる土台を作る工程です。SSOが成立して初めて、後続のプロビジョニングや割り当てが可能になります。
認証プロトコルとしてはSAML(Security Assertion Markup Language)が使用されます。Microsoft Entra IDがIDプロバイダー(IdP)となり、さくらのクラウドがサービスプロバイダー(SP)になります。
Entra IDでIDプロバイダー情報を取得
まずEntra IDのエンタープライズアプリケーションからIdPとしての情報を取得します。
- 左側のメニューで「シングルサインオン」を選択する
- シングルサインオン方式として「SAML」を選択する
- 「SAMLベースのサインオン」画面を開く
- 「SAMLによるシングルサインオンのセットアップ」をスクロールする
- 「④ 【アプリケーション名】のセットアップ」欄から次の情報を取得する
- Microsoft Entra識別子
- ログインURL
さくらのクラウドでSSOプロファイルを作成
取得した情報をもとに「さくらのクラウドホーム」でSSOプロファイルを作成します。
- 左サイドのメニューから「SSOプロファイル」を選択する
- 右上の「SSOプロファイルの作成」をクリックする
- SSOプロファイル作成で、IdP情報を設定する
- SSOプロファイル名:任意の名前(ここでは仮に「EntraID」とする)
- IdPログインURL:先ほど取得したログインURLを設定
- IdPエンティティID:先ほど取得したMicrosoft Entra識別子を設定
- 証明書:後で設定(いったん仮のテキストを入力)
- 「作成」ボタンをクリックする
- 確認ダイアログで「作成」ボタンをクリックする
SSOプロファイルの作成が完了すると「SP情報」画面が表示されます。次の2つの情報を取得してください。
- SPエンティティID
- ACSのURL
Entra IDで基本的なSAML構成を編集
Entra IDの画面に戻り、先ほどの「SAMLベースのサインオン」画面で「SAMLによるシングルサインオンのセットアップ」を行います。
- 「① 基本的なSAML構成」の右上の「編集」をクリックする
- 「基本的なSAML構成」画面で次の情報を設定する
- 識別子 (エンティティID):先ほど取得した「SPエンティティID」を設定
- 応答URL(Assertion Consumer Service URL):先ほど取得した「ACSのURL」を設定
- 上部の「保存」ボタンをクリックする
これで「トークン署名証明書」がダウンロードできるようになります。
- 同じ画面で「③ SAML証明書」までスクロールする
- 「トークン署名証明書」で「証明書(Base64)」の右の「ダウンロード」をクリックする
- Base64形式の証明書を保存する
この証明書は、IDプロバイダーが署名したSAMLトークンをサービスプロバイダが検証するために使われます。
さくらのクラウドでSSOプロファイルを設定完了
再び「さくらのクラウドホーム」で、先ほど作成したSSOプロファイルを編集します。
- 今しがたダウンロードした証明書を、いったん仮とした「証明書」欄に貼り付ける
- 「有効状態」で「有効」を選択する
- 「保存」ボタンをクリックする
- 編集確認ダイアログで「保存」ボタンをクリックする
これでSAMLによるSSOの設定は完了です。ただし、さくらのクラウド側にはまだ誰もユーザーがいないので、実際のログインなどを試すことはできません。
さくらのクラウドホームで値を入力する箇所をまとめると下図のようになります。
2. ユーザープロビジョニングを設定しよう
SSOプロファイルを設定しただけでは、まだログインさせたいユーザーやグループを手作業で追加する必要があるなど、運用に手間がかかります。そのためユーザープロビジョニングを設定して、ユーザー管理を自動化します。
プロビジョニングはSCIM(System for Cross-domain Identity Management)プロトコルで実行され、Entra ID側のユーザー・グループ情報をもとに、さくらのクラウド側でユーザーやグループを自動で作成・更新します。
さくらのクラウドでユーザープロビジョニングを作成
まず、さくらのクラウド側でユーザープロビジョニング設定を作成します。
- さくらのクラウドホームで「ユーザープロビジョニング」を選択する
- 「ユーザープロビジョニングの作成」をクリックする
- ユーザープロビジョニング名を入力する(ここでは仮に「EntraID」とする)
- 「作成」ボタンをクリックする
- 確認ダイアログで「作成」ボタンをクリックする
- トークンが発行されるのでコピーあるいはCSVダウンロードして取得する
ここで「トークンが発行されました」ダイアログを閉じると、トークンの内容をもう確認できないので(再発行は可能)、このダイアログで必ず取得しておいてください。
- ダイアログの「閉じる」ボタンをクリックする
- 作成したユーザープロビジョニングの編集画面を確認する
- 「BaseURL」をコピーして取得する
発行されたトークンとBaseURLをSCIMエンドポイントとして、次にEntra ID側で入力します。
Entra IDでもプロビジョニングを設定
続いてEntra IDのエンタープライズアプリケーションでもプロビジョニングを設定して、さくらのクラウドのユーザープロビジョニング情報を登録します。
- 左側のメニューから「プロビジョニング」を選択する
- 「構成の作成」で「アプリケーションの接続」をクリックする
- 「新しいプロビジョニング構成」で以下の項目を設定する
- 認証方式の選択:「ベアラー認証」
- テナントのURL:先ほど取得した「BaseURL」を設定
- シークレット トークン:先ほど取得した「トークン」を設定
- 「テスト接続」をクリックして、正常な接続を確認する
- 「作成」ボタンをクリックする
この設定画面は次のようになります。
3. 同期させるユーザーとグループを設定しよう
さらに、Entra IDとさくらのクラウド側で、どの項目を同期させるのか設定します。Entra IDの属性(ユーザー名、表示名など)を、さくらのクラウドのどの項目に同期させるのかをマッピングします。
ユーザーの属性マッピングを設定
まず、ユーザーの属性を整理します。属性マッピングの設定手順は次の通りです。
- 「プロビジョニング」メニューから「属性マッピング」を開く
- 「Provisioning Microsoft Entra ID Users」をクリックする
- 下部の「属性マッピング」で次の3つだけを残して「削除」する
- userName
- displayName
- externalId
同期できる項目をむやみに増やすと運用中に“思わぬ上書き”が起こる可能性があるため、このシナリオでは必要最小限の項目に整理しています。間違えて必要な項目も削除しないよう注意してください。
このとき、エンタープライズアプリケーションの「userName」属性は、デフォルトでMicrosoft Entra IDの「userPrincipalName」属性と同期します。Entra ID中で扱うユーザーがEntra IDの内部ユーザーだけなら、このままでかまいません。もし、B2Bコラボレーションの外部IDもSSOさせたい場合には、「userName」のマッピング元を「originalUserPrincipalName」に変更したほうがよいでしょう。
- 「詳細オプションの表示」チェックボックスをオンにする
- 「customappssoの属性リストを編集します」をクリックする
- 先ほど残した属性マッピングにあわせて、属性リストも下図のように整理する
- displayNameとexternalIdの「必須ですか?」にチェックを入れる
- 上部の「保存」をクリックする
- 「これらの変更を適用しますか?」で「はい」ボタンをクリックする
なお、customappssoはカスタムアプリケーションのことを指します。
グループの属性マッピングを設定
続いて、グループの属性を設定します。
- 再び属性マッピングを表示する
- 「Provisioning Microsoft Entra ID Groups」を選択する
- グループの属性マッピングを下図のように編集する
- externalIdの「照合の優先順位」を「1」にする(displayNameから変更)
- 「詳細オプションの表示」チェックボックスをオンにする
- 「customappssoの属性リストを編集します」をクリックする
- グループの属性マッピングにあわせて属性リストを整理する
- externalIdの「必須ですか?」にチェックを入れる
- 上部の「保存」をクリックする
- 「これらの変更を適用しますか?」で「はい」ボタンをクリックする
これで一通りの設定が完了しました。
プロビジョニングするユーザーやグループを割り当てる
プロビジョニングしたいEntra IDのユーザーやグループに、さくらのクラウド用のエンタープライズアプリケーションを割り当てます。ここでは個別のユーザーではなく、グループをまとめて選択してみます。
- 左側のメニューで「ユーザーとグループ」を選択する
- 「ユーザーまたはグループを追加」をクリックして「割り当ての追加」を開く
- 「ユーザーとグループ」の一覧で、割り当てに追加したいグループのチェックボックスをオンにする
- 「選択」ボタンをクリックする
- 「割り当て」ボタンをクリックする
これで追加したグループに含まれるユーザーがすべてエンタープライズアプリケーションに割り当てられました。なお、グループを追加するにはMicrosoft Entra ID P2以上のプランが必要です。
4. プロビジョニングとSSOを実行してみよう
さくらのクラウドにプロビジョニングする準備が整いました。エンタープライズアプリケーションでプロビジョニングを実行し、さくらのクラウドに作成されたユーザーでシングルサインオンしてみましょう。
プロビジョニングを実行する
プロビジョニングの初回同期を次の手順で実行します。
- 左側のメニューで「オンデマンドでプロビジョニング」を選択する
- 「プロビジョニングの開始」をクリックする
- 確認画面で「はい」ボタンをクリックする
しばらくするとプロビジョニングが実行されます。
初回同期が完了し、上図では1つのグループと2人のユーザーが同期されています。いつ実行されたかは、後で「プロビジョニングログ」でも確認できます。
ここで「さくらのクラウドホーム」の「ユーザグループ」や「ユーザー」を確認すると、Entra ID側に登録されていたグループとユーザーが追加されているはずです。
シングルサインオンをテストしてみる
続けてシングルサインオンの動作を確認しましょう。ここまでEntra ID側で作業してきたユーザーが、先ほどプロビジョニングしたグループに含まれていることを前提とします。
- 左側のメニューから「シングルサインオン」を選択する
- 「SAMLベースのサインオン」で「⑤ 【アプリケーション名】でシングルサインオンをTest」までスクロールする
- 「Test」ボタンをクリックする
- 「【アプリケーション名】でシングルサインオンをTest」が表示されたら「サインインのテスト」をクリックする
- Microsoftサインインのダイアログでテストするアカウント(現在のサインインアカウント)を選択する
- 「Test SAML Single Sign-On」ダイアログが表示され、もう一度アカウントを選択する
これでシングルサインオンが実行され、アプリケーション(ここでは「さくらのクラウドホーム」画面)にログインした状態で遷移すればテスト成功です。
プロビジョニングで効率的で安全なID管理を
ITシステムのセキュリティが重要視されるなか、ぜひシングルサインオンとユーザープロビジョニングを利用しましょう。
複数のクラウド環境でITシステムを構築・運用する場合、ユーザー情報のプロビジョニングとシングルサインオンを活用すれば、ID管理の効率を向上させるとともにより安全な運用が期待できます。