Microsoft Entra ID を使用したフェデレーティッド認証の構成
項目一覧
このガイドでは、Microsoft Entra ID を IdP として使用してフェデレーティッド認証を構成する方法について説明します。
Microsoft Entra ID と Atlas を統合すると、自社の認証情報を使用して Atlas などの MongoDB Cloud Services にログインできるようになります。
必要なアクセス権
フェデレーティッド認証を管理するには、インスタンスにフェデレーション設定を委任している 1 つ以上の組織に対する Organization Owner
アクセス権が必要です。
前提条件
Microsoft Entra ID を Atlas の IdP として使用するには、次のものが必要です。
Azureのサブスクライブ。 サブスクリプションを申し込むには、 Microsoft Azure portal にアクセスしてください。
サブスクリプションに関連付けられた Microsoft Entra ID のテナント。 Microsoft Entra ID テナントを設定する方法の詳細については、「 Microsoft Entra ID ドキュメント 」を参照してください。
Microsoft Entra IDテナントには少なくとも
Cloud App Administrator
およびUser Administrator
権限が必要です。ルーティング可能なカスタムのドメイン名。
手順
ドメイン ユーザーを追加する
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 のドキュメントを参照してください。
ユーザーをアプリケーションに割り当てます。
ユーザーをアプリケーションに割り当てます。チュートリアルを完了すると、割り当てられたユーザーは Atlas などの 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 により Atlas に送信される 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 の代わりにグループ名を送信する別のソース属性を選択できる場合があります。
Atlas でロール マッピングを作成するときは、SAML 応答で送信された Azure グループ データと構成済みの Atlas ロール マッピングの名前を正確に一致させます。
Advanced options セクションで [Customize the name of the group claim] をクリックします。
Name を memberOf に設定します。
Namespace は空白のままにします。
Emit groups as role claimsをクリアします。
[Save] をクリックします。
フィールドと フィールドの値をコピーします。<a class=\" \" href=\" \" title=\"Login URL \"><svg xmlns=\" \" width=\" \" height=\" \" fill=\" \" viewbox=\"Microsoft Entra ID \" class=\" \" role=\" \" aria-label=\" \"><path fill=\" \" d=\" \"> <path fill=\" \" d=\" \">
これらの値をテキスト エディタなど、簡単にアクセスできる場所に貼り付けます。
チュートリアルの後半で、これらの値を MongoDB Federation Management Console に入力します。
ギャラリーに登録されていないアプリケーションを Microsoft Entra ID に追加します。
アプリケーションに、MongoDB-Atlas
など内容がわかりやすい名前を付けます。
ギャラリーに登録されていないアプリケーションを Microsoft Entra ID に追加する方法について詳しくは、Azure のドキュメントを参照してください。
ユーザーをアプリケーションに割り当てます。
ユーザーをアプリケーションに割り当てます。チュートリアルを完了すると、割り当てられたユーザーは Atlas などの 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 の構成によっては、ユーザーの完全なメール アドレスを含むソース属性が
user.userprincipalname
ではない場合があります。フェデレーション ドメイン内の既存の Atlas ユーザーのユーザー名と一致するメール アドレスを含むソース属性(user.mail
など)を使用します。フェデレーション ドメインに所属する既存の Atlas ユーザーの場合、ユーザーの現在の Atlas ユーザー名を含むソース属性を選択します。
Unique User Identifier 必須クレームを編集する方法について詳しくは、 Azure のドキュメント を参照してください。
SAML トークンにユーザー クレームを追加します。
Microsoft Entra ID が Atlas に送信する SAML トークンに次のユーザー要求を追加します。
重要
名前列の値は大文字と小文字を区別します。 表示されているとおりに正確に入力します。
すべてのユーザー クレームに対して、Namespace
フィールドを空のままにしておく必要があります。
名前 | ソース | ソース属性 |
---|---|---|
firstName | 属性 | user.givenname |
lastName | 属性 | user.surname |
注意
Active Directory の構成によっては、異なるソース属性を使用する場合があります。適切なクレームには、ユーザーの氏名を含むソース属性を使用します。
ユーザー クレームを追加する方法について詳しくは、Azure のドキュメントを参照してください。
オプション: SAML トークンにグループ クレームを追加します。
ロール マッピングを使用しない場合は、この手順をスキップします。
ロール マッピングを使用するには、Microsoft Entra ID により Atlas に送信される 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 の代わりにグループ名を送信する別のソース属性を選択できる場合があります。
Atlas でロール マッピングを作成するときは、SAML 応答で送信された Azure グループ データと構成済みの Atlas ロール マッピングの名前を正確に一致させます。
Advanced options セクションで [Customize the name of the group claim] をクリックします。
Name を memberOf に設定します。
Namespace は空白のままにします。
Emit groups as role claimsをクリアします。
[Save] をクリックします。
SAML 署名証明書がSHA-256
を使用していることを確認します。<a class=\" \" href=\" \" title=\" \"><svg xmlns=\" \" width=\" \" height=\" \" fill=\" \" viewbox=\" \" class=\" \" role=\" \" aria-label=\" \"><path fill=\" \" d=\" \"> <path fill=\" \" d=\" \">
SAML 署名証明書でSHA-256
署名アルゴリズムが使用されていることを検証する方法について詳しくは、 Azure のドキュメント を参照してください。
フィールドと フィールドの値をコピーします。<a class=\" \" href=\" \" title=\"Login URL \"><svg xmlns=\" \" width=\" \" height=\" \" fill=\" \" viewbox=\"Microsoft Entra ID \" class=\" \" role=\" \" aria-label=\" \"><path fill=\" \" d=\" \"> <path fill=\" \" d=\" \">
これらの値をテキスト エディタなど、簡単にアクセスできる場所に貼り付けます。
チュートリアルの後半で、これらの値を MongoDB Federation Management Console に入力します。
ID プロバイダーとしての Microsoft Entra ID の Atlas への追加
Federation Management Console と Azure コンソールを使用して、Microsoft Entra ID を IdP として追加します。
Atlas で、Organization Settings ページに移動します。
まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー
[Organizations] メニューの横にある [Organization Settings] アイコンをクリックします。
[ Organization Settings ]ページが表示されます。
Microsoft Entra ID を ID プロバイダーとして Atlas に追加します。
[Configure Identity Providers] をクリックします。
まだ ID プロバイダーを構成していない場合は、Setup Identity Provider をクリックします。それ以外の場合は、Identity Providers 画面で Add Identity Provider をクリックします。
次の SAML プロトコル設定を入力または選択します。すべてのフィールドが必須です。
フィールド説明Configuration NameMicrosoft Entra ID
などの説明的な名前。IdP Issuer URIMicrosoft Entra ID Identifier チュートリアルの前半で Azure からコピーしたものです。IdP Single Sign-On URLLogin URL チュートリアルの前半で Azure からコピーしたものです。IdP Signature CertificateBase64
チュートリアルの前半で Azure からダウンロードしたエンコードされた SAML 署名証明書。次のいずれかを実行できます。
コンピュータから証明書をアップロードします。または、
証明書の内容をテキスト ボックスに貼り付けます。
Request BindingHTTP POST.Response Signature AlgorithmSHA-256.[Next] をクリックします。
メタデータ ファイルを Azure にアップロードすると、Microsoft Entra ID が IdP として構成されます。
ファイルをアップロードするには、「 アプリでシングル サインオン を有効化する 」のステップ3 のスクリーンショットを参照してください Azure ドキュメントを参照してください。リンク先のAzureドキュメントのスクリーンショットに示されているように、SSO の構成ページでUpload metadata fileをクリックします。
オプションで、IdP に RelayState URL を追加して、ユーザーを選択した URL に送信し、ログイン後の不要なリダイレクトを回避します。次のものを使用できます。
目的地 | RelayState URL | |
---|---|---|
MongoDB Atlas | Login URL は、Atlasフェデレーション管理アプリ の ID プロバイダー構成用に生成されました。 | |
MongoDB サポート ポータル |
| |
MongoDB University |
| |
MongoDB Community フォーラム |
| |
MongoDB フィードバック エンジン |
| |
MongoDB JIRA |
|
ドメインをマッピング
ドメインを IdP にマッピングすると、ドメインのユーザーを ID プロバイダー構成の Login URL に誘導する必要があることが Atlas に通知されます。
ユーザーは Atlas ログイン ページにアクセスする際に、メール アドレスを入力します。メール ドメインが IdP に関連付けられている場合、その IdP のログイン URL に送信されます。
重要
単一のドメインを複数の ID プロバイダーにマッピングできます。そうすると、MongoDB Cloud コンソールを使用してログインするユーザーは、ドメインにマップされた最初の一致する IdP に自動的にリダイレクトされます。
代替 ID プロバイダーを使用してログインするには、ユーザーは次のいずれかを行う必要があります。
希望する IdP を介して MongoDB Cloud ログインを開始します。または、
目的の IdPに関連付けられた Login URL を使用してログインします。
Federation Management Console を使用して、ドメインを IdP にマッピングします。
FMC を開きます。
Atlas で、 Organization Settings ページに移動します。
まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー
[Organizations] メニューの横にある [Organization Settings] アイコンをクリックします。
[ Organization Settings ]ページが表示されます。
Manage Federation Settings で、[Open Federation Management App] をクリックします。
ドメイン マッピング情報を入力します。
[Add a Domain] をクリックします。
Domains 画面で、Add Domain をクリックします。
ドメイン マッピングに次の情報を入力します。
フィールド説明表示名ドメインを簡単に識別するためのラベル。ドメイン名ドメイン名 マッピングする[Next] をクリックします。
ドメインの認証方法を選択します。
注意
検証方法は一度選択できますが、変更することはできません。別の検証方法を選択するには、ドメイン マッピングを削除して再作成します。
HTML ファイルをアップロードしてドメインを確認するか、DNS TXT レコードを作成してドメインを確認するかに応じて、適切なタブを選択します。
ドメインの所有者であることを検証するために、検証キーを含む HTML ファイルをアップロードします。
[HTML File Upload] をクリックします。
[Next] をクリックします。
Atlas によって提供される
mongodb-site-verification.html
ファイルをダウンロードします。HTMLファイルを所有するドメイン上の Web サイトにアップロードします。
<https://host.domain>/mongodb-site-verification.html
のファイルにアクセスできる必要があります。[Finish] をクリックします。
ドメインの所有権を検証するには、ドメイン プロバイダーで DNS TXT レコードを作成します。各 DNS レコードにより、特定の Atlas 組織と特定のドメインが関連付けされます。
[DNS Record] をクリックします。
[Next] をクリックします。
提供された TXT レコードをコピーします。TXT レコードの形式は次のとおりです。
mongodb-site-verification=<32-character string> ドメイン名プロバイダー(GoDaddy.com や networksolutions.com など)にログインします。
Atlas により提供される TXT レコードをドメインに追加します。
Atlas に戻り、Finish をクリックします。
ドメインを確認します。
Domains 画面には、IdP にマッピングした未確認ドメインと確認済みドメインの両方が表示されます。ドメインを確認するには、対象ドメインの Verify ボタンをクリックします。Atlas では、検証に成功したかどうかが画面上部のバナーで表示されます。
ドメインを ID プロバイダーに関連付ける
ドメインの検証が無事に完了したら、Federation Management Console を使用して検証済みのドメインを Microsoft Entra ID に関連付けます。
左側のナビゲーションで [ Identity Providers ] をクリックします。
ドメインに関連付ける IdP については、Associated Domains の横にある Edit をクリックします。
IdP に関連付けるドメインを選択します。
[Confirm] をクリックします。
ドメイン マッピングをテストする
重要
テストを開始する前に、IdP の バイパス SAML モード URL をコピーして保存します。Atlas 組織からロックアウトされた場合にフェデレーション認証をバイパスするには、この URL を使用します。
テスト中は、ロックアウトをさらに防ぐために、セッションを Federation Management Console にログインしたままにしておきます。
Bypass SAML Mode の詳細については、バイパス SAML モードを参照してください。
Federation Management Console を使用して、ドメインと Microsoft Entra ID の統合をテストします。
プライベート ブラウザ ウィンドウで、Atlas ログイン ページに移動します。
確認済みのドメインのユーザー名(通常は電子メール アドレス)を入力します。
例
確認済みのドメインが mongodb.com
の場合は、username@mongodb.com
形式のメール アドレスを使用します。
Next をクリックします。ドメインを正しくマッピングした場合は、認証のために IdP にリダイレクトされます。認証に成功すると、Atlas にリダイレクトされます。
注意
IdP Login URL に直接移動することで、Atlas ログイン ページをバイパスできます。
(任意)組織をマッピングする
Federation Management Console を使用して、ドメインのユーザーに特定の Atlas 組織へのアクセス権を割り当てます。
Atlas で、Organization Settings ページに移動します。
まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー
[Organizations] メニューの横にある [Organization Settings] アイコンをクリックします。
[ Organization Settings ]ページが表示されます。
組織をフェデレーション アプリケーションに接続します。
[View Organizations] をクリックします。
Atlas には、あなたが
Organization Owner
. であるすべての組織が表示されます。フェデレーション アプリケーションにまだ接続していない組織では、Actions 列に Connect ボタンが表示されます。
目的の組織の Connect ボタンをクリックします。
組織に IdP を適用します。
管理コンソールの Organizations 画面で次の作業を行います。
IdP にマッピングする組織の Name をクリックします。
Identity Provider 画面で、Apply Identity Provider をクリックします。
Atlas は、Atlas にリンクしたすべての IdP を表示する Identity Providers 画面にユーザーを誘導します。
組織に適用する IdP については、Add Organizations をクリックします。
Apply Identity Provider to Organizations モーダルで、この IdP が適用される組織を選択します。
[Confirm] をクリックします。
(任意)高度なフェデレーション認証オプションを構成する
フェデレーション ユーザーと認証フローをより詳細に制御するために、フェデレーション認証の次の詳細オプションを構成できます。
注意
フェデレーティッド認証の次の詳細オプションを使用するには、組織をマッピングする必要があります。
ログイン URL を使用して Atlas にサインインします
Azure アプリケーションに割り当てたすべてのユーザーは、Login URLで Microsoft Entra ID の認証情報を使用して MongoDB Atlas にログインできます。ユーザーは、IdP にマッピングされた組織にアクセスできます。
重要
単一のドメインを複数の ID プロバイダーにマッピングできます。そうすると、MongoDB Cloud コンソールを使用してログインするユーザーは、ドメインにマップされた最初の一致する IdP に自動的にリダイレクトされます。
代替 ID プロバイダーを使用してログインするには、ユーザーは次のいずれかを行う必要があります。
希望する IdP を介して MongoDB Cloud ログインを開始します。または、
目的の IdPに関連付けられた Login URL を使用してログインします。
デフォルトの組織ロールを選択した場合、Login URL を使用して Atlas にログインする新しいユーザーには、指定したロールが付与されます。