Microsoft Entra ID を使用したフェデレーティッド認証の構成
項目一覧
- Cloud Managerへのプログラムによるアクセスのための OAuth 2.0認証はプレビュー機能として利用できます。
- 機能および関連するドキュメントは、プレビュー期間中にいつでも変更される可能性があります。 OAuth2.0 認証を使用するには、 Cloud Manager Public APIへのリクエストで使用する サービス アカウント を作成します。
このガイドでは、Microsoft Entra ID を IdP として使用してフェデレーティッド認証を構成する方法について説明します。
Microsoft Entra ID と Cloud Manager を統合すると、会社の認証情報を使用して Cloud Manager やその他の MongoDB クラウド サービスにログインできます。
制限
Cloud Manager では、データベース ユーザーシングル サインオン統合をサポートしていません。
前提条件
Microsoft Entra ID を Cloud Manager のIdPとして使用するには、次のものが必要です。
Azureのサブスクライブ。 サブスクリプションを申し込むには、 Microsoft Azure portal にアクセスしてください。
サブスクリプションに関連付けられた Microsoft Entra ID のテナント。 Microsoft Entra ID テナントを設定する方法の詳細については、「 Microsoft Entra ID ドキュメント 」を参照してください。
Global Administrator
権限(Microsoft Entra ID テナント内)ルーティング可能なカスタムのドメイン名。
手順
ドメイン ユーザーを追加する
Azure コンソールを使用してカスタム ドメイン名を Microsoft Entra ID に追加し、ユーザーを作成します(まだ作成していない場合)。
カスタム ドメインの Microsoft Entra ID への追加
カスタム ドメイン名を Microsoft Entra ID に追加して、追加したドメインに属するユーザーを作成します。ドメインを追加したら、TXT
レコードでお使いの DNS プロバイダーに Microsoft Entra ID の DNS 情報を追加して、構成を確認します。
カスタム ドメインの Microsoft Entra ID への追加方法について詳しくは、 Azure のドキュメント を参照してください。
Microsoft Entra ID ユーザーの作成
ユーザがまだ存在しない場合は、Microsoft Entra ID でデータベース アクセスを許可するユーザーを作成します。 ユーザーは、Microsoft Entra ID に追加したカスタム ドメインに属している必要があります。
Microsoft Entra ID ユーザーを作成する方法について詳しくは、 Azure のドキュメント を参照してください。
ID プロバイダーとしての Microsoft Entra ID の構成
Azureコンソールを使用して、Microsoft Entra ID をSAML IdP として構成します。Azure のギャラリーから MongoDB Cloud アプリを追加するか、アプリケーションを手動で構成できます。
ギャラリーから MongoDB Cloud アプリを追加します。
MongoDB Cloud アプリ Microsoft Entra ID テナントに追加する方法について詳しくは、Azure のドキュメントを参照してください。
ユーザーをアプリケーションに割り当てます。
ユーザーをアプリケーションに割り当てます。 チュートリアルを完了すると、割り当てられたユーザーは Cloud Manager などの MongoDB Cloud Services にアクセスできるようになります。
Microsoft Entra ID ユーザーをアプリケーションに割り当てる方法について詳しくは、Azure のドキュメントを参照してください。
シングル サインオンの構成を開始するには、SAML 構成ページに移動します。
SAML 構成ページに移動する方法について詳しくは、 Azure のドキュメント を参照してください。
識別子と応答 URL に一時的な値を設定します。
有効なSAML署名証明書を生成するには、Microsoft Entra ID エンタープライズ アプリケーションの IdentifierとReply URLに一時的な値を割り当てる必要があります。 これらの値を設定する前に証明書をダウンロードすると、ダウンロードした証明書が一意ではなくなります。その場合は、値を設定してから再度証明書をダウンロードする必要があります。
一時的な値の設定するには、次の手順を行います。
セクション 1 で [Edit] をクリックします。
既存のデフォルト値をすべて削除して、次の一時的な値を設定します。
設定一時的な値Identifier (Entity ID)
https://www.okta.com/saml2/service-provider/MongoDBCloud
Reply URL (Assertion Consumer Service URL).
https://auth.mongodb.com/sso/saml2/
[Save] をクリックします。
ブラウザでページを更新して、証明書が再生成されたことを確認します。
証明書のサムプリントと有効期限の値は、一時的な識別子と応答 URL が初めてアップデートされた後に変わります。
オプション: SAML トークンにグループ クレームを追加します。
ロール マッピングを使用しない場合は、この手順をスキップします。
ロール マッピングを使用するには、Microsoft Entra ID により Cloud Manager に送信されるSAMLトークンに次のグループ クレームを追加します。
Add a group claimクリックします。 Azure に Group Claims パネルが表示されます。
Which groups associated with the user should be returned in the claim?で、 Security groupsをクリックします。 選択できるグループは、Azure 環境で構成したグループのタイプによって異なります。 適切なグループ情報を送信するには、別のタイプのグループを選択する必要がある場合があります。
Source attributeドロップダウンから、[ Group Id ] を選択します。 Group Idを選択した場合、Azure は人間が判読できるグループ名ではなく、セキュリティ グループのオブジェクト ID を送信します。 Azure 環境によっては、セキュリティ グループのオブジェクト ID の代わりにグループ名を送信する別のソース属性を選択できる場合があります。 Cloud Manager でロール マッピングを作成するときは、 SAML応答で送信された Azure グループ データと構成済みの MongoDB Atlas ロール マッピングの名前を一致させます。
Advanced options セクションで [Customize the name of the group claim] をクリックします。
Name を memberOf に設定します。
Namespace は空白のままにします。
Emit groups as role claimsをクリアします。
[Save] をクリックします。
ギャラリーに登録されていないアプリケーションを Microsoft Entra ID に追加します。
アプリケーションに、MongoDB-Cloud-Manager
など内容がわかりやすい名前を付けます。
ギャラリーに登録されていないアプリケーションを Microsoft Entra ID に追加する方法について詳しくは、Azure のドキュメントを参照してください。
ユーザーをアプリケーションに割り当てます。
ユーザーをアプリケーションに割り当てます。 チュートリアルを完了すると、割り当てられたユーザーは Cloud Manager などの MongoDB Cloud Services にアクセスできるようになります。
Microsoft Entra ID ユーザーをアプリケーションに割り当てる方法について詳しくは、Azure のドキュメントを参照してください。
シングル サインオンの構成を開始するには、SAML 構成ページに移動します。
SAML 構成ページに移動する方法について詳しくは、 Azure のドキュメント を参照してください。
識別子と応答 URL に一時的な値を設定します。
有効なSAML署名証明書を生成するには、Microsoft Entra ID エンタープライズ アプリケーションのIdentifierとReply URLに一時的な値を割り当てる必要があります。 これらの値を設定する前に証明書をダウンロードすると、ダウンロードした証明書が一意ではなくなります。その場合は、値を設定してから再度証明書をダウンロードする必要があります。
一時的な値の設定するには、次の手順を行います。
セクション 1 で [Edit] をクリックします。
既存のデフォルト値をすべて削除して、次の一時的な値を設定します。
設定一時的な値Identifier (Entity ID)
https://www.okta.com/saml2/service-provider/MongoDBCloud
Reply URL (Assertion Consumer Service URL).
https://auth.mongodb.com/sso/saml2/
[Save] をクリックします。
ブラウザでページを更新して、証明書が再生成されたことを確認します。
証明書のサムプリントと有効期限の値は、一時的な識別子と応答 URL が初めてアップデートされた後に変わります。
Unique User Identifier 必須クレームを編集します。
次の値を使用します。
Choose name identifier format:
Unspecified
Source:
Attribute
Source attribute:
user.userprincipalname
注意
Active Directory の構成によっては、異なるソース属性を使用する場合があります。 ユーザーの完全なメール アドレスを含むソース属性を使用します。
Unique User Identifier 必須クレームを編集する方法について詳しくは、 Azure のドキュメント を参照してください。
SAML トークンにユーザー クレームを追加します。
Microsoft Entra ID から Cloud Manager に送信されるSAMLトークンに次のユーザー クレームを追加します。
重要
名前列の値は大文字と小文字を区別します。 表示されているとおりに正確に入力します。
すべてのユーザー クレームに対して、Namespace
フィールドを空のままにしておく必要があります。
名前 | ソース | ソース属性 |
---|---|---|
| 属性 |
|
| 属性 |
|
| 属性 |
|
注意
Active Directory の構成によっては、異なるソース属性を使用する場合があります。 適切なクレームには、ユーザーの氏名と完全なメールアドレスを含むソース属性を使用します。
ユーザー クレームを追加する方法について詳しくは、Azure のドキュメントを参照してください。
オプション: SAML トークンにグループ クレームを追加します。
ロール マッピングを使用しない場合は、この手順をスキップします。
ロール マッピングを使用するには、Microsoft Entra ID により Cloud Manager に送信されるSAMLトークンに次のグループ クレームを追加します。
Add a group claimクリックします。 Azure に Group Claims パネルが表示されます。
Which groups associated with the user should be returned in the claim?で、 Security groupsをクリックします。 選択できるグループは、Azure 環境で構成したグループのタイプによって異なります。 適切なグループ情報を送信するには、別のタイプのグループを選択する必要がある場合があります。
Source attributeドロップダウンから、[ Group Id ] を選択します。 Group Idを選択した場合、Azure は人間が判読できるグループ名ではなく、セキュリティ グループのオブジェクト ID を送信します。 Azure 環境によっては、セキュリティ グループのオブジェクト ID の代わりにグループ名を送信する別のソース属性を選択できる場合があります。 Cloud Manager でロール マッピングを作成するときは、 SAML応答で送信された Azure グループ データと構成済みの MongoDB Atlas ロール マッピングの名前を一致させます。
Advanced options セクションで [Customize the name of the group claim] をクリックします。
Name を memberOf に設定します。
Namespace は空白のままにします。
Emit groups as role claimsをクリアします。
[Save] をクリックします。
SAML 署名証明書にSHA-256
が使用されていることを確認します。
SAML 署名証明書でSHA-256
署名アルゴリズムが使用されていることを検証する方法について詳しくは、 Azure のドキュメント を参照してください。
ID プロバイダーとしての Microsoft Entra ID の Cloud Manager への追加
Federation Management Console と Azure コンソールを使用して、Microsoft Entra ID を IdP として追加します。
MongoDB Cloud ManagerGoMongoDB Cloud Managerで、Organization Settings ページにGoします。
まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー
[Organizations] メニューの横にある [Organization Settings] アイコンをクリックします。
[ Organization Settings ]ページが表示されます。
Microsoft Entra ID を ID プロバイダーとして Cloud Manager に追加します。
クリック Add Identity Providers
まだ ID プロバイダーを構成していない場合は、Setup Identity Provider をクリックします。それ以外の場合は、Identity Providers 画面で Add Identity Provider をクリックします。
次の SAML プロトコル設定を入力または選択します。すべてのフィールドが必須です。
フィールド説明Configuration Name
Microsoft Entra ID などのわかりやすい名前を入力します。
IdP Issuer URI
チュートリアルの前半でAzureからコピーしたMicrosoft Entra ID Identifierを貼り付けます。
IdP Single Sign-On URL
チュートリアルの前半でAzureからコピーしたLogin URLを貼り付けます。
IdP Signature Certificate
チュートリアルの前半で
Base64
Azure からダウンロードした、 でエンコードされた SAML 署名証明書をアップロードします。次のいずれかを実行できます。
コンピュータから証明書をアップロードします。または、
証明書の内容をテキスト ボックスに貼り付けます。
Request Binding
HTTP POST を選択します。
Response Signature Algorithm
SHA-256 を選択します。
[Next] をクリックします。
メタデータ ファイルを Azure にアップロードすると、Microsoft Entra ID が IdP として構成されます。
ファイルをアップロードするには、「 アプリでシングル サインオン を有効化する 」のステップ3 のスクリーンショットを参照してください Azure ドキュメントを参照してください。リンク先のAzureドキュメントのスクリーンショットに示されているように、SSO の構成ページでUpload metadata fileをクリックします。
オプションで、IdP に RelayState URL を追加して、ユーザーを選択した URL に送信し、ログイン後の不要なリダイレクトを回避します。次のものを使用できます。
目的地 | RelayState URL | |
---|---|---|
MongoDB MongoDB Cloud Manager | MongoDB Cloud Managerフェデレーション管理アプリの ID プロバイダー構成用に生成されたLogin URL 。 | |
MongoDB サポート ポータル |
| |
MongoDB University |
| |
MongoDB Community フォーラム |
| |
MongoDB フィードバック エンジン |
| |
MongoDB JIRA |
|
ドメインをマッピング
ドメインをIdPにマッピングすると、ドメインのユーザーを ID プロバイダー構成のLogin URLに誘導する必要があることが Cloud Manager に通知されます。
ユーザーは Cloud Manager ログイン ページにアクセスする際に、メール アドレスを入力します。 メール ドメインが IdP に関連付けられている場合、その IdP のログイン URL に送信されます。
重要
単一のドメインを複数の ID プロバイダーにマッピングできます。そうすると、MongoDB Cloud コンソールを使用してログインするユーザーは、ドメインにマップされた最初の一致する IdP に自動的にリダイレクトされます。
代替 ID プロバイダーを使用してログインするには、ユーザーは次のいずれかを行う必要があります。
希望する IdP を介して MongoDB Cloud ログインを開始します。または、
目的の IdPに関連付けられた Login URL を使用してログインします。
Federation Management Console を使用して、ドメインを IdP にマッピングします。
MongoDB Cloud ManagerGoMongoDB Cloud Managerで、Organization Settings ページにGoします。
まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー
[Organizations] メニューの横にある [Organization Settings] アイコンをクリックします。
[ Organization Settings ]ページが表示されます。
ドメイン マッピング情報を入力します。
[Add a Domain] をクリックします。
Domains 画面で、Add Domain をクリックします。
ドメイン マッピングに次の情報を入力します。
フィールド説明表示名
ドメインを簡単に識別するための名前。
ドメイン名
ドメイン名 マッピングする
[Next] をクリックします。
ドメインを確認する方法を選択します。
注意
検証方法は一度選択できますが、変更することはできません。別の検証方法を選択するには、ドメイン マッピングを削除して再作成します。
HTML ファイルをアップロードしてドメインを確認するか、DNS TXT レコードを作成してドメインを確認するかに応じて、適切なタブを選択します。
ドメインの所有者であることを検証するために、検証キーを含む HTML ファイルをアップロードします。
[HTML File Upload] をクリックします。
[Next] をクリックします。
Cloud Manager によって提供される
mongodb-site-verification.html
ファイルをダウンロードします。HTMLファイルを所有するドメイン上の Web サイトにアップロードします。
<https://host.domain>/mongodb-site-verification.html
のファイルにアクセスできる必要があります。[Finish] をクリックします。
ドメインの所有権を検証するには、ドメイン プロバイダーでDNS TXT レコードを作成します。 各DNSレコードにより、特定の Cloud Manager 組織と特定のドメインが関連付けされます。
[DNS Record] をクリックします。
[Next] をクリックします。
提供された TXT レコードをコピーします。TXT レコードの形式は次のとおりです。
mongodb-site-verification=<32-character string> ドメイン名プロバイダー(GoDaddy.com や networksolutions.com など)にログインします。
Cloud Manager により提供される TXT レコードをドメインに追加します。
Cloud Manager に戻り、 [ Finish ] をクリックします。
ドメインを ID プロバイダーに関連付ける
ドメインの検証が無事に完了したら、Federation Management Console を使用して検証済みのドメインを Microsoft Entra ID に関連付けます。
ドメイン マッピングをテストする
重要
テストを開始する前に、 IdP の Bypass SAML モード の URL をコピーして保存します。Cloud Manager 組織からロックアウトされた場合にフェデレーション認証をバイパスするには、この URL を使用します。
テスト中は、ロックアウトをさらに防ぐために、セッションを Federation Management Console にログインしたままにしておきます。
Bypass SAML Mode の詳細については、バイパス SAML モードを参照してください。
Federation Management Console を使用して、ドメインと Microsoft Entra ID の統合をテストします。
(任意)組織をマッピングする
Federation Management Consoleを使用して、ドメインのユーザーに特定の Cloud Manager 組織へのアクセス権を割り当てます。
MongoDB Cloud ManagerGoMongoDB Cloud Managerで、Organization Settings ページにGoします。
まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー
[Organizations] メニューの横にある [Organization Settings] アイコンをクリックします。
[ Organization Settings ]ページが表示されます。
組織をフェデレーション アプリケーションに接続します。
[View Organizations] をクリックします。
Cloud Manager には、あなたが
Organization Owner
であるすべての組織が表示されます。フェデレーション アプリケーションにまだ接続していない組織では、Actions 列に Connect ボタンが表示されます。
目的の組織の Connect ボタンをクリックします。
組織に IdP を適用します。
管理コンソールの Organizations 画面で次の作業を行います。
IdP にマッピングする組織の Name をクリックします。
Identity Provider 画面で、Apply Identity Provider をクリックします。
Cloud Manager は、Cloud Manager にリンクしたすべてのIdPを表示するIdentity Providers画面にユーザーを誘導します。
組織に適用する IdP については、Modify をクリックします。
Edit Identity Providerフォームの下部で、このIdPが適用される組織を選択します。
[Next] をクリックします。
[Finish] をクリックします。
(任意)高度なフェデレーション認証オプションを構成する
フェデレーション ユーザーと認証フローをより詳細に制御するために、フェデレーション認証の次の詳細オプションを構成できます。
注意
フェデレーティッド認証の次の詳細オプションを使用するには、組織をマッピングする必要があります。
ログイン URL を使用して Cloud Manager にサインインします
Azureアプリケーションに割り当てたすべてのユーザーは、 Login URLで Microsoft Entra ID の認証情報を使用して Cloud Manager にログインできます。 ユーザーは、 IdPにマッピングされた組織にアクセスできます。
重要
単一のドメインを複数の ID プロバイダーにマッピングできます。そうすると、MongoDB Cloud コンソールを使用してログインするユーザーは、ドメインにマップされた最初の一致する IdP に自動的にリダイレクトされます。
代替 ID プロバイダーを使用してログインするには、ユーザーは次のいずれかを行う必要があります。
希望する IdP を介して MongoDB Cloud ログインを開始します。または、
目的の IdPに関連付けられた Login URL を使用してログインします。
デフォルトの組織ロールを選択した場合、 Login URLを使用して Cloud Manager にログインする新しいユーザーには、指定したロールが付与されます。