mod_auth_openidc con proxy inverso Apache2.4

0

Estoy intentando configurar SSO con OpenID para la aplicación web Centreon. Aquí está la arquitectura: Apache 2.4 (windows) con mod_auth_openidc 2.3.9 Centreon 2.8.17

Solo quiero que un vhost se autentique a través de SSO, así que agregué todo el openidc conf al archivo vhost.conf:

<VirtualHost *:80>
    ServerName myserver.com

<Location />
AuthType openid-connect
Require valid-user
</Location>

OIDCProviderMetadataURL https://openid.com/fss/.well-known/openid-configuration
OIDCClientID MY-Centreon
OIDCClientSecret abcdefghijklmnop
OIDCProviderTokenEndpointAuth client_secret_post
OIDCRedirectURI https://myserver.com/ssoredirect
OIDCScope "openid profile"
OIDCCryptoPassphrase mypassphrase
OIDCAuthNHeader MY_HEADER
OIDCRemoteUserClaim sub
OIDCClaimPrefix myprefix_

    ProxyPreserveHost on
    ProxyPass / http://10.10.10.10/
    ProxyPassReverse / http://10.10.10.10/

</VirtualHost>

En Centreon lo único que tenemos que hacer es dar el nombre del Encabezado HTTP que contiene el inicio de sesión del usuario (ver documentación ): CENTREON SSO CONF

Cuando voy a https://myserver.com , me redirige a la página de inicio de sesión SSO. Desde aquí puedo identificarme y soy redirigido a Centreon pero no he iniciado sesión, por lo que me redirige a la página de inicio de sesión de Centreon. En centreon login.log tengo:

[WEB] No contact found with this login : ''

Muestra que Centreon no recibe nada en el encabezado "MY_HEADER", por lo que la autenticación SSO no funciona.

Información adicional: (no sé si puede ser útil): Mi proxy inverso Apache está escuchando en http (80) detrás de un equilibrador de carga que escucha en HTTPS (443) y lo transfiere al servidor en HTTP (80)

Mi pregunta : no estoy seguro del nombre del encabezado que contiene el nombre de usuario. En la configuración anterior, ¿alguien puede confirmar que Centreon debería recibir un encabezado "MY_HEADER" que contiene el nombre de usuario? Gracias

1

Si tiene este mensaje, significa que el usuario tal vez no exista en "Configuración> Usuarios> Contactos / Usuarios".

Tal vez necesite conectar su servidor LDAP y habilitar el usuario "Importación automática" para importar los usuarios que faltan automáticamente.

También hace mucho tiempo hubo un error en el que tenía que completar cualquier dirección de correo electrónico en el archivo 'Direcciones de clientes de la lista negra de SSO'; de lo contrario, enviará este error [WEB] No se encontró contacto con este inicio de sesión: '', puede intentar esto.

1
  • El usuario existe en la base de usuarios de Centreon. Mismo inicio de sesión que verifiqué dos veces. las "direcciones de cliente de la lista negra de SSO" son para la dirección IP, no para la dirección de correo electrónico. Traté de completar este campo con una dirección IP que no estamos usando, pero todavía devuelve "No se encontró ningún contacto con este inicio de sesión".
    Lark
    23 dic 2019 a las 9:13