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

Workload Identity Federation によるユーザーの認証

Workload Identity Federation を使用して、 MongoDBにデータベースユーザーを追加できます。このアプローチにより、組織の IdP はユーザーのアクセスを管理し、データベース操作の安全で一元化された認証を確保できます。

注意

oidcIdentityProvidersの構成によって、ユーザーを認可するために必要なアプローチが決まります。

  • 内部認可を有効にするために useAuthorizationClaimフィールドを false に設定している場合は、 ユーザー ID を持つユーザーを承認します。

  • フィールドが true に設定されている場合は、 IdP グループを持つユーザーを承認します。

1

adminデータベースで、db.createRole() メソッドを使用して、IdP グループ ロールをMongoDBロールにマッピングするロールを作成します。

ロールを作成するには、次の形式を使用します。

<authNamePrefix>/<authorizationClaim>

oidcIdentityProvidersパラメータはauthNamePrefixフィールドとauthorizationClaimフィールドを提供します。 例:

db.createRole( {
role: "okta/Everyone",
privileges: [ ],
roles: [ "readWriteAnyDatabase" ]
} )
1

ユーザーを作成するときは、$externalデータベースにそのユーザーを作成する必要があります。 $externalデータベースに切り替えるには、次のコマンドを実行します。

use $external
2

ユーザーを作成し、 MongoDBデータベースに追加するには、db.createUser() コマンドを使用します。

フィールドには次の形式を使用します。user authNamePrefixauthorizationClaim の値はoidcIdentityProviders パラメータから取得されます。

<authNamePrefix>/<authorizationClaim>

MongoDBで、oktaauthNamePrefixjane.doeauthorizationClaim を持つユーザーを作成するには、次のコマンドを実行します。

db.createUser( {
user: "okta/jane.doe",
roles: [
{
role: "readWriteAnyDatabase",
db: "admin"
}
]
} )

Workload Identity Federation を使用して、次のサポートされているドライバーを使用して、アプリケーションをMongoDBに接続できます。