AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

LDAP によるユーザー認証と承認の設定

注意

MongoDB 8.0 以降では、LDAP認証と認可は非推奨です。この機能は使用可能であり、 MongoDB 8 のサポート期間中に変更されずに動作し続けます。 LDAP は将来のメジャー リリースで削除される予定です。

詳細については、 LDAP の非推奨を参照してください。

注意

この機能は、次の配置では使用できません。

  • 無料クラスター

  • Flex クラスター

詳しくは、「 制限 」を参照してください。

Atlas は、 TLS 経由で独自の LDAP (Lightweight Directory Access Protocol)サーバーを使用して、すべての MongoDB クライアントからのユーザー認証と認可を管理する機能を提供します。単一の LDAPS TLS 経由の LDAP )構成がプロジェクト内のすべてのクラスターに適用されます。

If you enable user authorization with LDAP, you can create LDAP groups on the admin database by mapping LDAP groups to MongoDB roles on your Atlas databases. To use LDAP groups effectively, create additional projects within Atlas to control access to specific deployments in your organization, such as creating separate Atlas projects for development and production environments. You can then map an LDAP group to a role in the Atlas project to provide access to the desired deployment.

注意

ユーザー承認を有効にし、 LDAP ユーザーがどの LDAP グループにも属していない場合、Atlas はユーザーにデータベース ロールを割り当てません。 ユーザー認証を有効にし、ユーザー承認を無効にすると、Atlas は MongoDB データベース ロールを LDAP ユーザーに割り当てます。

独自の請求ニーズ、アラート設定、プロジェクト ノードを持つ複数の部門がある場合は、部門ごとまたはビジネス ユニットごとに新しいプロジェクトセットまたは新しい組織を作成することを検討してください。

注意

An explanation of LDAP is out of scope for the MongoDB documentation. Please review RFC 4515 and RFC 4516 or refer to your preferred LDAP documentation.

To manage LDAP users or groups, you must have Organization Owner or Project Owner access to Atlas.

Atlas で LDAP を使用してユーザー認証と承認を管理するには、次の前提条件を満たす必要があります。

  • MongoDB 7.0 以降を使用している Atlas クラスター。

  • LDAP サーバーを TLS で使用し、Atlas クラスターがVPCまたは VNet ピアリング接続またはクラスター ノードのパブリックIPアドレスのいずれかを使用してネットワーク経由でアクセスできます。

  • ユーザー 承認のみを目的として、 LDAP エントリ内の各ユーザーの属性として埋め込まれた LDAP グループ メンバーシップ。

LDAPSサービスが Atlas クラスターにアクセスするには、MongoDB では次の 2 つの構成のいずれかを推奨しています。

VPCまたは VNet の使用:

  1. VPC または VNet で LDAP サーバーを実行します。

  2. Atlas プロジェクトへのピアリング接続を確立します。

  3. LDAP サーバーのプライベート IP アドレスに解決される公開 FQDN を使用します。

データセンターの使用:

  1. パブリック IP アドレスに解決される公開 FQDN を使用して LDAP サーバーを実行します。

  2. Configure the LDAP server to allow inbound access from the Atlas cluster nodes' public IP addresses and the Atlas Gateway IP addresses. LDAP traffic can originate from either the data node or the Atlas Gateway, so include both sets of IP addresses in your access list.

LDAP認証と認可を有効にする場合は、次の点を考慮してください。

同じデータベースユーザーに対して、 LDAP認証と SCRAM 認証の両方を使用することはできません。

LDAP 認可が有効になっている場合、 OIDC 認証は使用できません。LDAP認可を有効にすると、LDAPサーバーはを含むすべての認可の認証を処理します。そのため、OIDC を使用して Atlas に接続しようとすると、接続が失敗します。OIDC 認証を使用するには、 LDAP 認可を無効にする必要があります。

LDAP 認証を有効にすると、Atlas が管理する X. 509証明書で認証するユーザーを使用してクラスターに接続することはできません。

LDAP 認証を有効にすると、 自己管理型の509 X. 証明書 で認証するユーザーを使用してクラスターに接続 でき ます。ただし、X. 509証明書内のユーザーの一般名は、LDAP 付きでデータベースにアクセスする権限を持つユーザーの識別名と一致する必要があります。

Atlas uses the full Distinguished Name (DN) of users in your LDAP server as the Atlas username. For example, an example LDAP user named ralph has the following username in Atlas:

cn=ralph,cn=Users,dc=aws-atlas-ldap-01,dc=myteam,dc=com

管理者が LDAPを使用してユーザー認証、またはユーザー認証と承認の両方を有効にしている場合、データベースユーザーはクライアントの接続stringで次のパラメーターを上書きする必要があります。

  • authSource でなければなりません $external

  • authenticationMechanism でなければなりません PLAIN

The following connection string for mongosh authenticates an LDAP user named rob:

mongosh "mongodb+srv://cluster0-tijis.mongodb.net/test?authSource=%24external" \
--authenticationMechanism PLAIN \
--username cn=rob,cn=Users,dc=ldaps-01,dc=myteam,dc=com

接続文字列をコピーする方法は、次のとおりです。

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、 Database見出しの下のClustersをクリックします。

[ Clusters (クラスター) ] ページが表示されます。

2

[Connect] をクリックします。

3

User DNとパスワードを使用して string を編集します。

注意

パスワード、データベース、または接続文字列に予約済みの URI 文字が含まれている場合は、それらの文字をエスケープする必要があります。たとえば、パスワードが @bc123 の場合、接続文字列でパスワードを指定するときは、%40bc123 などに指定して、@ の文字をエスケープする必要があります。詳細については、「接続文字列パスワードの特殊文字」を参照してください。

ネットワーク アドレス変換 を使用して、他の内部 IP アドレスまたはプライベート IP アドレスを参照するパブリック IP アドレスを使用して、Atlas がLDAPサーバーにトラフィックを許可できます。 特定のアクティビティtrigger によって、Atlas クラスターのパブリック アドレスの変更がIP されることに注意してください。

パブリック IP アドレスに基づくLDAPサーバーへのアクセスを許可した場合、Atlas クラスターのパブリック IP アドレスを変更すると、 LDAPアクセスが妨げられます。 LDAPアクセスを復元するには、新しい Atlas クラスターのパブリック IP アドレスをLDAPアクセス リストに追加します。

注意

同じ Atlas CLI コマンドを使用して、 LDAP 認証と LDAP 承認を設定できます。

Atlas CLI を使用して、指定したプロジェクトの 1 つの LDAP 構成を保存するには、次のコマンドを実行します。

atlas security ldap save [options]

コマンド構文とパラメータの詳細については、Atlas CLI AtlassecurityLDAP save に関する ドキュメントを参照してください。

プロジェクト内のすべてのクラスターに対してLDAPによるユーザー認証を設定するには、次の手順を使用します。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2

注意

この機能を有効にすると、追加コストが発生する可能性があります。 「高度なセキュリティ 」を参照してください。

3

複数のサーバーをカンマで区切って一覧表示できます。 異なるポートは使用できません。

4

自己署名証明書を提供できます。

5

Atlas が変更を配置するまで待ちます。 Atlas は、提供した構成の詳細を使用して、クラスターが LDAP サーバーに接続、認証、クエリを実行できることを確認します。

注意

同じ Atlas CLI コマンドを使用して、 LDAP 認証と LDAP 承認を設定できます。

Atlas CLI を使用して、指定したプロジェクトの 1 つの LDAP 構成を保存するには、次のコマンドを実行します。

atlas security ldap save [options]

コマンド構文とパラメータの詳細については、Atlas CLI AtlassecurityLDAP save に関する ドキュメントを参照してください。

プロジェクト内のすべてのクラスターに対して LDAP によるユーザー承認を設定するには、次の手順に従います。

重要

  • 承認を有効にする前に、 LDAP による認証を有効にする必要があります。

  • LDAP 承認を有効にして構成すると、LDAP 認証のみで構成されているデータベース ユーザーはデータベースにアクセスできなくなります。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2
3
4

ユーザーがアクションを実行しようとすると、Atlas はLDAP クエリ テンプレートを実行して、認証されたユーザーが属する LDAP グループを取得します。 Atlas では、アクションの実行が許可されているグループが少なくとも 1 つクエリで返される場合、アクションは許可されます。 クエリがアクションを実行する権限を持つグループを返さない場合、Atlas ではアクションは許可されません。

Atlas はクエリを実行するときに、 {USER}プレースホルダー内の認証されたユーザー名を置き換えます。 クエリは、 Server Hostnameで指定されたホストに対して相対的です。

クエリの形式は RFC4515 に準拠する必要があります。

クエリ テンプレートを指定しない場合、Atlas はデフォルト値{USER}?memberOf?baseを適用します。

5

Atlas が変更を配置するまで待ちます。 Atlas は、提供された構成の詳細を使用して、クラスターが LDAP サーバーに接続、認証、クエリを実行できることを確認します。

Atlas CLI を使用してプロジェクトのデータベースユーザーを作成するには、以下のコマンドを実行します。

atlas dbusers create [builtInRole]... [options]

コマンド構文とパラメータの詳細については、Atlas dbusers create の Atlas CLI ドキュメントを参照してください。

LDAP による承認を設定したら、次の手順に従って LDAP データベース ユーザーまたはグループを作成します。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

[ データベースとネットワーク アクセス ] ページが表示されます。

2
  1. まだ表示されていない場合は Database Users タブをクリックします。

  2. Add New Database User をクリックします。

3

Add New Database User モーダルウィンドウの Authentication Method セクションで、LDAP というラベルの付いたボックスを選択します。

注意

LDAP オプションが表示されない場合は、 LDAP で承認を設定する必要があります。

4

[0} で、単一ユーザーの場合は [1}] LDAP Typeを選択し、LDAP UserLDAP Group LDAPグループの場合は [ ] を選択します。

5

stringLDAPユーザーまたはLDAP グループの認証 を入力します。

projectName という名前のプロジェクト内の myUser という名前の LDAP ユーザーの場合、以下を入力します。

cn=myUser,ou=projectName,dc=com

LDAP 認可を有効にすると、LDAP ユーザーを作成できますが、クラスターにはアクセスできません。 LDAP 認可が有効になっているクラスターにアクセスするには、LDAP グループを追加します。

6

データベースユーザーの権限を選択します。次のいずれかの方法で、新しいユーザーに特権を割り当てることができます。

  • Select a built-in role from the Built-in Role dropdown menu. You can select one built-in role per database user within the Atlas UI. If you delete the default option, you can click Add Built-in Role to select a new built-in role.

  • カスタムロールが定義されている場合は、 Custom Rolesセクションを展開し、 Custom Rolesドロップダウンメニューから 1 つ以上のロールを選択できます。 さらにカスタムロールを追加するには、 Add Custom Roleをクリックします。 また、 Custom Rolesリンクをクリックして、プロジェクトのカスタムロールを表示することもできます。

  • Expand the Specific Privileges section and select one or more privileges from the Specific Privileges dropdown menu. Click Add Specific Privilege to add more privileges. This assigns the user specific privileges on individual databases and collections.

Atlas では、組み込みロール、複数のカスタムロール、および複数の特定の特権を 1 人のデータベースユーザーに適用できます。

適用されたロールまたは特権を削除するには、次をクリックします:削除するロールまたは特権の横にあるDelete

注意

Atlas はオプションを 1 つだけ選択した場合は、 Built-in RoleCustom Role 、またはSpecific Privilege選択の横にDeleteアイコン。 選択したロールまたは特権は、別のロールまたは特権を適用すると、削除できます。

承認の詳細については、MongoDB マニュアルの 「ロールベースのアクセス制御 」と 「組み込みロール 」を参照してください。

7

デフォルトでは、ユーザーはプロジェクト内のすべてのクラスターとフェデレーティッドデータベースインスタンスにアクセスできます。次の操作を行うことで、特定のクラスターおよびフェデレーティッドデータベースインスタンスへのアクセスを制限できます。

  1. Restrict Access to Specific Clusters/Federated Database InstancesON に切り替えます。

  2. [Grant Access To] リストから、ユーザーにアクセス権を付与するクラスターとフェデレーティッドデータベースインスタンスを選択します。

8
  1. Temporary UserまたはTemporary GroupOnに切り替えます。

  2. Atlas がユーザーまたはグループを削除できるようになるまでの時間を [ Temporary User DurationまたはTemporary Group Durationドロップダウンから選択します。 ユーザーまたはグループが存在する期間として、次のいずれかから選択できます。

    • 6 時間

    • 1 日

    • 1 週間

[ Database Usersタブには、Atlas が一時ユーザーまたはグループを削除するまでの残り時間が表示されます。 Atlas がユーザーまたはグループを削除すると、一時ユーザーのまたはグループの認証情報を使用するクライアントやアプリケーションは、クラスターにアクセスできなくなります。

9

Atlas CLI を使用して 1 つの LDAP 設定の詳細を返すには、次のコマンドを実行します。

atlas security ldap get [options]

コマンド構文とパラメータの詳細については、Atlas CLI ドキュメントの Atlas security LDAP get を参照してください。

Atlas UI を使用して現在のLDAP設定を表示する。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2

Atlas にLDAP認証設定が表示されます。

To view your LDAP authorization settings, toggle the button next to LDAP Authorization to On. Atlas displays your LDAP authorization settings.

注意

同じ Atlas CLI コマンドを使用して、 LDAP 認証設定と LDAP 承認設定を無効にできます。

Atlas CLI を使用して 1 つの LDAP 設定を削除するには、次のコマンドを実行します。

atlas security ldap delete [options]

コマンド構文とパラメータの詳細については、Atlas CLI ドキュメントの「 Atlas security LDAP delete 」を参照してください。

Atlas UI を使用して現在のLDAP設定を無効にするには:

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2

Atlas は LDAP 認証設定と LDAP 承認設定を無効にします。

To disable LDAP authorization only, toggle the button next to LDAP Authorization to OFF. Atlas disables your LDAP authorization settings.

次のチュートリアルを使用して、サードパーティの LDAP プロバイダーからのユーザーを認証および承認するように Atlas を設定します。