Autenticación de Microsoft Entra con el Servidor flexible de Azure Database for PostgreSQL
SE APLICA A: Azure Database for PostgreSQL con servidor flexible
La autenticación de Microsoft Entra es un mecanismo de conexión al servidor flexible de Azure Database for PostgreSQL mediante identidades definidas en Microsoft Entra ID. Con la autenticación de Microsoft Entra, puede administrar las identidades de los usuarios de la base de datos y otros servicios de Microsoft en una ubicación central, lo que simplifica la administración de los permisos.
Las ventajas de utilizar Microsoft Entra ID incluyen:
- Autenticación de usuarios en los servicios de Azure de manera uniforme.
- Administración de directivas de contraseñas y rotación de contraseñas en un solo lugar.
- Compatibilidad con varias formas de autenticación, que pueden eliminar la necesidad de almacenar contraseñas.
- La capacidad de los clientes de administrar permisos de base de datos mediante grupos externos (Microsoft Entra ID).
- El uso de roles de base de datos de PostgreSQL para autenticar identidades a nivel de base de datos.
- Compatibilidad con la autenticación basada en tokens para aplicaciones que se conectan al servidor flexible de Azure Database for PostgreSQL.
Comparación de características y funcionalidades de Microsoft Entra ID entre las opciones de implementación
La autenticación de Microsoft Entra para el servidor flexible de Azure Database for PostgreSQL incorpora nuestra experiencia y comentarios recopilados del servidor único de Azure Database for PostgreSQL.
En la tabla siguiente se enumeran las comparaciones de alto nivel de las características y funcionalidades de Microsoft Entra ID entre el servidor único de Azure Database for PostgreSQL y el servidor flexible de Azure Database for PostgreSQL.
Característica o funcionalidad | Servidor único de Azure Database for PostgreSQL | Servidor flexible de Azure Database for PostgreSQL |
---|---|---|
Varios administradores de Microsoft Entra | No | Sí |
Identidades administradas (asignadas por el sistema y el usuario) | Parcial | Completo |
Compatibilidad con usuarios invitados | No | Sí |
Posibilidad de desactivar la autenticación de contraseña | No disponible | Disponible |
Capacidad de una entidad de servicio para actuar como miembro del grupo | No | Sí |
Auditorías de inicios de sesión de Microsoft Entra | No | Sí |
Compatibilidad con PgBouncer | No | Sí |
Funcionamiento de Microsoft Entra ID en el servidor flexible de Azure Database for PostgreSQL
En el diagrama de alto nivel siguiente se resume cómo funciona la autenticación cuando se usa la autenticación de Microsoft Entra con el servidor flexible de Azure Database for PostgreSQL. Las flechas indican las rutas de comunicación.
Para conocer los pasos para configurar Microsoft Entra ID con el servidor flexible de Azure Database for PostgreSQL, consulte Configuración e inicio de sesión con Microsoft Entra ID para Azure Database for PostgreSQL: servidor flexible.
Diferencias entre un administrador de PostgreSQL y un administrador de Microsoft Entra
Al activar la autenticación de Microsoft Entra para el servidor flexible y agregar una entidad de seguridad de Microsoft Entra como administrador de Microsoft Entra, la cuenta:
- Obtiene los mismos privilegios que el administrador de PostgreSQL original.
- Puede administrar otros roles de Microsoft Entra en el servidor.
El administrador de PostgreSQL solo puede crear usuarios basados en contraseñas locales. Pero el administrador de Microsoft Entra tiene la autoridad para administrar usuarios de Microsoft Entra y usuarios basados en contraseñas locales.
El administrador de Microsoft Entra puede ser un usuario de Microsoft Entra, un grupo de Microsoft Entra, una entidad de servicio o una identidad administrada. El uso de una cuenta de grupo como administrador mejora la capacidad de administración. Permite la adición y eliminación centralizadas de miembros del grupo en Microsoft Entra ID sin cambiar los usuarios ni permisos dentro de la instancia de servidor flexible de Azure Database for PostgreSQL.
Puede configurar varios administradores de Microsoft Entra simultáneamente. Tiene la opción de desactivar la autenticación de contraseña en una instancia de servidor flexible de Azure Database for PostgreSQL para mejorar los requisitos de auditoría y cumplimiento.
Nota:
Una entidad de servicio o una identidad administrada pueden actuar como administrador de Microsoft Entra totalmente funcional en el servidor flexible de Azure Database for PostgreSQL. Se trata de una limitación en el servidor único de Azure Database for PostgreSQL.
Los administradores de Microsoft Entra que cree a través de Azure Portal, una API o SQL tienen los mismos permisos que el usuario administrador normal que creó durante el aprovisionamiento del servidor. Los permisos de base de datos para roles de Microsoft Entra que no son administradores se administran de forma similar a los roles normales.
Conexión mediante identidades de Microsoft Entra
La autenticación de Microsoft Entra admite los siguientes métodos de conexión a una base de datos mediante identidades de Microsoft Entra:
- Autenticación de contraseña de Microsoft Entra
- Autenticación integrada de Microsoft Entra
- Microsoft Entra universal con autenticación multifactor
- Certificados de aplicación de Active Directory o secretos de cliente
- Identidad administrada
Después de autenticarse en Active Directory, se recupera un token. Este token es la contraseña para iniciar sesión.
Para configurar Microsoft Entra ID con el servidor flexible de Azure Database for PostgreSQL, siga los pasos indicados en Configuración e inicio de sesión con Microsoft Entra ID para Azure Database for PostgreSQL: Servidor flexible.
Otras consideraciones
Si desea que las entidades de seguridad de Microsoft Entra asuman la propiedad de las bases de datos de usuario dentro de cualquier procedimiento de implementación, agregue dependencias explícitas dentro del módulo de implementación (Terraform o Azure Resource Manager) para asegurarse de que la autenticación de Microsoft Entra esté activada antes de crear cualquier base de datos de usuario.
Varias entidades de seguridad de Microsoft Entra (usuario, grupo, entidad de servicio o identidad administrada) se pueden configurar como administrador de Microsoft Entra para una instancia del servidor flexible de Azure Database for PostgreSQL en cualquier momento.
Solo un administrador de Microsoft Entra para PostgreSQL puede conectarse inicialmente al servidor flexible de Azure Database for PostgreSQL utilizando una cuenta de Microsoft Entra. El administrador de Active Directory puede configurar los usuarios de la base de datos de Microsoft Entra sucesivos.
Si una entidad de seguridad de Microsoft Entra se elimina de Microsoft Entra ID, permanece como un rol de PostgreSQL, pero ya no puede adquirir un nuevo token de acceso. En este caso, aunque el rol coincidente todavía existe en la base de datos, no se puede autenticar en el servidor. Los administradores de bases de datos tienen que transferir la propiedad y quitar los roles manualmente.
Nota:
El usuario eliminado de Microsoft Entra todavía puede iniciar sesión hasta que expire el token (hasta 60 minutos a partir de la emisión del token). Si también quita el usuario del servidor flexible de Azure Database for PostgreSQL, este acceso se revoca inmediatamente.
El servidor flexible de Azure Database for PostgreSQL coincide con los tokens de acceso al rol de base de datos mediante el identificador de usuario único de Microsoft Entra, en lugar de usar el nombre de usuario. Si se elimina un usuario de Microsoft Entra y se crea un nuevo usuario con el mismo nombre, el Servidor flexible de Azure Database for PostgreSQL considera que es un usuario diferente. Por lo tanto, si un usuario se elimina de Microsoft Entra ID y se agrega un nuevo usuario con el mismo nombre, el nuevo usuario no podrá conectarse con el rol existente.
Preguntas más frecuentes
¿Cuáles son los modos de autenticación disponibles en el servidor flexible de Azure Database for PostgreSQL?
El servidor flexible de Azure Database for PostgreSQL admite tres modos de autenticación: solo autenticación de PostgreSQL, solo autenticación de Microsoft Entra y autenticación de PostgreSQL y Microsoft Entra.
¿Puedo configurar varios administradores de Microsoft Entra en mi servidor flexible?
Sí. Puede configurar varios administradores de Microsoft Entra en el servidor flexible. Durante el aprovisionamiento, solo puede establecer un único administrador de Microsoft Entra. Pero una vez creado el servidor, puede establecer tantos administradores de Microsoft Entra como quiera yendo al panel Autenticación.
¿Es un administrador de Microsoft Entra solo un usuario de Microsoft Entra?
No. Un administrador de Microsoft Entra puede ser un usuario, grupo, entidad de servicio o identidad administrada.
¿Puede un administrador de Microsoft Entra crear usuarios basados en contraseña local?
Un administrador de Microsoft Entra tiene la autoridad para administrar usuarios de Microsoft Entra y usuarios basados en contraseñas locales.
¿Qué ocurre cuando habilito la autenticación de Microsoft Entra en mi servidor flexible?
Al establecer la autenticación de Microsoft Entra en el nivel de servidor, la extensión PGAadAuth está habilitada y el servidor se reinicia.
¿Cómo puedo iniciar sesión con la autenticación de Microsoft Entra?
Puede usar herramientas de cliente como psql o pgAdmin para iniciar sesión en el servidor flexible. Use el identificador de usuario de Microsoft Entra como nombre de usuario y el token de Microsoft Entra como contraseña.
¿Cómo puedo generar mi token?
Puede generar el token mediante
az login
. Para más información, consulte Recuperar el token de acceso de Microsoft Entra.¿Cuál es la diferencia entre el inicio de sesión de grupo y el inicio de sesión individual?
La única diferencia entre el inicio de sesión como miembro de un grupo de Microsoft Entra y el inicio de sesión como usuario individual de Microsoft Entra radica en el nombre de usuario. Iniciar sesión como usuario individual requiere un identificador de usuario de Microsoft Entra individual. El inicio de sesión como miembro del grupo requiere el nombre del grupo. En ambos escenarios, se usa el mismo token individual de Microsoft Entra que la contraseña.
¿Cuál es la duración del token?
Los tokens de usuario son válidos hasta 1 hora. Los tokens de identidades administradas asignadas por el sistema son válidos durante hasta 24 horas.
Pasos siguientes
- Para obtener información sobre cómo crear y rellenar una instancia de Microsoft Entra ID y, a continuación, configurar Microsoft Entra ID con el servidor flexible de Azure Database for PostgreSQL, consulte Configuración e inicio de sesión con Microsoft Entra ID para el servidor flexible de Azure Database for PostgreSQL.
- Para obtener información sobre cómo administrar usuarios de Microsoft Entra para el servidor flexible de Azure Database for PostgreSQL, consulte Administración de roles de Microsoft Entra en Azure Database for PostgreSQL: servidor flexible.