MongoDB Ops Manager とバックアップデーモンは、OIDC を使用してサポートされているすべてのバッキング データベースに認証できます。これには、MongoDB Ops Manager アプリケーションデータベース、スナップショットストア、oplog ストア、および同期ストアが含まれます。また、S3 に基づくスナップショットストアと oplog ストアのメタデータデータベースも含まれます。MongoDB Ops Manager がサポートしている既存の認証メカニズムに加えて、OIDC 認証も利用できます。バッキング データベースの場合、OIDC を有効にしても、すでに構成している他の認証メカニズムを無効にしたり置き換えたりすることはありません。
このページでは、MongoDB Ops Manager がバッキング データベースに対してサポートする OIDC 認証モード、OIDC を有効にするための前提条件、およびこの機能の制限について説明します。このページで説明されている OIDC 認証は、MongoDB Ops Manager とバックアップデーモンがバッキング データベースに実行する接続にのみ適用されます。MongoDB Ops Manager 自体へのエンドユーザー認証は対象外です。
サポートされている OIDC モード
MongoDB Ops Manager は、バッキング データベース向けの 2 つの OIDC 認証モードをサポートしています。
モード | 説明 |
|---|---|
カスタム コールバック | クライアント認証情報フローを使用して、Keycloak、Okta、Azure などの OIDC 準拠のどの IdP からでもアクセストークンをリクエストできます。このモードには、クライアント ID とクライアント シークレットが必要です。 |
組み込み環境認証 | Azure、GCP、Kubernetes の配置環境から提供されるワークロード ID を使用します。MongoDB ドライバーは、環境からワークロード ID トークンを自動的に取得します。このモードでは、クライアント シークレットは必要ありません。 |
前提条件
バッキング データベースの OIDC 認証を有効にする前に、次の前提条件を確認してください。
バッキング データベースは MongoDB 7.0.11 以降を実行する必要があります。
MongoDB は、
MONGODB-OIDC認証メカニズムを許可し、使用する予定の IdP に対してoidcIdentityProvidersを定義するように構成する必要があります。カスタムコールバックモードでは、クライアント認証情報フローが有効になっている IdP クライアントが必要です。また、IdP のトークンエンドポイントとなる接続されたデバイスと JWKS エンドポイントとなる接続されたデバイスは HTTPS 経由でアクセス可能である必要があります。
組み込み環境認証の場合、配置環境には、Azure、GCP、またはKubernetesの有効なワークロードアイデンティティが既に用意されている必要があります。
MongoDB Ops Manager サーバーホストとバックアップデーモンホストの両方が、JVM または OS のトラストストアで IdP の TLS 証明書を信頼する必要があります。IdP エンドポイントとなる接続されたデバイスがプライベート認証局または自己署名証明書を使用しており、その証明書が信頼されていない場合、MongoDB Ops Manager とバックアップデーモンは、TLS ハンドシェイクエラーが発生し、トークンを取得できません。
制限
MongoDB Ops Manager は、MongoDB Ops Manager アプリケーションデータベースの OIDC 構成を
conf-mms.propertiesを介してのみ公開します。管理インターフェースには、MongoDB Ops Manager アプリケーションデータベース OIDC 構成用の UI は含まれていません。このページで説明されている OIDC 認証は、MongoDB Ops Manager とバックアップデーモンがバッキング データベースに実行する接続にのみ適用されます。MongoDB Ops Manager へのエンドユーザー認証には適用されません。
バージョン検証
MongoDB Ops Manager は、OIDC 構成を適用する前にターゲット MongoDB バージョンを検証します。検証は接続タイプによって異なります:
バックアップ ストアの場合、ターゲット MongoDB バージョンが 7.0.11 より古いバージョンの場合に、管理インターフェースまたは API を介してストアを作成または更新すると、失敗します。
MongoDB Ops Manager アプリケーションデータベースで、OIDC が有効になっている場合かつ MongoDB Ops Manager アプリケーションデータベースが 7.0.11 以前の MongoDB バージョンを実行している場合、MongoDB Ops Manager はスタートアップをブロックします。
再起動の要件
重要
MongoDB Ops Manager アプリケーションデータベース OIDC 設定を変更するには、MongoDB Ops Manager を再起動する必要があります。バックアップデーモンはスタートアップ時に同じ conf-mms.properties ファイルを読み込むため、バックアップデーモンも再起動してください。
バックアップ保存 (読み取り、oplog 保存、または同期ストアなど) の OIDC 設定を変更すると、MongoDB Ops Manager とバックアップデーモンの再起動も必要です。これは、バッキング ストアのユーザー名またはパスワードを変更するときの既存の動作と一致します。
フォールバックとロールバック
バッキング データベースの OIDC 認証をロールバックする必要がある場合は、該当する手順を使用します。
Ops Manager アプリケーションデータベースでは、 `
conf-mms.properties` で `mms.oidcEnabled` を `false` に設定し、接続構成で `OIDC` 以外の認証メカニズムを復元し、Ops Manager およびバックアップデーモンを再起動します。バックアップ保存 (する)の場合は、管理インターフェースまたはAPIを通じて、OIDCを無効化します。API を使用する場合は、その保存の非OIDC認証構成で
oidc: {enabled: false}を提出し、MongoDB Ops Manager と バックアップデーモン を再起動してください。