A partir de 1.8.1, puedes usar mongosync con Atlas Workload Identity Federation para autenticar conexiones a clústeres de MongoDB que se ejecutan en Microsoft Azure y Google Cloud Platform.
Ejemplos
Esta sección muestra mongosync ejemplos que utilizan Carga de trabajo Identity Federation.
En la cadena de conexión, establezca authMechanism en MONGODB-OIDC y establezca authMechanismProperties según sea necesario:
Para Microsoft Azure, establece
authMechanismPropertiesenENVIRONMENT:azure,TOKEN_RESOURCE:<audience>. Nota: OmitirTOKEN_RESOURCEsi se utiliza Microsoft Azure Kubernetes Service (AKS).Para Google Cloud Platform, establezca
authMechanismPropertiesenENVIRONMENT:gcp,TOKEN_RESOURCE:<audience>.
Reemplaza <audience> por la aplicación o servicio para el cual está destinado el token de acceso. Para obtener más detalles, consulte Campos del proveedor de identidad.
Para obtener detalles sobre las opciones de cadena de conexión, consulta 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 utilizando Microsoft Azure Kubernetes Service, define estas variables de entorno:
Variable de entorno | Descripción |
|---|---|
| Azure tenant identifier. |
| Identificador del cliente de la aplicación de Azure. |
| Identificador del cliente de Azure de la identidad gestionada para autenticarse. |
| 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 de 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.
Conéctate a clústeres de MongoDB en Google Cloud Platform
El siguiente ejemplo de 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.