Creación de un principal del servicio Kerberos y un archivo de tabla de claves utilizado por SPNEGO TAI (en desuso) en WebSphere Application Server
Esta tarea de configuración se lleva a cabo en la máquina del controlador de dominio de Microsoft Active Directory. Esta tarea es una parte necesaria de la preparación del proceso de inicio de sesión único en peticiones de navegador para WebSphere Application Server y en SPNEGO TAI (Trust Association Interceptor).
Antes de empezar

En WebSphere Application Server Versión 6.1, se introdujo un interceptor de asociación de confianza (TAI) que utiliza el mecanismo SPNEGO (Simple and Protected GSS-API Negotiation) para negociar y autenticar con seguridad solicitudes HTTP para recursos seguros. En WebSphere Application Server 7.0, esta función quedó en desuso. La autenticación web SPNEGO ha ocupado su lugar para proporcionar la recarga dinámica de filtros SPNEGO y habilitar la recuperación para el método de inicio de sesión de la aplicación.
depfeatAcerca de esta tarea
Procedimiento
- Cree una cuenta de usuario en
Microsoft
Active Directory para WebSphere Application Server.
Pulse Inicio->Programas->Herramientas administrativas ->Usuarios y sistemas de Active Directory
Utilice el nombre de WebSphere Application Server. Por ejemplo, si el servidor de aplicaciones que está ejecutando en la máquina de WebSphere Application Server se denomina myappserver.austin.ibm.com, cree un usuario nuevo en Active Directory denominado myappserver.Importante: No seleccione "El usuario debe cambiar la contraseña en el siguiente inicio de sesión".Importante: Asegúrese de que no tiene el nombre de sistema myappserver en Sistemas y controladores de dominio. Si ya tiene el nombre de sistema myappserver, tiene que crear un nombre de cuenta de usuario diferente.- Vaya a Inicio -> Programas -> Herramientas administrativas -> Usuarios y sistemas de Active Directory-> Sistemas
- Vaya a Inicio -> Programas -> Herramientas administrativas -> Usuarios y sistemas de Active Directory-> Controladores de dominio
- Utilice el mandato setspn para correlacionar el nombre principal del servicio
Kerberos, HTTP/<nombre_host>, con una cuenta de usuarios de
Microsoft. Un ejemplo de uso de setspn es el siguiente:
C:\Program Files\Support Tools> setspn -A HTTP/myappserver.austin.ibm.com myappserver
Nota: Es posible que existan algunos SPN relacionados con los hosts de Microsoft Windows que se hayan añadido al dominio. Puede visualizar utilizando el mandato setspn -L, pero debe añadir un HTTP SPN para WebSphere Application Server. Por ejemplo, con setspn -L myappserver se listan los SPN.Importante: Asegúrese de que no tiene la misma correlación de SPN en más de una cuenta de usuario de Microsoft. Si correlaciona el mismo SPN con más de una cuenta de usuario, el cliente del navegador Web puede enviar una señal NTLM (NT LAN Manager) en lugar de una señal SPNEGO a WebSphere Application Server.Para obtener más información acerca del mandato setspn consulte el enlace siguiente: Windows 2003 Technical Reference (setspn command)
- Cree el archivo keytab de Kerberos y póngalo a disposición de
WebSphere Application Server. Utilice el mandato ktpass para crear el archivo keytab de Kerberos
(krb5.keytab).
Utilice la herramienta ktpass desde el kit de herramientas de Windows Server para crear el archivo de la tabla de claves de Kerberos para el nombre principal del servicio (SPN). Utilice la última versión de la herramienta ktpass que coincida con el nivel de servidor Windows que esté utilizando. Por ejemplo, utilice la versión de Windows 2003 de la herramienta para un servidor Windows 2003.
Para determinar los valores de parámetros adecuados para la herramienta ktpass, ejecute el mandato ktpass -? desde la línea de mandatos. Este mandato lista si la herramienta ktpass, que corresponde al sistema operativo concreto, utiliza el valor de parámetro -crypto RC4-HMAC o -crypto RC4-HMAC-NT. Para evitar mensajes de aviso del kit de herramientas, debe especificar el valor de parámetro -ptype KRB5_NT_PRINCIPAL.
La versión de servidor Windows 2003 de la herramienta ktpass soporta el tipo de cifrado, RC4-HMAC, y el estándar de cifrados de datos (DES) único. Para obtener más información sobre la herramienta ktpass, consulte la publicación Windows 2003 Technical Reference - Ktpass overview.
El código siguiente muestra las funciones disponibles cuando especifica el mandato ktpass -? en la línea de mandatos. Esta información puede ser distinta en función de la versión del kit de herramientas que esté utilizando.C:\Archivos de programa\Support Tools>ktpass -? Opciones de la línea de mandatos: ---------------------argumentos más prácticos [- /] out : Tabla de claves a producir [- /] princ : Nombre principal (user@REALM) [- /] pass : Contraseña para utilizar utilice "*" para pedir la contraseña. [- +] rndPass : ... o utilice +rndPass para generar una contraseña aleatoria [- /] minPass : longitud mínima para contraseña aleatoria (def:15) [- /] maxPass : longitud máxima para contraseña aleatoria (def:256) ---------------------stuff menos práctico [- /] mapuser : corr princ a esta cuenta de usuario (valor predeterminado: no) [- /] mapOp : cómo establecer el atributo de correlación (por omisión: añadirlo) [- /] mapOp : es uno de los valores siguientes: [- /] mapOp : add : añadir valor (por omisión) [- /] mapOp : set : establecer valor [- +] DesOnly : Establecer cuenta para el cifrado sólo des (por omisión: no) [- /] in : Tabla de claves para leer/numeración ---------------------opciones para la generación de claves [- /] crypto : Sistema criptográfico para utilizar [- /] crypto : es uno de: [- /] crypto : DES-CBC-CRC : para compatibilidad [- /] crypto : DES-CBC-MD5 : para compatibilidad [- /] crypto : RC4-HMAC-NT : cifrado de 128 bits predeterminado [- /] ptype : tipo principal en cuestión [- /] ptype : es uno de: [- /] ptype : KRB5_NT_PRINCIPAL : El general ptype-- recomendado [- /] ptype : KRB5_NT_SRV_INST : instancia de servicio de usuario [- /] ptype : KRB5_NT_SRV_HST : instancia de servicio host [- /] kvno : Alterar temporalmente el número de versión de la clave Por omisión: consultar DC para kvno. Usar /kvno 1 para Win2K compat. [- +] Answer : +Answer responde YES cuando se le pregunta. -Answer responde NO. [- /] Target : Que DC se va a utilizar. Por omisión: detectar ---------------------opciones para atributos de confianza (Windows Server 2003 Sólo Sp1 [- /] MitRealmName : Reino MIT en el que se desea habilitar la confianza RC4. [- /] TrustEncryp : Cifrado de confianza a utilizar; DES es el valor predeterminado [- /] TrustEncryp : es uno de: [- /] TrustEncryp : RC4 : Confía en reino RC4 (valor predeterminado) [- /] TrustEncryp : DES : volver a DES
Importante: No utilice el conmutador -pass en el mandato ktpass para restaurar una contraseña para un cuenta de Microsoft Windows Server.Para obtener más información, consulte la publicación, Windows 2003 Technical Reference - Ktpass overview.Debe utilizar la opción -mapUser con el mandato ktpass para habilitar KDC para crear una clave de cifrado. De lo contrario, cuando se recibe la señal SPNEGO, falla el proceso de validación y el servidor de aplicaciones solicita al usuario un nombre de usuario y contraseña.En función del tipo de cifrado, utilice la herramienta ktpass en una de las siguientes formas para crear el archivo de tabla de claves de Kerberos. En la siguiente sección se muestran los distintos tipos de cifrado que utiliza la herramienta ktpass. Es importante ejecutar el mandato ktpass -? para determinar qué valor de parámetro -crypto espera el kit de herramientas concreto de su entorno Microsoft Windows.El archivo de la tabla de claves de Kerberos se crea para su uso con el SPNEGO TAI.- Para un tipo de cifrado DES únicoEn un indicador de mandatos, ejecute el mandato ktpass:
ktpass -out c:\temp\myappserver.keytab -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM -mapUser myappserv -mapOp set -pass was1edu -crypto DES-CBC-MD5 -pType KRB5_NT_PRINCIPAL +DesOnly
Tabla 1. Uso de ktpass para un tipo de cifrado DES único. En esta tabla se describe cómo utilizar ktpass para un tipo de cifrado DES único.
Opción Explicación -out c:\temp\myappserver.keytab La clave se escribe en el archivo de salida. -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM La concatenación del nombre de inicio de sesión del usuario y el reino deben aparecer en mayúsculas. -mapUser La clave se correlaciona con el usuario, myappserver. -mapOp Esta opción establece la correlación. -pass was1edu Esta opción es la contraseña para el ID de usuario. -crypto DES-CBC-MD5 Esta opción utiliza el tipo de cifrado DES único. -pType KRB5_NT_PRINCIPAL Esta opción especifica el valor del principalKRB5_NT_PRINCIPAL. Especifique esta opción para evitar mensajes de aviso de kit de herramientas. +DesOnly Esta opción genera únicamente cifrados DES. - Para el tipo de cifrado RC4-HMACImportante: El cifrado RC4-HMAC sólo está soportado si se utiliza un Windows 2003 Server como KDC.En un indicador de mandatos, ejecute el mandato ktpass.
ktpass -out c:\temp\myappserver.keytab -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM -mapUser myappserver -mapOp set –pass was1edu -crypto RC4-HMAC -pType KRB5_NT_PRINCIPAL
Tabla 2. Uso de ktpass para el tipo de cifrado RC4-HMAC. Esta tabla identifica y describe las opciones de ktpass para el cifrado RC4-HMAC
Opción Explicación -out c:\temp\myappserver.keytab La clave se escribe en el archivo de salida. -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM La concatenación del nombre de inicio de sesión del usuario y el reino deben aparecer en mayúsculas. -mapUser La clave se correlaciona con el usuario, myappserver. -mapOp Esta opción establece la correlación. -pass was1edu Esta opción es la contraseña para el ID de usuario. -crypto RC4-HMAC Esta opción selecciona el tipo de cifrado RC4-HMAC. -pType KRB5_NT_PRINCIPAL Esta opción especifica el valor del principalKRB5_NT_PRINCIPAL. Especifique esta opción para evitar mensajes de aviso de kit de herramientas. - Para el tipo de cifrado RC4-HMAC-NTEn un indicador de mandatos, ejecute el mandato ktpass.
ktpass -out c:\temp\myappserver.keytab -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM -mapUser myappserver -mapOp set -pass was1edu -crypto RC4-HMAC-NT -pType KRB5_NT_PRINCIPAL
Tabla 3. Uso de ktpass para el tipo de cifrado RC4-HMAC. En esta tabla se describe el uso de ktpass para los tipos de cifrado RC4-HMAC. Opción Explicación -out c:\temp\myappserver.keytab La clave se escribe en el archivo de salida. -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM La concatenación del nombre de inicio de sesión del usuario y el reino deben aparecer en mayúsculas. -mapUser La clave se correlaciona con el usuario, myappserver. -mapOp Esta opción establece la correlación. -pass was1edu Esta opción es la contraseña para el ID de usuario. -crypto RC4-HMAC-NT Esta opción selecciona el tipo de cifrado RC4-HMAC-NT. -pType KRB5_NT_PRINCIPAL Esta opción especifica el valor del principalKRB5_NT_PRINCIPAL. Especifique esta opción para evitar mensajes de aviso de kit de herramientas.
Nota: Un archivo de configuración de tabla de claves de Kerberos contiene una lista de claves que son análogas a las contraseñas de usuario. 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.El archivo keytab se pone a disposición de WebSphere Application Server copiando el archivo krb5.keytab desde el controlador de dominio (la máquina LDAP) a la máquina de WebSphere Application Server.ftp> bin ftp> put c:\temp\KRB5_NT_SEV_HST\krb5.keytab
- Para un tipo de cifrado DES único
Resultados
El controlador de dominio de Active Directory se ha configurado correctamente para procesar peticiones de inicio de sesión individuales para WebSphere Application Server y SPNEGO TAI
Subtopics
Utilización del mandato ktab para gestionar el archivo keytab de Kerberos
El mandato del gestor de tablas de claves de Kerberos, Ktab, permite al administrador del producto gestionar los nombres y las claves de principal de servicio de Kerberos almacenadas en un archivo keytab local de Kerberos. Con IBM Software Development Kit (SDK) o Sun Java Development Kit (JDK) 1.6 o posterior, puede utilizar el mandato ktab para fusionar dos archivos de tablas de claves Kerberos.


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_SPNEGO_config_dc
File name: tsec_SPNEGO_config_dc.html