Con la pre-autenticación, WebFOCUS confía en que la autenticación ya ha tenido lugar; la información sobre la identidad del usuario pasa a WebFOCUS siguendo uno de los métodos descritos en los siguientes temas. En esta configuración, WebFOCUS no presenta una página de inicio de sesión a los usuarios. Algunas características de WebFOCUS, como el acceso anónimo o la opción de que los usuarios cambien sus propias contraseñas, deben estar desactivadas.
La pre-autenticación ofrece muchas ventajas, como el inicio de sesión único (SSO en sus siglas en inglés) de usuario o la autenticación centralizada de administradores, eliminando la necesidad de sincronizar las contraseñas de WebFOCUS con otros orígenes. En función del método de autenticación elegido, puede que sean necesarios pasos adicionales para garantizar que la pre-autenticación no quede expuesta. Por ejemplo, si el ID de usuario pre-autenticado va a ser pasado en un encabezado HTTP, debe seguir ciertos pasos para asegurar que el valor del encabezado no quede expuesto.
Si el usuario inicia la sesión desde una zona de seguridad configurada para la pre-autenticación, WebFOCUS:
Para los portales, desactive el vínculo de cierre de sesión de la barra de menú o establezca un valor adecuado para la propiedad IBI_Signout_Redirect_URL y, de este modo, evitar un ciclo interminable de intentos de desconexión.
Por ejemplo, si está usando un sistema de administración de acceso web u OpenID, establezca IBI_Signout_Redirect_URL en el valor especificado en la documentación del proveedor. Si está usando la Autenticación de Windows, establezca el valor en un URL completamente cualificado, fuera de la aplicación web WebFOCUS. Para más información sobre la propiedad IBI_Signout_Redirect_URL, consulte Propiedades de seguridad.
Cómo: |
Puede configurar WebFOCUS para que pre-autentique los usuarios de Microsoft Windows que han sido autenticados por Microsoft Internet Information Services (IIS), con las opciones de Autenticación de Windows o autenticación básica. Esta configuración requiere un complemento que habilita a IIS para que pase las identidades de los usuarios de forma segura al contenedor de aplicaciones Java que alberga WebFOCUS. El siguiente procedimiento incluye información adicional para las configuraciones de IIS con Tomcat e IIS con WebSphere.
Éstos son algunos de los problemas que puede tener con la Autenticación de Windows:
Antes de empezar, siga estos pasos si aún no la hecho:
Además, recomendamos que haga una copia de seguridad del archivo securitysettings.xml antes de efectuar cualquier cambio.
Para más información sobre cómo crear una cuenta de administrador WebFOCUS, consulte Cómo Cree una cuenta de administrador WebFOCUS para orígenes externos. Para más información sobre cómo activar la zona alternativa, consulte Cómo Activar la zona alternativa. Para más información sobre cómo activar el acceso de superusuario, consulte Cómo Activar acceso de superusuario..
<!-- Define an AJP 1.3 Connector on port 8009 --> <Connector port="8009" protocol="AJP/1.3" tomcatAuthentication="false" redirectPort="8443" />
Pulse Guardar y salga de la Consola de administración.
Para más información sobre la propiedad IBI_Signout_Redirect_URL, consulte Propiedades de seguridad.
Si, como se recomienda, ha activado la zona alternativa, ya puede entrar a WebFOCUS con la autenticación interna (equipos con WebFOCUS). El URL es http://localhost/ibi_apps.
Alternativamente, la pre-autenticación permite entrar a WebFOCUS iniciando la sesión en http://machinename/ibi_apps, desde cualquier estación de trabajo.
Note: Si el navegador web no está configurado para utilizar automáticamente la Autenticación de Windows Authentication con el dominio, el navegador solicitirá las credenciales de usuario al iniciar la sesión con http://machinename.domain.com/ibi_apps.
Cómo: |
Puede usar los sistemas de administración de acceso web, incluidos CA SiteMinder, Oracle Access Manager (anteriormente Oblix) e IBM Tivoli Access Manager WebSEAL, para activar el inicio de sesión único (SSO en sus siglas en inglés) con WebFOCUS. Estos sistemas interceptan las solicitudes a WebFOCUS, garantizan que el usuario ha sido autenticado y autorizado para entrar a WebFOCUS y, a continuación, proporcionan un encabezado HTTP para que WebFOCUS localice el ID de usuario pre-autenticado. Puesto que estos sistemas interceptar y rellenan el encabezado HTTP en cada solicitud, WebFOCUS confía en que el ID de usuario del encabezado sea válido.
Antes de empezar, siga estos pasos si aún no la hecho:
Además, recomendamos que haga una copia de seguridad del archivo securitysettings.xml antes de efectuar cualquier cambio.
Para más información sobre cómo crear una cuenta de administrador WebFOCUS, consulte Cómo Cree una cuenta de administrador WebFOCUS para orígenes externos. Para más información sobre cómo activar la zona alternativa, consulte Cómo Activar la zona alternativa. Para más información sobre cómo activar el acceso de superusuario, consulte Cómo Activar acceso de superusuario..
Nota: Algunas configuraciones de servidor web modifican los nombres de los encabezados HTTP. Por ejemplo, los subrayados (_) pueden quedar reemplazados por guiones (-) y las mayúculas convertirse en minúsculas.
Para más información sobre la propiedad IBI_Signout_Redirect_URL, consulte Propiedades de seguridad.
Para CA SiteMinder, el valor, normalmente, es SM_USER. Para IBM Tivoli Access Manager WebSEAL, el valor, normalmente, es iv-user. No hay un valor por defecto para Oracle Access Manager. Para más información, póngase en contacto con su administrador de Oracle Access Manager.
Cómo: |
Los contenedores Java, como Apache Tomcat, IBM WebSphere y Oracle WebLogic, son capaces de autenticar usuarios para WebFOCUS. El contenedor Java emplea la llamada getRemoteUser() para proporcionar los ID de usuario a WebFOCUS.
Antes de empezar, siga estos pasos si aún no la hecho:
Además, recomendamos que haga una copia de seguridad del archivo securitysettings.xml antes de efectuar cualquier cambio.
Para más información sobre cómo crear una cuenta de administrador WebFOCUS, consulte Cómo Cree una cuenta de administrador WebFOCUS para orígenes externos. Para más información sobre cómo activar la zona alternativa, consulte Cómo Activar la zona alternativa. Para más información sobre cómo activar el acceso de superusuario, consulte Cómo Activar acceso de superusuario..
Para más información sobre la propiedad IBI_Signout_Redirect_URL, consulte Propiedades de seguridad.
Cómo: |
El proveedor de OpenID puede autenticar los usuarios en WebFOCUS. Google Accounts y Yahoo® son algunos de los proveedores compatibles, aunque también puede usar uno interno. WebFOCUS sólo es compatible con un proveedor por instalación. Asegúrese de haber configurado el URL de cierre de sesión adecuado.
Para más información acerca de cómo configurar OpenID, consulte la documentación del proveedor.
Antes de empezar, siga estos pasos si aún no la hecho:
Además, recomendamos que haga una copia de seguridad del archivo securitysettings.xml antes de efectuar cualquier cambio.
Para más información sobre cómo crear una cuenta de administrador WebFOCUS, consulte Cómo Cree una cuenta de administrador WebFOCUS para orígenes externos. Para más información sobre cómo activar la zona alternativa, consulte Cómo Activar la zona alternativa. Para más información sobre cómo activar el acceso de superusuario, consulte Cómo Activar acceso de superusuario..
claimedIdentityFieldValue se encuentra establecido, por defecto, en el URL correspondiente para Google Accounts. El valor por defecto de attributeNameForAccountID es email.
Por ejemplo, para Google Accounts, introduzca:
https://www.google.com/accounts/Logout
Para más información sobre la propiedad IBI_Signout_Redirect_URL, consulte Propiedades de seguridad. Para más información acerca de las direcciones de cierre de sesión de OpenID, consulte la documentación del proveedor.
WebFOCUS es compatible con el inicio de sesión único de SAML 2.0. Para más información acerca de cómo configurar SAML con CA SiteMinder o CA CloudMinder, consulte:
https://techsupport.informationbuilders.com/tech/wbf/wbf_rln_saml_2.html
Cómo: |
Puede configurar WebFOCUS para que use la pre-autenticación del servicio de autenticación central (CAS en sus siglas en inglés). CAS permite que los clientes, como las aplicaciones web, autentiquen los usuarios sin acceder a las credenciales de seguridad. En su lugar, el cliente se autentica a sí mismo en el servidor CAS, que, a continuación, devuelve un vale de seguridad al cliente, para que valide que la conexión es segura. El cliente valida el vale proporcionando uno y su propio identificador de servicio al servidor CAS; CAS devuelve información fiable indicando si el usuario individual ha sido autenticado.
Si el servidor CAS utiliza un certificado autofirmado, en la mayoría de los casos, tendrá que añadir el certificado de firma de autoridad a los certificados raíz fiables de la JVM utilizada por WebFOCUS.
Antes de empezar, siga estos pasos si aún no la hecho:
Además, le recomendamos que haga una copia de seguridad del archivo securitysettings.xml antes de efectuar cualquier cambio.
Para más información sobre cómo crear una cuenta de administrador WebFOCUS, consulte Cómo Cree una cuenta de administrador WebFOCUS para orígenes externos. Para más información sobre cómo activar la zona alternativa, consulte Cómo Activar la zona alternativa. Para más información sobre cómo activar el acceso de superusuario, consulte Cómo Activar acceso de superusuario..
Especifica el protocolo, puerto y URL de inicio de sesión del servidor CAS.
Especifica el protocolo, puerto y contexto de WebFOCUS.
Especifica el protocolo, puerto y contexto del servidor CAS.
Nota: No es necesario modificar las propiedades sendRenew, key y ticketValidatorClassName.
Al desconectarse de WebFOCUS con este URL, se dan por finalizadas las sesiones de WebFOCUS y de CAS.
Para más información sobre la propiedad IBI_Signout_Redirect_URL, consulte Propiedades de seguridad. Para más información acerca de las direcciones de cierre de sesión de CAS, consulte la documentación del proveedor.
Si está usando un certificado firmado por una autoridad de certificado fiable, WebFOCUS ha quedado configurado para usar la autenticación de CAS. Si está usando un certificado autofirmado, además tendrá que añadir el certificado de firma de autoridad a los certificados raíz fiables de la JVM utilizada por WebFOCUS. Para más información, consulte Cómo Añadir un certificado autofirmado al Almacén de certificados CAS .
El siguiente código se trata de un ejemplo de cómo alterar la sección casPreference del archivo securitysettings.xml para que implemente la pre-autenticación CAS.
<bean id="casPreference" class="com.ibi.webapp.security.config.WFCasPreference"> <property name="loginUrl" value="https://CASServer:port/cas/login"/> <property name="serviceUrl" value="http://WebFOCUSServer:port/ibi_context/"/> <property name="sendRenew" value="false"/> <property name="key" value=""/> <property name="casServerUrlPrefix" value="https://CASServer:port/cas"/> <property name="ticketValidatorClassName" value=""/> </bean>
donde:
Es el servidor y puerto de CAS.
Es el servidor, puerto y directorio raíz de contexto de WebFOCUS.
Si está usando un certificado autofirmado, además tendrá que añadir el certificado a los certificados raíz fiables de la JVM utilizada por WebFOCUS.
Nota: Esta tarea no es necesaria si está usando un certificado firmado por una autoridad de certificados fiable.
..\..\..\bin\keytool -import -alias youralias -keystore cacerts -file path\to\youralias.crt
donde:
Es el alias asignado a su certificado.
Es el archivo del certificado.
Los errores de validación de CAS pueden producirse con el uso de certificados autofirmados que no han sido añadidos al almacén de certificados fiables. En estos casos, recibirá un error similar a éste:
[YYYY-MM-DD hh:mm:ss,sss] ERROR
org.jasig.cas.client.validation.Cas20ServiceTicketValidator
http-apr-8080-exec-2 - javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source)
.
.
.
... 60 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)
at java.security.cert.CertPathBuilder.build(Unknown Source)
... 66 more
WebFOCUS es capaz de integrarse en otras aplicaciones para ofrecer al usuario la experiencia de inicio de sesión único (SSO en sus siglas en inglés). Por ejemplo, el usuario puede entrar a una aplicación web existente con credenciales validadas por la misma. Si pulsa los botones o vínculos dirigidos a un portal WebFOCUS, puede hacer que el usuario entre automáticamente a WebFOCUS, en lugar de obligarlo a introducir nuevamente su contraseña.
La mejor manera de alcanzar este grado de integración es a través de la implementación de un filtro personalizado de miniservidor Java, dentro de la aplicación web WebFOCUS. El Servicio de soporte al cliente puede desarrollar una solución personalizada basada en IBIServletFilter. Como alternativa, si sus usuarios acceden a WebFOCUS por IIS, puede instalar un módulo HTTP utilizando ASP.NET en IIS.
Las soluciones personalizadas suelen seguir uno de estos métodos:
El usuario inicia la sesión WebFOCUS haciendo clic en un vínculo o en una pestaña de la aplicación web existente. La aplicación web crea una cadena (token) aleatoria y la almacena, junto con el ID de usuario, en una base de datos a la que tiene acceso WebFOCUS. El token pasa a WebFOCUS con la solicitud de conexión de una redirección HTTP 302, iniciada por el servidor de aplicaciones o una solicitud de JavaScript asíncrona, iniciada por la aplicación en el navegador web.
Cuando IBIServletFilter determina que no hay ninguna sesión WebFOCUS asociada a esta solicitud SSO, el miniservidor envía una solicitud ODBC a la base de datos compartida para que recupere el ID de usuario asociado al token. Se borra la fila de la base de datos para impedir que el token vuelva a utilizarse. El ID de usuario queda establecido como valor de un encabezado HTTP pasado a WebFOCUS, en la pre-autenticación.
El usuario inicia la sesión WebFOCUS haciendo clic en un vínculo o en una pestaña de la aplicación web existente. La aplicación web crea un hash con el ID de usuario, que incorpora un secreto compartido con IBIServletFilter. A continuación, el hash pasa a WebFOCUS. IBIServletFilter genera un hash con el ID de usuario, utilizando el mismo algoritmo y secreto, y lo compara con el hash pasado en la solicitud. Si coinciden, el ID de usuario es fiable. Si no coinciden, se rechaza la conexión.
Puede que la aplicación web sea capaz de generar una aserción SAML con el ID de usuario y otra información. Puede modificar IBIServletFilter para que valide la aserción SAML pasada por la aplicación y establezca un encabezado HTTP con el ID de usuario.
Nota: El hecho de pasar el ID de usuario en un encabezado HTTP o en una cookie no crea una implementación SSO segura. También debe proporcionar un método de garantizar que el ID de usuario sea válido.
Por ejemplo, si sólo pasa el ID de usuario en un encabezado HTTP llamado SSO_USER, un usuario no autorizado podría usar un complemento de navegador web para generar ese encabezado HTTP y rellenarlo con cualquier ID de usuario válido. WebFOCUS no sabría que el encabezado HTTP fue creado por un proceso no autorizado. El uso de tokens de seguridad, secretos compartidos o la integración SAML proporciona la validación necesaria para evitar estos casos.
Para obtener más información acerca de una solución de SSO personalizada, póngase en contacto son el Servicio de soporte al cliente.
En esta sección: Cómo: |
El Departamento de Defensa de Estados Unidos emite una tarjeta inteligente llamada tarjeta de acceso común (CAC en sus siglas en inglés) para la identificación de todo el personal y contratistas del Departamento de Defensa. Cuando se utiliza junto con una configuración del lector de tarjetas adecuada, en un equipo de usuario final, un servidor web configurado para solicitar certificados de lado del cliente, siguiendo el estándar de infraestructura de clave pública (PKI), puede usar estas tarjetas para llevar a cabo la autenticación basada en certificados.
WebFOCUS puede recuperar los atributos de Nombre común o Nombre principal de usuario, a partir del certificado de usuario proporcionado, y usarlos para rellenar la variable REMOTE_USER. Esto ofrece un inicio de sesión WebFOCUS fiable, a través de CAC.
Debe configurar el servidor web para que solicite a los usuarios los certificados de lado del cliente, mediante PKI. El software de lectura de tarjetas ActivIdentity™ debe estar instalado correctamente en los equipos del usuario final para que el Cliente WebFOCUS puede confiar en el certificado del cliente. Para más información acerca de la configuración del software ActivIdentity, consulte la documentación proporcionada por el Departamento de Defensa estadounidense.
Este procedimiento es similar a la configuración de pre-autenticación con la seguridad de contenedores Java. Antes de empezar, siga estos pasos si aún no la hecho:
El ID de usuario de la cuenta de administrador WebFOCUS debe tratarse del valor del atributo de certificado elegido para la propiedad IBI_PKI_Userid_Source.
Por ejemplo, si el nombre común (CN) del administrador de WebFOCUS es Joe.Smith.1122334455 y ha establecido IBI_PKI_Userid_Source en cn, el ID de usuario WebFOCUS debe ser Joe.Smith.1122334455. Por ejemplo, si el nombre principal del usuario (UPN) del administrador de WebFOCUS es 1122334455@mil y ha establecido IBI_PKI_Userid_Source en upn, el ID de usuario WebFOCUS debe ser 1122334455@mil.
Para más información sobre cómo crear una cuenta de administrador WebFOCUS, consulte Cómo Cree una cuenta de administrador WebFOCUS para orígenes externos. Para más información sobre cómo activar la zona alternativa, consulte Cómo Activar la zona alternativa. Para más información sobre cómo activar el acceso de superusuario, consulte Cómo Activar acceso de superusuario..
Los atributos se activan en cuanto quedan guardados. No es necesario reciclar el servidor de aplicaciones.
Activa el filtro PKI, que extrae el atributo especificado en la propiedad IBI_PKI_Userid_Source para rellenar REMOTE_USER. Managed Reporting y ReportCaster deben estar configurados por separado, para poder usar la variable de inicio de sesión REMOTE_USER. El valor predeterminado es Falso. Para más información, consulte Cómo configurar la pre-autenticación.
Especifica el atributo de certificado que debe usarse para rellenar el id. de usuario especificado por REMOTE_USER. Los valores posibles son:
cn.El nombre común del certificado. Por ejemplo, Joe.Smith.1122334455.
subject. El atributo de asunto del certificado. Este es el valor predeterminado.
upn.El atributo userPrincipalName de la sección Nombre de asunto alternativo del certificado. Por ejemplo, 1122334455@mil.
Debido a la codificación de UPN, debe disponer de una copia de la biblioteca Bouncy Castle Java Cryptography en su ruta de clase. Puede descargarla desde el sitio web de Bouncy Castle, http://www.bouncycastle.org/java.html.
Especifica una lista de direcciones IP, separadas por un punto y coma, que podrán pasar el filtro PKI incluso cuando la solicitud no presente un certificado de cliente válido. La dirección IP del servidor de distribución ReportCaster debe estar incluida en la lista, para que el Servidor de distribución pueda recuperar contenido WebFOCUS. La lista puede tener este aspecto:
127.0.0.1;127.0.0.2
Si no se especifica la dirección IP y no se incluye un certificado de cliente, el filtro PKI devolverá un error 403 prohibido al acceder a él.
WebFOCUS es compatible con el inicio de sesión único (SSO) entre un navegador web, el Cliente WebFOCUS y el Servidor de informes WebFOCUS para Windows. Esto incluye la compatibilidad con suplantaciones en el Servidor de informes, es decir que la capacidad SSO puede ser ampliada a los adaptadores de RDBMS compatibles con conexiones fiables, incluido Microsoft SQL Server. Este tema explica cómo configurar el entorno de SSO, que utiliza la compatibilidad nativa de Kerberos en Active Directory.
La capacidad SSO requiere un dominio de Active Directory, en Windows 2000 y posteriores:
user_ID@domain.com
donde:
Es el ID de usuario correspondiente.
Un dominio y una extensión disponibles.
Sufijo del dominio.Normalmente, Kerberos añade el Dominio de Windows del usuario al ID de usuario pasado a WebFOCUS, en el formato userID@domain.com. WebFOCUS elimina por defecto el dominio del valor, reteniendo únicamente el ID de usuario. A continuación, el ID de usuario se utiliza para completar el proceso de inicio de sesión. Para añadir el dominio, cambie la propiedad stripDomainSuffix a falso, en la sección kerberosPreference del archivo securitysettings.xml.
Los siguientes pasos de pre-instalación debe ser realizados por un administrador de red con privilegios de administración de dominios. Las imágenes siguientes corresponden a un entorno de Windows 2003 o Windows 2008.
Nota: Si está ejecutando Windows 2008, puede que tenga que instalar la siguiente revisión de Microsoft para que su controlador de dominios sea compatible con el uso de un archivo keytab de Kerberos:
El valor especificado para Field1 debe empezar por HTTP, en mayúscula. El formato es
HTTP/computername.domain.ext
donde:
Es el nombre completamente cualificado del equipo en que se va a instalar el Cliente WebFOCUS.
El valor especificado para Field2 se convierte en el atributo sAMAccountName para la cuenta del servicio. El formato es
http_computername
donde:
Es el nombre del equipo en que se va a instalar el Cliente WebFOCUS.
La siguiente imagen presenta un ejemplo del cuadro de diálogo Nuevo objeto - usuario. Muestra los campos establecidos en el formato recomendado, indicando que el Cliente WebFOCUS va a quedar instalado en un equipo llamado wf-kerb.
Aparece un cuadro de diálogo de confirmación, indicando que se va a crear el usuario con las propiedades mostradas.
Nota: La pestaña Delegación no aparece en el cuadro de diálogo Propiedades. La pestaña Delegación no aparece hasta que ejecute el comando ktpass, como se explica en el paso 5.
Debe ejecutar ktpass desde la línea de comandos, en una línea del controlador de dominios. Sustituya sus valores en el ejemplo siguiente. Mantenga una copia de la sintaxis del comando que esté utilizando. Puede que la necesite para solucionar problemas más adelante.
El formato del comando ktpass es
ktpass /out filename /mapuser user_ID /princ principal /crypto encryption/pass password /ptype KRB5_NT_PRINCIPAL
donde:
Es el nombre utilizado por ktpass para crear el archivo Kerberos keytab. El valor recomendado es http_computername.keytab.
Es el valor de sAMAccountName introducido en el paso 1.
Se especifica concatenando el valor de nombre de inicio de sesión del usuario, introducido en el paso 1, con REALM, donde REALM es el ámbito (realm) Kerberos. Por lo general, el ámbito Kerberos es igual que el sufijo DNS de Active Directory, a excepción de las mayúsculas.
Es la opción de cifrado utilizada durante la creación del archivo keytab. Puede que tenga que descargar las herramientas de soporte de Microsoft más recientes, para obtener una versión del comando ktpass compatible con el valor recomendado de RC4-HMAC-NT.
Nota: Si alguno de los equipos de su red está ejecutando Windows 2008 R2, Windows 7, o superior, escoja RC4-HMAC-NT para que los equipos funcionen correctamente con Kerberos. Microsoft ha eliminado todo el soporte de DES en las versiones posteriores de Windows.
Es la contraseña de Windows asociada a la cuente de servicio, en texto simple.
A continuación le mostramos el comando ktpass en el formato adecuado, correspondiente a los ejemplos citados anteriormente en esta sección:
C:\>ktpass /out http_wf-kerb.keytab /mapuser http_wf-kerb /princ HTTP/wf-kerb.ibi.com@IBI.COM /crypto RC4-HMAC-NT /pass password1 /ptype KRB5_NT_PRINCIPAL
Windows responde con los siguientes mensajes:
Targeting domain controller: ibidca.ibi.com Successfully mapped HTTP/wf-kerb.ibi.com to http_wf-kerb. Key created. Output keytab to http_wf-kerb.keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x0df97e7355555817c828671454137af0)
El comando ktpass añade un atributo llamado servicePrincipalName (SPN) y modifica el atributo userPrincipalName (UPN), como indica la siguiente imagen.
La pestaña Delegación aparece en el cuadro de diálogo Propiedades, como indica la siguiente imagen.
Nota: La pestaña Delegación no aparece antes de ejecutar el comando ktpass. La pestaña Delegación queda disponible después de ejecutar el comando ktpass.
Siga estos pasos si está usando uno o varios encabezados de host.
El siguiente procedimiento presupone la existencia de dos nombres de encabezado de host, wf-kerb1 y wf-kerb2.
Nota: No cree registros C.
ktpass /in filename /out filename /princ principal /crypto encryption/pass password /ptype KRB5_NT_PRINCIPAL
ktpass /in c:\keytab\http_wf-kerb.keytab /out c:\keytab\http_wf-kerb.keytab /princ HTTP/wf-kerb1.ibi.com@IBI.COM /crypto RC4-HMAC-NT /pass password1 /ptype KRB5_NT_PRINCIPAL
La salida resultante es:
Existing keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) NOTE: creating a keytab but not mapping principal to any user. For the account to work within a Windows domain, the principal must be mapped to an account, either at the domain level (with /mapuser) or locally (using ksetup) If you intend to map HTTP/wf-kerb1.ibi.com@IBI.COM to an account through other means or don't need to map the user, this message can safely be ignored. WARNING: pType and account type do not match. This might cause problems. Key created. Output keytab to c:\keytab\http_wf-kerb.keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) keysize 64 HTTP/wf-kerb1.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 1 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef)
ktpass /in c:\keytab\http_wf-kerb.keytab /out c:\keytab\http_wf-kerb.keytab /princ HTTP/wf-kerb2.ibi.com@IBI.COM /crypto RC4-HMAC-NT /pass password1 /ptype KRB5_NT_PRINCIPAL
La salida resultante es:
Existing keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) keysize 64 HTTP/wf-kerb1.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 1 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) NOTE: creating a keytab but not mapping principal to any user. For the account to work within a Windows domain, the principal must be mapped to an account, either at the domain level (with /mapuser) or locally (using ksetup) If you intend to map HTTP/wf-kerb2.ibi.com@IBI.COM to an account through other means or don't need to map the user, this message can safely be ignored. WARNING: pType and account type do not match. This might cause problems. Key created. Output keytab to c:\keytab\http_wf-kerb.keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) keysize 64 HTTP/wf-kerb1.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 1 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef)
Nota: Haga referencia a cada encabezado de host utilizando el nombre completamente cualificado del dominio o el nombre de una parte. Por ejemplo, puede hacer referencia al primer encabezado de host como kerb1.ibi.com (nombre completamente cualificado del dominio), o wf-kerb1 (nombre de una parte). Por tanto, la ejecución de los comandos setspn produce cuatro entradas, en este paso.
setspn -A HTTP/wf-kerb1.ibi.com ibi\http_wf-kerb
La salida resultante es:
Registering ServicePrincipalNames for CN=http_wf-kerb,OU=USERS,OU=DEVELOPMENT, O=BIPG,OU=COR,DC=ibi,DC=com HTTP/wf-kerb1.ibi.com Updated object
setspn -A HTTP/wf-kerb1 ibi\http_wf-kerb
La salida resultante es:
Registering ServicePrincipalNames for CN=http_wf-kerb,OU=USERS,OU=DEVELOPMENT, O=BIPG,OU=COR,DC=ibi,DC=com HTTP/wf-kerb1 Updated object
setspn -A HTTP/wf-kerb2.ibi.com ibi\http_wf-kerb
La salida resultante es:
Registering ServicePrincipalNames for CN=http_wf-kerb,OU=USERS,OU=DEVELOPMENT, O=BIPG,OU=COR,DC=ibi,DC=com HTTP/wf-kerb2.ibi.com Updated object
setspn -A HTTP/wf-kerb2 ibi\http_wf-kerb
La salida resultante es:
Registering ServicePrincipalNames for CN=http_wf-kerb,OU=USERS,OU=DEVELOPMENT, O=BIPG,OU=COR,DC=ibi,DC=com HTTP/wf-kerb2 Updated object
El siguiente procedimiento describe los pasos de configuración del Cliente WebFOCUS.
Si la información de sufijo del dominio es necesaria:
<property name="stripDomainSuffix" value="false" />
El ID de usuario se crea en el siguiente formato:
user_ID@mydomain.extension
Ahora, la sección incluye el siguiente código:
<property name="anonymousAuthEnabled" value="false"/> <property name="formAuthEnabled" value="false"/> <property name="stripDomainSuffix" value="true"/> . . . <property name="spnegoAuthEnabled" value="true"/>
<property name="servicePrincipal" value="HTTP/wf-kerb.ibi.com" /> <property name="keyTabLocation" value="file:c:/ibi/WebFOCUS81/ webapps/webfocus/WEB-INF/http_wf-kerb.keytab" />
Nota: Si quiere extender la capacidad SSO a un RDBMS, como Microsoft SQL Server, establezca la opción de seguridad de adaptador del Servidor de informes en Fiable.
Si la información de sufijo del dominio es necesaria:
<property name="stripDomainSuffix" value="false"/>
El ID de usuario se crea en el siguiente formato:
user_ID@mydomain.extension
Ahora, la sección incluye el siguiente código:
<property name="anonymousAuthEnabled" value="false"/> <property name="formAuthEnabled" value="true"/> <property name="stripDomainSuffix" value="true"/> <property name="formAuthenticationFallbackEnabled" value="true"/> . . . <property name="spnegoAuthEnabled" value="true"/>
<property name="servicePrincipal" value="HTTP/wf-kerb.ibi.com"/> <property name="keyTabLocation" value="file:c:/ibi/WebFOCUS81/ webapps/webfocus/WEB-INF/http_wf-kerb.keytab"/>
Nota:
La capacidad SSO requiere un dominio de Active Directory, en Windows 2000 y posteriores. Navegadores compatibles:
En la mayoría de los casos, Google Chrome no requiere ninguna configuración especial para los entornos de Microsoft Windows. Normalmente, la autenticación de NTML y Kerberos puede llevarse a cabo sin necesidad de cambios en las directivas de Chrome o parámetros de línea de comandos especiales. Si es necesario, puede configurar propiedades con los parámetros de línea de comandos.
Por ejemplo, para establecer el parámetro auth-server-whitelist, inicie Chrome desde la línea de comandos:
"C:\Users\user\AppData\Local\Google\Chrome\Application\chrome.exe"
--auth-server-whitelist="example.com"
La sintaxis es:
http://server.url.domain:port/context
Si ha configurado Kerberos correctamente y, como se indicó anteriormente, ha añadido su ID de usuario a Managed Reporting, ya debe estar conectado a BIP con sus credenciales de Kerberos.
El archivo de registro edaprint del Servidor de informes registra request by cmrpip0000xx for Kerberos connect to agent, reflejando su ID de inicio de sesión de Windows, en formato UPN.
La autenticación de Kerberos requiere una conexión asíncrona entre el Servidor de informes y la sesión de navegador del usuario, aunque ReportCaster no utiliza una sesión de navegador para la ejecución de informes programados. Por tanto, ReportCaster debe proporcionar un ID de usuario y una contraseña a Kerberos, para permitir los informes.
En la herramienta Configuración de servidores ReportCaster, configure cada uno de los servidores de datos con los que se comunica ReportCaster. Establezca Tipo de ID de ejecución en Usuario para asegurarse de que el usuario final reciba un aviso indicando que debe introducir su ID de usuario y su contraseña, en cada nodo.
Como alternativa, establezca Tipo de ID de ejecución en Estático e introduzca el ID de usuario y la contraseña utilizados en todas las programaciones de ese servidor de informes.
La implementación Kerberos de Microsoft Windows coloca todos los identificadores de grupos de Microsoft en el interior del vale de Kerberos de cada usuario, lo que puede resultar en un vale de gran tamaño para aquellos usuarios que pertenezcan a muchos grupos. El vale de Kerberos se transporta en un encabezado HTTP, lo que puede acarrear distintos problemas técnicos cuando el vale alcanza un tamaño grande. Si algún usuario pertenece a más de 100 grupos, puede que tenga que llevar a cabo algunas de estas tareas, o todas, de configuración especial:
Además, debe configurar MaxTokenSize para los controladores de dominios.
Este tema describe los pasos adicionales, necesarios, para que Kerberos funcione correctamente en un entorno multidominio o de subdominios.
Por ejemplo, si tiene usuarios que pertenecen a SUBA.MYDOMAIN.COM, SUBB.MYDOMAIN.COM y MYDOMAIN.COM, y todos requieren acceso al entorno Kerberos, siga las instrucciones de este tema.
Para ocuparse de las propiedades de configuración adicionales, necesarias para que Kerberos funcione correctamente en un entorno multidominio, debe crear un archivo de configuración de Kerberos llamado krb5.ini. El archivo contiene toda la información adicional, necesaria para que Kerberos funcione cuando se está utilizando más de un dominio.
Muchas versiones de Java presentan un error que impide el funcionamiento correcto de múltiples dominios, incluso con la configuración krb5.ini. Como resultado, es posible que deba actualizar su versión de Java. Para más detalles sobre este error de Java, vaya al siguiente informe de errores Java:
Puede crearlo en cualquier lugar del sistema de archivos, ya que más adelante incluirá una referencia explícita a su ubicación. Para este ejemplo, cree el archivo en:
C:\ibi\WebFOCUS81\config\krb5.ini
Sustituya el nombre de default_realm, MYDOMAIN.COM, en la última línea del ejemplo, por el nombre de DNS completamente cualificado del dominio del equipo al que se ha unido el Cliente WebFOCUS.
Introduzca el nombre de default_realm en mayúscula.
[libdefaults] ticket_lifetime = 600 default_tgt_enctypes = rc4-hmac default_tgs_enctypes = rc4-hmac default_checksum = rsa-md5 forwardable = true default_realm = MYDOMAIN.COM
Si los dominios y subdominios comparten controladores de dominios, puede crear una sección [realms] aquí y hacer referencia a las relaciones en la próxima sección, [domain_realm]. La sección [domain_realm] aparece descrita en el paso 4.
[realms] MYDOMAIN.COM = { kdc = dc1.mydomain.com:88 kdc = dc2.mydomain.com:88 kdc = dc3.mydomain.com:88 default_domain = mydomain.com } SUBA.MYDOMAIN.COM = { kdc = dc1.suba.mydomain.com:88 kdc = dc2.suba.mydomain.com:88 default_domain = suba.ibi.com } SUBB.MYDOMAIN.COM = { kdc = dc1.subb.mydomain.com:88 kdc = dc2.subb.mydomain.com:88 default_domain = subb.ibi.com }
Al igual que en la sección [libdefaults], los valores de la sección [realms] distinguen el uso de mayúsculas y minúsculas. Por ejemplo, el nombre de la primera referencia (por ejemplo, MYDOMAIN.COM, en el primer bloque del ejemplo) debe estar en mayúscula, mientras que el valor de default_domain debe aparecer en minúscula.
Cada entrada correspondiente a kdc debe hacer referencia al nombre DNS del controlador correspondiente al dominio en cuestión. Sólo se requiere una entrada de kdc por cada dominio listado; la presencia de múltiples entradas kdc puede dar lugar a redundancias.
Los dominios se encuentran asignados a un ámbito del mismo nombre, aunque éste aparece en mayúscula. Como resultado, las siguientes entradas son redundantes:
[domain_realm] .suba.mydomain.com = SUBA.MYDOMAIN.COM .subb.mydomain.com = SUBB.MYDOMAIN.COM .mydomain.com = MYDOMAIN.COM
Para más información sobre la sección [domain_realm], consulte las especificaciones MIT Kerberos, en la siguiente página web:
http://web.mit.edu/kerberos/krb5-1.4/krb5-1.4.1/doc/krb5-admin/domain_realm.html
La sección [capaths] sólo es necesaria en entornos cuyo dominio principal no tiene relaciones de confianza unilateral con todos los dominios secundarios, o en entornos con múltiples jerarquías de dominios.
En estos casos, el protocolo de Kerberos no es capaz de determinar cómo autenticar un usuario de un dominio, correspondiente a un recurso en otro dominio. Como resultado, las relaciones requeridas para llevar a cabo la autenticación deben quedar asignadas para que Kerberos conozca qué ruta debe tomar para autenticar al usuario. Se aplican las siguientes relaciones de confianza:
En este ejemplo, Kerberos puede autenticar directamente cualquier usuario de SUBA.MYDOMAIN.COM, para cualquier recurso en SUBB.MYDOMAIN.COM. Para autenticar usuarios en SUBA.MYDOMAIN.COM con MYDOMAIN.COM, debe autenticarlos a través de SUBB.MYDOMAIN.COM, puesto que SUBA.MYDOMAIN.COM no tiene una relación directa de confianza con MYDOMAIN.COM.
[capaths] SUBA.MYDOMAIN.COM { SUBB.MYDOMAIN.COM = . MYDOMAIN.COM = SUBB.MYDOMAIN.COM } SUBB.MYDOMAIN.COM { SUBA.MYDOMAIN.COM = . MYDOMAIN.COM = . } MYDOMAIN.COM { SUBB.MYDOMAIN.COM = . SUBA.MYDOMAIN.COM = SUBB.MYDOMAIN.COM }
En el primer bloque, es la información de autenticación del usuario de SUBA.MYDOMAIN.COM. Kerberos puede autenticar a un usuario directamente desde SUBA.MYDOMAIN.COM en base a SUBB.MYDOMAIN.COM, como indica el punto (.). Para autenticar un usuario de SUBA.MYDOMAIN.COM en base a MYDOMAIN.COM, Kerberos debe utilizar SUBB.MYDOMAIN.COM. Esto explica la presencia de MYDOMAIN.COM =SUBB.MYDOMAIN.COM. en el código.
En el segundo bloque, es la información de autenticación del usuario de SUBB.MYDOMAIN.COM. Puesto que Kerberos puede autenticar a un usuario directamente desde SUBB.MYDOMAIN.COM en base a SUBA.MYDOMAIN.COM y MYDOMAIN.COM, se incluye un punto (.) en ambas columnas.
En el tercer bloque, es la información de autenticación del usuario de MYDOMAIN.COM. Kerberos puede autenticar a un usuario directamente desde MYDOMAIN.COM, para los recursos en SUBB.MYDOMAIN.COM, como indica el punto (.). Kerberos debe pasar primero por SUBB.MYDOMAIN.COM para autenticar al usuario de SUBA.MYDOMAIN.COM.
Para más información sobre el uso de la sección [capaths] con el protocolo Kerberos, consulte el siguiente documento de MIT:
http://web.mit.edu/kerberos/krb5-1.5/krb5-1.5.4/doc/krb5-admin/capaths.html
Cuando haya terminado, su archivo kbr5.ini tendrá un aspecto similar a éste:
[libdefaults] ticket_lifetime = 600 default_tgt_enctypes = rc4-hmac default_tgs_enctypes = rc4-hmac default_checksum = rsa-md5 forwardable = true default_realm = MYDOMAIN.COM [realms] MYDOMAIN.COM = { kdc = dc1.mydomain.com:88 kdc = dc2.mydomain.com:88 kdc = dc3.mydomain.com:88 default_domain = mydomain.com } SUBA.MYDOMAIN.COM = { kdc = dc1.suba.mydomain.com:88 kdc = dc2.suba.mydomain.com:88 default_domain = suba.ibi.com } SUBB.MYDOMAIN.COM = { kdc = dc1.subb.mydomain.com:88 kdc = dc2.subb.mydomain.com:88 default_domain = subb.ibi.com } [domain_realm] .suba.mydomain.com = SUBA.MYDOMAIN.COM .subb.mydomain.com = SUBB.MYDOMAIN.COM .mydomain.com = MYDOMAIN.COM [capaths] SUBA.MYDOMAIN.COM { SUBB.MYDOMAIN.COM = . MYDOMAIN.COM = SUBB.MYDOMAIN.COM } SUBB.MYDOMAIN.COM { SUBA.MYDOMAIN.COM = . MYDOMAIN.COM = . } MYDOMAIN.COM { SUBB.MYDOMAIN.COM = . SUBA.MYDOMAIN.COM = SUBB.MYDOMAIN.COM }
Para que Kerberos utilice su archivo krb5.ini en WebFOCUS, haga referencia a la ubicación del archivo, mediante las siguiente opción de Java™. Puede especificar la opción -Djava.security.krb5.conf en Tomcat, como aparece en el siguiente procedimiento.
Normalmente, el directorio bin se encuentra en:
C:\ibi\tomcat\bin\
-Djava.security.krb5.conf=C:\ibi\WebFOCUS81\config\krb5.ini
Si escoge otra ubicación para almacenar su archivo krb5.ini, debe hacer referencia a ésta, en vez de la ubicación del ejemplo anterior.
WebFOCUS |