Configuración de un cliente Java para la autenticación Kerberos

Un cliente Java™ se puede autenticar con WebSphere Application Server, con un nombre principal y una contraseña Kerberos o con la memoria caché de credenciales Kerberos (krb5Ccache).

Procedimiento

  1. Cree un archivo de configuración de Kerberos (krb5.ini o krb5.conf). Consulte Creación de un archivo de configuración de Kerberos para obtener más información.
  2. Coloque los archivos krb5.ini o krb5.conf que ha creado en una ubicación predeterminada. Si ninguno de los archivos se encuentra en la ubicación predeterminada, debe establecer com.ibm.COBRA.krb5ConfigFile en el archivo sas.client.props con la vía de acceso y el nombre de archivo de configuración de Kerberos correctos.

    [Windows]La ubicación predeterminada es c:\winnt\krb5.ini.

    [Linux]La ubicación predeterminada es /etc/krb5.conf.

    [AIX][HP-UX][Solaris][z/OS]La ubicación predeterminada es /etc/krb5/krb5.conf.

    [IBM i]La ubicación predeterminada es /QIBM/UserData/OS400/NetworkAuthentication/krb5.conf

  3. En el archivo sas.client.props, establezca la propiedad com.ibm.CORBA.authenticationTarget en KRB5. Si desea más información, lea acerca de la configuración de la seguridad mediante scripts.
  4. También en el archivo sas.client.props, establezca la propiedad com.ibm.CORBA.loginSource en uno de los valores soportados que se indican a continuación:
    Cuando authenticationTarget es BasicAuth, los loginSource soportados son:
    • prompt [default]
    • propiedades
    • stdin
    • ninguno
    Cuando authenticationTarget es KRB5, los loginSource soportados son:
    • prompt [default]
    • propiedades
    • stdin
    • ninguno
    • krb5Ccache
    • krb5Ccache:prompt
    • krb5Ccache:properties
    • krb5Ccache:stdin
    Tenga en cuenta también lo siguiente:
    krb5Ccache:prompt
    Utilice krb5Ccache para autenticarse primero en WebSphere Application Server. Si falla el inicio de sesión, vuelve a aparecer el indicador.
    krb5Ccache:properties
    Utilice krb5Ccache para autenticarse primero en WebSphere Application Server. Si falla el inicio de sesión, vuelven a aparecer las propiedades.
    krb5Ccache:stdin
    Utilice krb5Ccache para autenticarse primero en WebSphere Application Server. Si falla el inicio de sesión, vuelve a aparecer stdin.
  5. Si el authenticationTarget es KRB5, la aplicación cliente Java debe tener el archivo wsjaas_client.conf. Si no utiliza el mandato launchClient, debe establecer la opción de java tal como se indica a continuación:
    -Djava.security.auth.login.config=wsjaas_client.config
  6. Si authenticationTarget es KRB5 y loginSource es la memoria caché de credenciales Kerberos, siga estos pasos:
    1. En el archivo wsjaas_client.conf, actualice la entrada WSKRB5Login:
      WSKRB5Login{
          com.ibm.ws.security.auth.kerberos.Krb5LoginModuleWrapperClient required
          credsType=INITIATOR useFirstPass=false 
      forwardable=false renewable=false noAddress=false;
      };
    2. Si la memoria caché de credenciales Kerberos no está en la ubicación predeterminada, establezca la propiedad com.ibm.CORBA.krb5CcacheFile como un URL: Por ejemplo:
      com.ibm.CORBA.krb5CcacheFile=FILE:/home/smith/krb5cc_smith
      La ubicación predeterminada del archivo de memoria caché de credenciales de Kerberos depende del sistema operativo que esté utilizando. La memoria caché de credenciales del usuario se localiza en el orden siguiente:

      El archivo al que se hace referencia en la propiedad de Java KRB5CCNAME
      <user.home>/krb5cc_<user.name>
      <user.home>/krb5cc (if <user.name> cannot be obtained)

      Nota: Cuando la memoria caché de credenciales Kerberos se utiliza para la autenticación, el ticket de delegación Kerberos de cliente no es renovable.
  7. Opcional: Si se produce un error, asegúrese de que todos los relojes de la máquina de WebSphere Application Server estén sincronizados con las máquinas de KDC. Valide un nombre principal y una contraseña Kerberos utilizando el mandato kinit. Se recomienda utilizar el mandato kinit que se proporciona con JDK (Java SE Development Kit) 8.
    Escriba lo siguiente para recibir ayuda para este mandato:
    kinit -help
    A continuación figura un ejemplo del mandato kinit. En este ejemplo, se puede obtener un TGT (ticket-granting ticket) de Kerberos para duke y la memoria caché de credenciales de Kerberos se almacena en la ubicación predeterminada, c:\Documents and Settings\duke\krb5cc_duke:
    kinit duke@JAVA.SUN.COM
    Nota: Este uso del mandato es posible que no funcione en todas las versiones de KDC.
    [z/OS]
    Nota: Tanto el nombre del identificador individual de Kerberos como la contraseña son sensibles a las mayúsculas y minúsculas. En caso de que esté utilizando un KDC en z/OS, debe especificar el nombre del identificador individual de Kerberos exactamente como aparte en el segmento KERB del ID de usuario RACF. A menos que tenga contraseñas con mayúsculas y minúsculas mezcladas habilitadas para RACF, debe especificar la contraseña en letras mayúsculas para el mandato kinit.

Resultados

Ha configurado un cliente Java para la autenticación Kerberos.

Puede completar la configuración de Kerberos en el servidor mediante la consola administrativa o los mandatos wsadmin. Para obtener más información, consulte Configuración de Kerberos como mecanismo de autenticación mediante la consola administrativa o los mandatos de autenticación Kerberos.


Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_kerb_auth_client
File name: tsec_kerb_auth_client.html