Administración de usuarios de Amazon DocumentDB - Amazon DocumentDB

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.

Administración de usuarios de Amazon DocumentDB

En Amazon DocumentDB, los usuarios se autentican en un clúster junto con una contraseña. Cada clúster tiene credenciales de inicio de sesión principales que se establecen durante la creación del clúster.

nota

Todos los nuevos usuarios creados antes del 26 de marzo de 2020 han recibido los roles dbAdminAnyDatabase, readWriteAnyDatabase, y clusterAdmin. Se recomienda que vuelva a evaluar todos los usuarios y modifique los roles según sea necesario para aplicar los privilegios mínimos para todos los usuarios de los clústeres.

Para obtener más información, consulte Acceso a la base de datos mediante el control de acceso basado en roles.

Usuario principal y usuario serviceadmin

Un clúster recién creado de Amazon DocumentDB tiene dos usuarios: el usuario principal y el usuario serviceadmin.

El usuario principal es un usuario único con privilegios que puede realizar tareas administrativas y crear usuarios adicionales con roles. Cuando se conecta a un clúster de Amazon DocumentDB por primera vez, debe autenticarse con las credenciales de inicio de sesión principales. El usuario principal recibe estos permisos administrativos para un clúster de Amazon DocumentDB cuando se crea ese clúster y se le concede el rol de root.

El usuario serviceadmin se crea implícitamente cuando se crea el clúster. Cada clúster Amazon DocumentDB tiene un usuario serviceadmin que proporciona a AWS la capacidad de administrar su clúster. No puede iniciar sesión como, ni eliminarlo, cambiarlo de nombre, cambiar su contraseña o cambiar los permisos para serviceadmin. Cualquier intento de realizar una de estas operaciones producirá un error.

nota

El principal y los usuarios serviceadmin de un clúster de Amazon DocumentDB no se pueden eliminar y el rol de root para el usuario principal no se puede revocar.

Si olvida su contraseña de usuario principal, puede restablecerla con la Consola de administración de AWS o la AWS CLI.

Creación de usuarios adicionales

Después de conectarse como usuario principal (o cualquier usuario que tenga el rol createUser), puede crear un nuevo usuario, como se muestra a continuación.

db.createUser( { user: "sample-user-1", pwd: "password123", roles: [{"db":"admin", "role":"dbAdminAnyDatabase" }] } )

Para ver los detalles del usuario, puede utilizar el comando show users de la siguiente manera. También puede eliminar usuarios con el comando dropUser. Para obtener más información, consulte Comandos comunes.

show users { "_id" : "serviceadmin", "user" : "serviceadmin", "db" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ] }, { "_id" : "myPrimaryUser", "user" : "myPrimaryUser", "db" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ] }, { "_id" : "sample-user-1", "user" : "sample-user-1", "db" : "admin", "roles" : [ { "role" : "dbAdminAnyDatabase", "db" : "admin" } ] }

En este ejemplo, el nuevo usuario sample-user-1 se atribuye a la base de datos admin. Esto se aplica siempre en el caso de un usuario nuevo. Amazon DocumentDB no tiene el concepto de una authenticationDatabase y, por lo tanto, toda la autenticación se realiza en el contexto de la base de datos admin.

Al crear usuarios, si omite el campo db al especificar el rol, Amazon DocumentDB atribuirá implícitamente el rol a la base de datos en la que se está emitiendo la conexión. Por ejemplo, si la conexión se emite contra la base de datos sample-database y ejecuta el siguiente comando, el usuario sample-user-2 se creará en la base de datos del admin y tendrá permisos readWrite para la base de datos sample-database.

db.createUser( { user: "sample-user-2", pwd: "password123", roles: ["readWrite"] } )

La creación de usuarios con roles cuyo ámbito se encuentra en todas las bases de datos (por ejemplo, readInAnyDatabase) requiere que se encuentre en el contexto de la base de datos admin al crear el usuario o que indique explícitamente la base de datos para el rol al crear el usuario.

Para cambiar el contexto de la base de datos, puede utilizar el siguiente comando.

use admin

Para obtener más información sobre el control de acceso basado en roles y la aplicación de privilegios mínimos entre los usuarios del clúster, consulte Acceso a la base de datos mediante el control de acceso basado en roles.

Rotación automática de contraseñas para Amazon DocumentDB

Con AWS Secrets Manager, puede reemplazar las credenciales codificadas en el código (incluidas contraseñas), con una llamada a la API de Secrets Manager para recuperar el secreto mediante programación. Esto ayuda a garantizar la integridad del secreto si alguien examina el código, dado que el secreto sencillamente no está allí. Asimismo, puede configurar Secrets Manager para rotar el secreto automáticamente de acuerdo con la programación que especifique. Esto le permite reemplazar secretos a largo plazo con secretos a corto plazo, lo que contribuye a reducir significativamente el riesgo de peligro.

Con Secrets Manager, puede rotar automáticamente las contraseñas de Amazon DocumentDB (es decir, secretos) mediante una función de AWS Lambda que Secrets Manager proporciona.

Para obtener más información acerca AWS Secrets Manager y la integración nativa con Amazon DocumentDB, consulte lo siguiente: