Docs Menu
Docs Home
/
MongoDB Cluster-to-Cluster Sync
/

ワークロード ID フェデレーションを使用した認証

項目一覧

  • 詳細

1.8.1 以降、mongosync Atlas Workload Identity Federation を使用して、 Microsoft AzureとGoogle Cloud Platformで実行中されているMongoDBクラスターへの接続を認証できます。

このセクションでは、ワークロード Identity Federation を使用する mongosync の例を示します。

string接続文字列で、 をauthMechanism に設定し、必要に応じてMONGODB-OIDC authMechanismPropertiesを設定します。

  • Microsoft Azureの場合は、authMechanismPropertiesENVIRONMENT:azure,TOKEN_RESOURCE:<audience> に設定します。注: Microsoft Azure Kubernetes Service(AKS)を使用している場合は、TOKEN_RESOURCE を省略します。

  • Google Cloud Platformの場合は、authMechanismPropertiesENVIRONMENT:gcp,TOKEN_RESOURCE:<audience> に設定します。

<audience> を、アクセス トークンが対象とするアプリケーションまたはサービスに置き換えます。詳細については、「 ID プロバイダーのフィールド 」を参照してください。

string接続文字列オプションの詳細については、「 認証オプション 」を参照してください。

次の mongosync の例では、 Microsoft Azure Instance Metadata Service(MDS)を使用してMongoDBクラスターに接続します。

./bin/mongosync \
--logPath /var/log/mongosync \
--cluster0 "mongodb://clusterOne01.fancyCorp.com:20020,clusterOne02.fancyCorp.com:20020,clusterOne03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:azure,TOKEN_RESOURCE:https://www.example.com" \
--cluster1 "mongodb://clusterTwo01.fancyCorp.com:20020,clusterTwo02.fancyCorp.com:20020,clusterTwo03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:azure,TOKEN_RESOURCE:https://www.example.com"

Microsoft Azure Kubernetes Service を使用してMongoDBクラスターに接続するには、次の環境変数を定義します。

環境変数
説明

AZURE_TENANT_ID

Azure tenant identifier.

AZURE_APP_CLIENT_ID

Azureアプリケーションクライアント識別子です。

AZURE_CLIENT_ID

認証するマネージド ID のAzureクライアント識別子。

AZURE_FEDERATED_TOKEN_FILE

Azureフェデレーティッド トークンのファイルパス。

Azureと変数の詳細については、 Microsoft Azureのドキュメントを参照してください。

次の mongosync の例では、環境変数を定義し、 MongoDBクラスターに接続します。

AZURE_TENANT_ID=08206ab8-16a0-406d-85e4-2f15f5620fac \
AZURE_APP_CLIENT_ID=b6c835da-e536-425b-9405-64bc471e245b \
AZURE_CLIENT_ID=f176d4eb-7dcd-4f66-bccf-aaa316ee61fd \
AZURE_FEDERATED_TOKEN_FILE=/var/run/secrets/azure/tokens/azure-identity-token \
./bin/mongosync \
--logPath /var/log/mongosync \
--cluster0 "mongodb://clusterOne01.fancyCorp.com:20020,clusterOne02.fancyCorp.com:20020,clusterOne03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:azure" \
--cluster1 "mongodb://clusterTwo01.fancyCorp.com:20020,clusterTwo02.fancyCorp.com:20020,clusterTwo03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:azure"

TOKEN_RESOURCE この例では は必要ありません。

次の mongosync の例では、 Google Cloud PlatformのMongoDBクラスターに接続しています。

./bin/mongosync \
--logPath /var/log/mongosync \
--cluster0 "mongodb://clusterOne01.fancyCorp.com:20020,clusterOne02.fancyCorp.com:20020,clusterOne03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:gcp,TOKEN_RESOURCE:https://www.example.com" \
--cluster1 "mongodb://clusterTwo01.fancyCorp.com:20020,clusterTwo02.fancyCorp.com:20020,clusterTwo03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:gcp,TOKEN_RESOURCE:https://www.example.com"

Google Cloud Platform環境変数は必要ありません。

  • mongosync 動作

  • 次への接続: mongosync

  • mongosync 状態

  • mongosync API エンドポイント

  • カットオーバー プロセスの終了

戻る

正規表現

項目一覧