Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
SE APLICA A: Azure Database for PostgreSQL: servidor flexible
La autenticación de Microsoft Entra es un mecanismo para conectarse al servidor flexible de Azure Database for PostgreSQL mediante identidades definidas en el identificador de Microsoft Entra. Con la autenticación de Microsoft Entra, puede administrar identidades de usuario de base de datos y otros servicios de Microsoft en una ubicación central, lo que simplifica la administración de permisos.
Entre las ventajas de usar el Microsoft Entra ID se incluyen:
- Autenticación de usuarios en servicios de Azure de forma 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 |
Soporte con usuarios invitados | No | Sí |
Capacidad de desactivar la autenticación de contraseñas | 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í |
Soporte 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 entra de Microsoft con el servidor flexible de Azure Database for PostgreSQL. Las flechas indican caminos de comunicación.
- La aplicación puede solicitar un token desde el punto de conexión de identidad de Azure Instance Metadata Service.
- Cuando se usa el Id. de cliente y el certificado, se realiza una llamada a Microsoft Entra ID para solicitar un token de acceso.
- Microsoft Entra ID devuelve un token de acceso de JSON Web Token (JWT). La aplicación envía el token de acceso en una llamada al servidor flexible.
- El servidor flexible valida el token con el Microsoft Entra ID.
Para conocer los pasos para configurar el identificador de Entra de Microsoft con el servidor flexible de Azure Database for PostgreSQL, consulte Configuración e inicio de sesión con el identificador de Entra de Microsoft para el servidor flexible de Azure Database for PostgreSQL.
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 que no son de Microsoft Entra se administran de forma similar a los roles normales.
Conexión mediante identidades de Microsoft Entra
La autenticación de Microsoft Entra admite los métodos siguientes para conectarse a una base de datos mediante identidades de Microsoft Entra:
- Autenticación con 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 el identificador de Entra de Microsoft con el servidor flexible de Azure Database for PostgreSQL, siga los pasos descritos en Configuración e inicio de sesión con microsoft Entra ID para el servidor flexible de Azure Database for PostgreSQL.
Otras consideraciones
Al usar la autenticación de Microsoft Entra con el servidor flexible de Azure Database for PostgreSQL, tenga en cuenta los siguientes puntos:
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 a la instancia de servidor flexible de Azure Database for PostgreSQL mediante una cuenta de Microsoft Entra. El administrador de Active Directory puede configurar los usuarios posteriores de la base de datos de Microsoft Entra.
Si una entidad de seguridad de Microsoft Entra se elimina del 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 deben transferir la propiedad y quitar 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 del usuario, 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 un usuario diferente. Por lo tanto, si se elimina un usuario de Microsoft Entra ID y se agrega un nuevo usuario con el mismo nombre, el nuevo usuario no puede 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, 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 después de crear el servidor, puede establecer tantos administradores de Microsoft Entra como desee; para ello, vaya 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 iniciar sesión como miembro del grupo Microsoft Entra e iniciar sesión como usuario individual de Microsoft Entra se encuentra 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.