A partir de 1.8.1, puedes utilizar mongosync con Atlas Workload Identity Federation para autenticar conexiones a clústeres MongoDB que se ejecutan en Microsoft Azure y Google Cloud Platform.
Ejemplos
En esta sección se muestran mongosync ejemplos que utilizan la federación de identidad de carga de trabajo.
En la cadena de conexión, establezca authMechanism en MONGODB-OIDC y establezca según sea authMechanismProperties necesario:
Para Microsoft Azure, establezca
authMechanismPropertiesenENVIRONMENT:azure,TOKEN_RESOURCE:<audience>. Nota: OmitaTOKEN_RESOURCEsi usa Microsoft Azure Kubernetes Service (AKS).Para Google Cloud Platform, establezca
authMechanismPropertiesenENVIRONMENT:gcp,TOKEN_RESOURCE:<audience>.
Reemplace <audience> con la aplicación o el servicio al que está destinado el token de acceso. Para más detalles, consulte Campos del proveedor de identidad.
Para obtener detalles sobre las opciones de cadena de conexión, consulte Opciones de autenticación.
Conecta clústeres de MongoDB usando el servicio de metadatos de instancias de Microsoft Azure
El siguiente mongosync ejemplo se conecta a clusters de MongoDB utilizando Microsoft Azure Instance Metadata Service (IMDS):
./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"
Conéctate a clústeres de MongoDB usando Microsoft Azure Kubernetes Service
Para conectarse a clústeres de MongoDB mediante Microsoft Azure Kubernetes Service, defina estas variables de entorno:
Variable de entorno | Descripción |
|---|---|
| Azure tenant identifier. |
| Identificador de cliente de la aplicación de Azure. |
| Identificador de cliente de Azure de la identidad administrada con la que se realizará la autenticación. |
| Ruta del archivo de token federado de Azure. |
Para obtener detalles sobre Azure y las variables, consulte la documentación de Microsoft Azure.
El siguiente ejemplo mongosync define las variables de entorno y se conecta a los clústeres de 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 no se requiere para este ejemplo.
Conectarse a clústeres de MongoDB en Google Cloud Platform
El siguiente ejemplo mongosync se conecta a clústeres de MongoDB en Google Cloud Platform:
./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"
No se requieren variables de entorno para Google Cloud Platform.