La ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô SAML 2.0 se puede utilizar para iniciar sesi¨®n en Áú»¢¶Ä²©.
Si solo se configura el inicio de sesi¨®n SAML, entonces el usuario tambi¨¦n debe existir en Áú»¢¶Ä²©; sin embargo, no se utilizar¨¢ su contrase?a de Áú»¢¶Ä²©. Si la ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô es exitosa, Áú»¢¶Ä²© buscar¨¢ la coincidencia con un nombre de usuario local con el atributo de nombre de usuario devuelto por SAML.
Es posible configurar aprovisionamiento de usuarios JIT (justo a tiempo) para usuarios SAML. En este caso, no es necesario que ya exista un usuario en Áú»¢¶Ä²©. La cuenta de usuario se puede crear cuando el usuario inicia sesi¨®n en Áú»¢¶Ä²© por primera vez.
Si el aprovisionamiento JIT est¨¢ habilitado, se debe especificar un grupo de usuarios para los usuarios dados de baja en la pesta?a ´¡³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô.
Adem¨¢s del aprovisionamiento JIT, tambi¨¦n es posible habilitar y configurar el aprovisionamiento SCIM (Sistema para la gesti¨®n de identidades entre dominios): gesti¨®n continua de cuentas de usuario. para aquellos usuarios que han sido creados mediante el aprovisionamiento de usuarios. El aprovisionamiento SCIM requiere un token API de Áú»¢¶Ä²© (con permisos de superadministrador) para la ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô en Áú»¢¶Ä²©.
Por ejemplo, si un usuario se mueve de un grupo SAML a otro, el usuario tambi¨¦n se mover¨¢ de un grupo a otro en Áú»¢¶Ä²©; Si un usuario es eliminado de un grupo SAML, el usuario tambi¨¦n ser¨¢ eliminado del grupo en Áú»¢¶Ä²© y, si no pertenece a ning¨²n otro grupo, se agregar¨¢ al grupo de usuarios para usuarios dados de baja.
Si SCIM est¨¢ habilitado y configurado, se aprovisionar¨¢ un usuario SAML en el momento en que el usuario inicie sesi¨®n en Áú»¢¶Ä²© y se actualizar¨¢ continuamente en funci¨®n de los cambios en SAML. Los usuarios SAML ya existentes no se aprovisionar¨¢n y solo se actualizar¨¢n los usuarios aprovisionados. Tenga en cuenta que solo se agregar¨¢n medios v¨¢lidos a un usuario cuando el usuario sea aprovisionado o actualizado.
Si SCIM no est¨¢ habilitado, se aprovisionar¨¢ un usuario SAML (y luego se actualizar¨¢) en el momento en que el usuario inicie sesi¨®n en Áú»¢¶Ä²©.
Si la ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô SAML est¨¢ habilitada, los usuarios podr¨¢n elegir entre iniciar sesi¨®n localmente o mediante el inicio de sesi¨®n ¨²nico SAML. Si se utiliza el aprovisionamiento JIT, solo es posible el inicio de sesi¨®n ¨²nico.
Para trabajar con Áú»¢¶Ä²©, un proveedor de identidad SAML (, , , etc.) debe configurarse de la siguiente manera:
<ruta_a_zabbix_ui>/index_sso.php?acs
<ruta_a_zabbix_ui>/index_sso.php?sls
<ruta_a_zabbix_ui>
ejemplos: https://example.com/zabbix/ui
, http://otro.ejemplo.com/zabbix
, ³ó³Ù³Ù±è://&±ô³Ù;³¦³Ü²¹±ô±ç³Ü¾±±ð°ù³å»å¾±°ù±ð³¦³¦¾±¨®²Ô³å¾±±è³å±è¨²²ú±ô¾±³¦²¹&²µ³Ù;/³ú²¹²ú²ú¾±³æ
Es necesario instalar php-openssl si desea utilizar la ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô SAML en el frontend.
Para utilizar la ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô SAML, Áú»¢¶Ä²© debe configurarse de la siguiente manera:
1. La clave privada y el certificado deben almacenarse en ui/conf/certs/, a menos que se proporcionen rutas personalizadas en zabbix.conf.php.
De forma predeterminada, Áú»¢¶Ä²© buscar¨¢ en las siguientes ubicaciones:
2. Todos los ajustes m¨¢s importantes se pueden configurar en la interfaz de Áú»¢¶Ä²©. Sin embargo, es posible especificar configuraciones adicionales en el archivo de configuraci¨®n.
±Ê²¹°ù¨¢³¾±ð³Ù°ù´Çs de configuraci¨®n, disponibles en el frontend de Áú»¢¶Ä²©:
±Ê²¹°ù¨¢³¾±ð³Ù°ù´Ç | ¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨®²Ô |
---|---|
Habilitar ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô SAML | Marque la casilla de verificaci¨®n para habilitar la ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô SAML. |
Habilitar aprovisionamiento JIT | Marque la casilla de verificaci¨®n para habilitar el aprovisionamiento de usuarios JIT. |
IDP entity ID | El identificador de entidad ¨²nico dentro del proveedor de identidad SAML. |
URL del servicio SSO | La URL a la que se redirigir¨¢ a los usuarios al iniciar sesi¨®n. |
URL del servicio SLO | La URL a la que se redirigir¨¢ a los usuarios al cerrar sesi¨®n. Si se deja vac¨ªo, no se utilizar¨¢ el servicio SLO. |
Atributo de nombre de usuario | Atributo SAML que se utilizar¨¢ como nombre de usuario al iniciar sesi¨®n en Áú»¢¶Ä²©. La lista de valores admitidos la determina el proveedor de identidad. Ejemplos: uid userprincipalname samaccountname username userusername urn:oid:0.9.2342.19200300.100.1.1 urn:oid:1.3.6.1.4.1.5923.1.1.1.13 urn:oid:0.9.2342.19200300.100.1.44 |
ID de entidad SP | El identificador ¨²nico del proveedor de servicios (si no coincide, se rechazar¨¢ la operaci¨®n). Es posible especificar una URL o cualquier cadena de datos. |
Formato de ID de nombre de SP | Define qu¨¦ formato de identificador de nombre se debe utilizar. Ejemplos: urn:oasis:names:tc:SAML:2.0:nameid-format:persistent urn:oasis:names:tc:SAML:2.0:nameid-format:transient urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos urn:oasis:names:tc:SAML:2.0:nameid-format:entity |
Firma | Marque las casillas de verificaci¨®n para seleccionar las entidades para las que se debe habilitar la firma SAML: Mensajes Afirmaciones Solicitudes de ²¹³Ü³Ù±ð²Ô³Ù¾±³¦²¹³¦¾±¨®²Ô Solicitudes de cierre de sesi¨®n Respuestas de cierre de sesi¨®n |
Encriptar | Marque las casillas de verificaci¨®n para seleccionar las entidades para las que se debe habilitar el cifrado SAML: ID de nombre Afirmaciones |
Inicio de sesi¨®n con distinci¨®n entre may¨²sculas y min¨²sculas | Marque la casilla de verificaci¨®n para habilitar el inicio de sesi¨®n con distinci¨®n entre may¨²sculas y min¨²sculas (deshabilitado de forma predeterminada) para los nombres de usuario. Por ejemplo, deshabilite el inicio de sesi¨®n con distinci¨®n entre may¨²sculas y min¨²sculas e inicie sesi¨®n con, por ejemplo, el usuario 'ADMIN' incluso si el usuario de Áú»¢¶Ä²© es 'Admin'. Nota que con el inicio de sesi¨®n con distinci¨®n entre may¨²sculas y min¨²sculas deshabilitado, se denegar¨¢ el inicio de sesi¨®n si existen varios usuarios en la base de datos de Áú»¢¶Ä²© con nombres de usuario similares (por ejemplo, Admin, admin). |
Configurar aprovisionamiento JIT | Marque esta casilla de verificaci¨®n para mostrar las opciones relacionadas con el aprovisionamiento de usuarios JIT. |
Atributo de nombre de grupo | Especifique el atributo de nombre de grupo para el aprovisionamiento de usuarios JIT. |
Atributo de nombre de usuario | Especifique el atributo de nombre de usuario para el aprovisionamiento de usuarios JIT. |
Atributo de apellido de usuario | Especifique el atributo de apellido de usuario para el aprovisionamiento de usuarios JIT. |
Mapeo de grupos de usuarios | Mapee un patr¨®n de grupo de usuarios SAML con el grupo de usuarios de Áú»¢¶Ä²© y el rol de usuario. Esto es necesario para determinar qu¨¦ grupo de usuarios/rol obtendr¨¢ el usuario aprovisionado en Áú»¢¶Ä²©. Haga clic en Agregar para agregar un mapeo. El campo Patr¨®n de grupo SAML admite comodines. El nombre del grupo debe coincidir con un grupo existente. Si un usuario SAML coincide con varios grupos de usuarios de Áú»¢¶Ä²©, el usuario se convierte en miembro de todos ellos. Si un usuario coincide con varios roles de usuario de Áú»¢¶Ä²©, el usuario obtendr¨¢ el nivel de permiso m¨¢s alto entre ellos. |
Mapeo de tipo de medio | Mapee los atributos de medio SAML del usuario (por ejemplo, correo electr¨®nico) con el medio del usuario de Áú»¢¶Ä²© para enviar notificaciones. |
Habilitar aprovisionamiento SCIM | Marque esta casilla de verificaci¨®n para habilitar el aprovisionamiento SCIM 2.0. |
Vea ejemplos de configuraci¨®n de proveedores de identidad SAML para el inicio de sesi¨®n y el aprovisionamiento de usuarios en Áú»¢¶Ä²© con:
Para el aprovisionamiento SCIM, especifique la ruta a la interfaz de Áú»¢¶Ä²© y a?¨¢dale api_scim.php, en el lado del proveedor de identidad, es decir:
Los atributos de usuario que se utilizan en Áú»¢¶Ä²© (usuario, nombre de usuario, apellido de usuario y atributos multimedia) deben agregarse como atributos personalizados y, si es necesario, el espacio de nombres externo debe ser el mismo que el esquema de usuario: urn:ietf:params:scim:schemas:core:2.0:User
.
Se pueden configurar par¨¢metros SAML adicionales en el archivo de configuraci¨®n de la interfaz de Áú»¢¶Ä²© (zabbix.conf.php):
Áú»¢¶Ä²© utiliza la biblioteca del (versi¨®n 3.4.1). La estructura de la secci¨®n $SSO['SETTINGS'] debe ser una estructura similar a la utilizada por la biblioteca. Para la descripci¨®n de las opciones de configuraci¨®n, ver ls de la biblioteca oficial.
Solo las siguientes opciones se pueden configurar como parte de $SSO['SETTINGS']:
Todas las dem¨¢s opciones se tomar¨¢n de la base de datos y no se pueden reemplazar. La opci¨®n debug ser¨¢ ignorada.
Adem¨¢s, si la interfaz de usuario de Áú»¢¶Ä²© est¨¢ detr¨¢s de un proxy o un balanceador de carga, se puede utilizar la opci¨®n personalizada use_proxy_headers:
Si utiliza un balanceador de carga para conectarse a la instancia de Áú»¢¶Ä²©, donde el balanceador de carga usa TLS/SSL y Áú»¢¶Ä²© no, debe indicar los par¨¢metros 'baseurl', 'strict' y 'use_proxy_headers' de la siguiente manera:
$SSO['SETTINGS']=['strict' => false, 'baseurl' => "https://zabbix.example.com/zabbix/", 'use_proxy_headers' => true]
Ejemplo de configuraci¨®n:
$SSO['SETTINGS'] = [
'security' => [
'signatureAlgorithm' => 'http://www.w3.org/2001/04/xmldsig-more#rsa-sha384'
'digestAlgorithm' => 'http://www.w3.org/2001/04/xmldsig-more#sha384',
//...
],
//...
];
The Áú»¢¶Ä²© frontend configuration file (zabbix.conf.php) can be used to configure SSO with Kerberos authentication and ADFS:
$SSO['SETTINGS'] = [
'security' => [
'requestedAuthnContext' => [
'urn:oasis:names:tc:SAML:2.0:ac:classes:Kerberos',
],
'requestedAuthnContextComparison' => 'exact'
]
];
In this case, in the SAML configuration SP name ID field set: