Puede utilizar la consola administrativa para configurar Kerberos como mecanismo de autenticación para el servidor de aplicaciones. Cuando haya especificado y aplicado la información necesaria en la configuración, el
nombre principal del servicio Kerberos se formará como <nombre de
servicio>/<nombre de host completo>@KerberosRealm, y se utiliza para verificar las
solicitudes entrantes de señales Kerberos.
Antes de empezar
Consulte Soporte del mecanismo de autenticación Kerberos (KRB5) para la seguridad para entender el mecanismo de autenticación de
Kerberos en esta versión de WebSphere Application Server. Debe haber
realizado los pasos siguientes antes de configurar Kerberos como mecanismo de
autenticación mediante la consola administrativa:
- Si todavía no tiene un archivo de configuración Kerberos, krb5.ini o
krb5.conf, utilice la tarea de mandatos createkrbConfigFile para crear el
archivo de configuración Kerberos. Para obtener más información, consulte Creación de un archivo de configuración de Kerberos.
- Debe tener un archivo de tabla de claves Kerberos, krb5.keytab, que contenga un nombre principal de servicio (SPN) Kerberos, <nombre_servicio>/<nombre_host_totalmente_calificado>@KerberosRealm, para las máquinas en las
que se ejecutan servidores de aplicaciones WebSphere.
El nombre de servicio puede ser como prefiera; el valor predeterminado es WAS.
Por ejemplo, si tiene dos máquinas de servidor de aplicaciones, host1.austin.ibm.com y host2.austin.ibm.com, el archivo de tabla de claves Kerberos debe contener
los SPN <nombre_servicio>/host1.austin.ibm.com y <nombre_servicio>/host2.austin.ibm.com y
sus claves Kerberos.
Kerberos sólo cargará y utilizará un archivo de tabla de claves por sesión. Por ejemplo, si se ha configurado Kerberos, y desea utilizar un archivo de tabla de
claves nuevo con el mismo nombre y ubicación que el archivo de tabla de claves anterior,
primero debe reiniciar el servidor para que utilice el archivo de tabla de claves nuevo.
Si es la primera vez que configura Kerberos, y por error utiliza el archivo de tabla de
claves incorrecto, debe desconfigurar Kerberos y reiniciar el servidor antes de volver a
configurar Kerberos mediante un archivo de tablas de claves nuevo. No obstante, esto no es cierto si tiene instalado Java™ SE
Development Kit (JDK) con SP3.
Primero debe habilitar la seguridad global y de aplicaciones.
Si Kerberos se ha configurado con seguridad global, pero desea configurar SPNEGO (Simple
and Protected GSS-API Negotiation) en un dominio que utiliza un reino de Kerberos
distinto, primero debe utilizar el mandato Java
ktab -m para fusionar los archivos de tabla de claves existentes en un archivo de
tabla de claves.
Utilice dicho archivo de tabla de claves fusionado para configurar Kerberos y SPNEGO en
la seguridad global y en la seguridad de dominio.
Procedimiento
- En la consola administrativa, pulse Seguridad > Seguridad global.
- En Autenticación, pulse Configuración de Kerberos.
- Especifique el nombre de servicio de Kerberos. Por convenio, un principal de servicio de Kerberos se divide en tres partes:
la primaria, la instancia y el nombre de reino de
Kerberos. El formato del nombre principal de servicio de Kerberos es
<nombre_servicio>/<nombre_host_totalmente_calificado>@REINO_KERBEROS. El nombre de servicio es la primera parte del nombre de principal del servicio Kerberos. Por ejemplo, en WAS/test.austin.ibm.com@AUSTIN.IBM.COM, el nombre de servicio es WAS. En este ejemplo, el archivo de tabla de claves debe tener el nombre principal de servicio Kerberos, WAS/test.austin.ibm.com@AUSTIN.IBM.COM y sus claves.
- Escriba el nombre del archivo de configuración de Kerberos o pulse Examinar para localizarlo. El archivo de configuración de cliente Kerberos, krb5.conf o krb5.ini, contiene información de configuración Kerberos, incluidas las
ubicaciones de los Centros de distribución de claves (KDC) del reino de interés.
El archivo krb5.conf es el nombre de archivo predeterminado para todas las
plataformas excepto el sistema operativo
Windows, que utiliza el archivo krb5.ini.
Nota: El nombre del archivo de configuración Kerberos y la vía de acceso del nombre de archivo de tabla de claves Kerberos
no es necesario que sean vías de acceso absolutas. En su lugar puede usar variables de
WebSphere para las vías de acceso.
Si utiliza
un entorno de varias plataformas distintas, puede utilizar la variable
${CONF_OR_INI} del archivo de configuración de Kerberos. La configuración de seguridad lo expandirá a ini para Windows o conf para plataformas no Windows.
Por ejemplo:
${WAS_INSTALL_ROOT}\etc\krb5\krb5.${CFG_OR_INI}
- Opcional: Escriba el nombre del archivo de tabla de claves de Kerberos o pulse Examinar para localizarlo. El archivo keytab de Kerberos contiene uno o más nombres y claves de principal de
servicio de Kerberos.
El archivo de tabla de claves predeterminado es krb5.keytab. Es importante para los hosts proteger sus archivos de tabla de claves de Kerberos almacenándolos en el disco local, así pueden ser legibles sólo para los usuarios autorizados.
Para obtener más información, consulte Creación de un nombre principal del servicio Kerberos y un archivo de tabla de claves. Si no especifica este parámetro, se utilizará la tabla de claves predeterminada del archivo de configuración de Kerberos.
Nota: El nombre del archivo de configuración Kerberos y la vía de acceso del nombre de archivo de tabla de claves Kerberos
no es necesario que sean vías de acceso absolutas. En su lugar puede usar variables de WebSphere
para las vías de acceso.
${WAS_INSTALL_ROOT}\etc\krb5\krb5.keytab
- Especifique el nombre del reino de Kerberos en el campo Nombre de dominio de Kerberos. En la mayoría de los casos, el dominio es el nombre de dominio en mayúsculas. Si no especifica este parámetro,
se utilizará el nombre de reino Kerberos por omisión del archivo de
configuración de Kerberos.
Por ejemplo, una máquina con el nombre de dominio de
test.austin.ibm.com tiene un nombre de reino Kerberos de AUSTIN.IBM.COM.
Nota: El nombre de reino Kerberos para el KDC de Microsoft es el nombre
del controlador de dominio en mayúsculas.
- Opcional: Recortar el reino de Kerberos del nombre de principal está seleccionado
de manera predeterminada. Puede deseleccionar esta opción si desea que se mantenga el
sufijo del nombre de principal de Kerberos. Esta opción especifica si el módulo de inicio de sesión Kerberos elimina el sufijo del nombre de usuario principal, a partir del
signo @ que precede al nombre de reino de Kerberos. Si este atributo se establece en true, el sufijo del nombre de usuario del principal se eliminará. Si este atributo se establece en false, se mantiene el sufijo del nombre principal.
El valor predeterminado utilizado es true.
- Opcional: Habilitar delegación de credenciales Kerberos está seleccionado de manera predeterminada. Esta opción especifica si las credenciales delegadas de Kerberos se extraen de la
solicitud del cliente. La señal de autenticación Kerberos (KRBAuthnToken) se crea con el
nombre principal de cliente y el ticket Kerberos de delegación del cliente si al cliente
se le envía la credencial de delegación de Kerberos como parte de la solicitud. La señal
KRBAuthnToken se almacena en el sujeto del cliente. KRBAuthnToken se propaga al servidor
en sentido descendente como parte de la propagación de atributos de seguridad. Si una
aplicación de un cliente necesita la credencial GSSCredential para la autenticación con
un recurso de programa de fondo o un servidor en sentido descendente, debe recuperar
GSSCredential en KRBAuthnToken mediante el método
com.ibm.wsspi.wssecurity.platform.token.KRBAuthnToken.getGSSCredential() y colocarla en
el sujeto.
Si no selecciona esta opción, la señal KRBAuthnToken sólo tiene el nombre principal de
Kerberos.
Nota: Si este parámetro es true, y el entorno de tiempo de ejecución no puede
extraer una credencial de delegación GSS de cliente, se muestra un mensaje de aviso.
- Pulse Aceptar.
Resultados
Cuando se selecciona Aplicar o Aceptar, la autenticación de
Kerberos se prueba automáticamente. Si la configuración de Kerberos no se ha completado, se visualiza un mensaje que indica una anomalía en la autenticación.
Ya ha configurado y guardado Kerberos como mecanismo de autenticación para
WebSphere Application Server.
Qué hacer a continuación
Para habilitar SPNEGO, pulse Habilitación de la autenticación web SPNEGO en Configuración relacionada.
La autenticación web de SPNEGO y la autenticación Kerberos utilizan la misma configuración de cliente
Kerberos y los mismos archivos de tabla de claves.
Cuando intenta autenticar en la consola administrativa, utilice un ID de usuario
administrativo que existe en el KDC asociado con el servidor de aplicaciones. Si utiliza
un ID de usuario administrativo que existe en un KDC diferente que no está asociado con
la consola administrativa, el proceso de inicio de sesión falla y el mensaje de error
siguiente se añade al archivo de registro:
SECJ9200E: No se encuentra ninguna
credencial de Kerberos en el conjunto de credenciales del sujeto.
Por ejemplo,
el cliente puede estar asociado a un KDC distinto del servidor de aplicaciones.