Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Usuario de la base de datos MongoDB Atlas
Campos de valores secretos
Los siguientes son los campos que deben estar incluidos en el secreto de Secrets Manager:
{
"username": "database username",
"password": "database password",
"clusterUrl": "cluster hostname",
"databaseName": "authentication database",
"groupId": "Atlas Project ID"
}
- nombre de usuario
-
El nombre de usuario de la base de datos MongoDB ()SCRAM-authenticated. Este usuario debe estar configurado en MongoDB Atlas para aceptar la autenticación SCRAM.
- contraseña
-
La contraseña actual del usuario de la base de datos MongoDB Atlas.
- URL del clúster
-
El nombre de host del clúster Atlas de MongoDB, por ejemplo.
cluster0.abc123.mongodb.netNo incluya el prefijomongodb+srv://. Se usa para verificar la nueva contraseña durante la rotación. - databaseName
-
La base de datos de autenticación donde se almacenan las credenciales del usuario. Normalmente
adminpara usuarios de SCRAM o$externalpara X.509/LDAP. - groupId
-
El identificador hexadecimal de 24 caracteres del proyecto Atlas (también conocido como identificador de grupo). Puede encontrarlo en la configuración de su proyecto Atlas.
Campos de metadatos secretos
Los siguientes son los campos de metadatos del usuario de la base de datos MongoDB Atlas:
{ "adminSecretArn": "arn:aws:secretsmanager:us-east-1:111122223333:secret:MongoDBAtlasServiceAccount", "apiVersion": "2025-03-12" }
- administrador SecretArn
-
El nombre de recurso de Amazon (ARN) del secreto que contiene las credenciales de OAuth de la cuenta de servicio Atlas (tipo: MongoDBAtlasServiceAccount) con permisos de administrador de acceso a la base de datos del proyecto. Este secreto de administrador se usa para autenticarse en la API de administración de Atlas para actualizar las contraseñas.
- apiVersion
-
(Opcional) La fecha de la versión de la API de administración de Atlas está en
yyyy-mm-ddformato. Este valor se usa en elAcceptencabezado comoapplication/vnd.atlas.{apiVersion}+json. Toma2025-03-12como valor predeterminado si no se especifica.
Flujo de uso
Este tipo de rotación utiliza una arquitectura de dos secretos. Se requiere un secreto de administrador que contenga las credenciales de OAuth de la cuenta de servicio Atlas (clientIdclientSecret,,serviceAccountId) para autenticarse en la API de administración de Atlas. El secreto de administrador debe ser del tipo. MongoDBAtlasServiceAccount
Puede crear su secreto mediante la CreateSecret llamada con el valor secreto que contiene los campos mencionados anteriormente y el tipo de secreto como MongoDBAtlasDatabaseUser. Las configuraciones de rotación se pueden configurar mediante una RotateSecret llamada. Debe proporcionar los metadatos adminSecretArn de la rotación. También debes proporcionar un ARN de rol en la RotateSecret llamada que otorgue al servicio los permisos necesarios para rotar el secreto. Para ver un ejemplo de una política de permisos, consulta Seguridad y permisos.
Como el secreto de administrador es de un tipo diferente (MongoDBAtlasServiceAccount) que el secreto de usuario (MongoDBAtlasDatabaseUser), la política de roles de rotación predeterminada por el que secretsmanager:resource/Type se rige no permitirá el acceso al secreto de administrador. Debes proporcionar de forma explícita el acceso del rol de rotación al secreto de administrador añadiendo una sentencia específica al MongoDBAtlasServiceAccount tipo o especificando el ARN del secreto de administrador directamente en la política del rol.
Durante la rotación, el controlador genera una contraseña nueva, llama a la API de administración de Atlas para actualizar la contraseña del usuario de la base de datos y verifica la nueva contraseña abriendo una conexión real de MongoDB con el clúster. Tenga en cuenta que hay un retraso de propagación de 5 a 10 segundos después de la actualización de la contraseña antes de que la capa de autenticación del clúster acepte la nueva contraseña.