Docs Menu
Docs Home
/
データベース マニュアル
/ / / /

OAuth 2.0 を使用した Workload Identity Federation

Workload Identity Federation は OAuth 2.0 を使用して、アプリケーションがAzureサービスプリンシパル、 Azure Managed Identity、Google サービスアカウントなどの外部プログラム ID を使用してMongoDBにアクセスできるようにします。

重要

OpenID Connect(OIDC)はLinuxでのみサポートされています。

Workload Identity Federation を使用すると、次のことが可能になります。

  • 既存のクラウドプロバイダーまたはIdP(IdP)を介して、アプリケーションのMongoDB配置へのアクセスを管理します。

  • ロールベースのアクセス制御、認証情報のローテーション、ワークロード固有の権限などのセキュリティ ポリシーを強制します。

  • 個々のサービス アカウントを管理せずに、特定のアプリケーション、コンテナ、または仮想マシンへのアクセス権を付与します。

  • Workload Identity Federation を使用するには、 MongoDB Enterprise を使用し、 MongoDB 7.0.11 以降が必要です。

    MongoDB Enterprise を使用していることを確認するには、--version コマンドラインオプションをmongod またはmongos に渡します。

    mongod --version

    このコマンドの出力で string modules: subscriptionまたはmodules: enterpriseを探し、MongoDB Enterprise バイナリを使用していることを確認します。

  • Workload Identity Federation を使用すると、アプリケーションは OAuth 2.0 アクセス トークンを使用してMongoDBクラスターにアクセスできます。 アクセス トークンは、 Azure Entra IDやGoogle Cloud Platformなどの任意の外部IdPによって発行できます。

  • MongoDB はユーザー識別子と特権を保存しますが、秘密は保存しません。

Workload Identity Federation を構成して使用するには、次のタスクを実行します。

  1. ワークロード認証のための外部 ID プロバイダーの構成

    OAuth 2.0アプリケーションを、 Azure Service Principals、 Azure Managed Identity、Google サービスアカウントなど、OAuth 2.0 標準をサポートする IdP に登録します。

  2. Workload Identity Federation でMongoDB を構成する

    OAuth 2.0 とともに Workload Identity Federation を使用するようにMongoDBサーバーを構成します。

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

    MongoDBにロールを追加するか(OAuth、 外部認可、またはその両方)、 MongoDBにデータベースユーザーを追加するか( データベース管理認可の場合)、ワークロードID プリンシパルの権限を指定します。

MongoDB ドライバーは、ワークロード Identity Federation の 2 種類の認証フロー(組み込み認証とコールバック認証)をサポートしています。

サポートされているプリンシパル タイプを使用してサポートされているインフラストラクチャにアプリケーションを配置する場合は、組み込み認証を使用できます。 アプリケーションは、パスワードを指定したり、クラウドプロバイダーのメタデータサービスからJSON Web Token(JSON web token)を手動でリクエストしたりすることなく、 MongoDBクラスターにアクセスできます。 代わりに、選択したMongoDBドライバーは既存のプリンシパル識別子を使用して、アプリケーションが接続するときに自動的に Atlas クラスターに渡される、 JSON web token アクセス トークンをリクエストします。

実装は、選択した ドライバーのドキュメントを参照してください。

クラウドプロバイダー
インフラストラクチャ タイプ
プリンシパルタイプ

Google Cloud Platformプロバイダー(GCP)

コンピュート エンジン

GCP サービス アカウント

App Engine 標準環境

App Engine の柔軟な環境

クラウド関数

Google Run

Google Kubernetes Engine

クラウドビルド

Azure

Azure VM

Azure Managed IdP(ユーザーとシステムが割り当てられている)

OAuth 2.0 アクセス トークンをサポートしている任意のサービスでコールバック認証を使用できます。 Workload Identity Federation はコールバックメソッドを呼び出します。このメソッドでは、アプリケーションがWorkload Identity Federation を使用してMongoDBに接続するときに渡す必要があるJSON web token を、認可サーバーまたはクラウドプロバイダーからリクエストできます。

より実装の詳細については、選択したドライバーのドキュメントを確認してください。

戻る

Workforce IdP によるユーザーの認証

項目一覧