Asegurar las conexiones de cliente J2C

[Version 8.5 and later] Utilice la arquitectura Java 2 Connector (J2C) para proteger las conexiones entre los clientesWebSphere eXtreme Scale y sus aplicaciones.

Acerca de esta tarea

Las aplicaciones hacen referencia a la fábrica de conexiones, que establece la conexión con la cuadrícula de datos remota. Cada fábrica de conexiones alberga una conexión de cliente eXtreme Scale individual que se reutiliza para todos los componentes de aplicación.
Importante: Puesto que la conexión del cliente de eXtreme Scale puede incluir una memoria caché cercana, es importante que las aplicaciones no compartan una conexión. Una fábrica de conexiones debe existir para una sola instancia de aplicación para evitar problemas a la hora de compartir objetos entre aplicaciones.
Puede establecer el generador de credenciales con la API o en el archivo de propiedades de cliente. En el archivo de propiedades de cliente, se utilizan las propiedades securityEnabled y credentialGenerator. El siguiente ejemplo de código se muestra en varias líneas para fines de publicación:
securityEnabled=true
credentialGeneratorClass=com.ibm.websphere.objectgrid.security.plugins.builtins.
     UserPasswordCredentialGenerator
credentialGeneratorProps=operator XXXXXX

El generador de credenciales y las credenciales en el archivo de propiedades de cliente se utilizan para la operación de conexión de eXtreme Scale y las credenciales J2C predeterminadas. Por lo tanto, las credenciales que se especifican con la API se utilizan en el momento de la conexión J2C para la conexión J2C. Sin embargo, si no se han especificado credenciales en el momento de conexión de J2C, se utilizará el generador de credenciales en el archivo de propiedades de cliente.

Procedimiento

  1. Configure el acceso seguro donde la conexión J2C representa el cliente de eXtreme Scale. Utilice la propiedad de la fábrica de conexiones ClientPropertiesResource o la propiedad de la fábrica de conexiones ClientPropertiesURL para configurar la autenticación de cliente.
  2. Configure las propiedades de seguridad de cliente para utilizar la fábrica de conexiones que hace referencia al objeto del generador de credenciales adecuado para eXtreme Scale. Estas propiedades también son compatibles con el servidor de seguridad de eXtreme Scale. Por ejemplo, utilice el generador de credenciales WSTokenCredentialGenerator para las credenciales de WebSphere cuando se instala eXtreme Scale con WebSphere Application Server. De forma alternativa, utilice el generador de credenciales UserPasswordCredentialGenerator al ejecutar el eXtreme Scale en un entorno autónomo. En el siguiente ejemplo, las credenciales se pasan mediante programa utilizando la llamada API en lugar de utilizar la configuración en las propiedades de cliente:
    XSConnectionSpec spec = new XSConnectionSpec();
    spec.setCredentialGenerator(new UserPasswordCredentialGenerator("operator", "xxxxxx"));
    Connection conn = connectionFactory.getConnection(spec);
  3. (Opcional) Inhabilite la memoria caché cercana, si es necesario.

    Todas las conexiones J2C de una sola fábrica de conexiones comparten una sola memoria caché cercana. Los permisos de entrada de cuadrícula y los permisos de correlación se validan en el servidor y no en la memoria caché cercana. Si una aplicación utiliza varias credenciales para crear conexiones J2C y la configuración utiliza permisos específicos para entradas de cuadrícula y correlaciones para dichas credenciales, debe inhabilitar la memoria caché cercana. Inhabilite la memoria caché cercana mediante la conexión de la propiedad de fábrica de conexiones ObjectGridResource o ObjectGridURL. Establezca la propiedad numberOfBuckets en 0.

  4. (Opcional) Establezca valores de política de seguridad, si es necesario.
    Si la aplicación J2EE contiene la configuración del archivo RAR (archivo de adaptador de recursos) de eXtreme Scale incorporado, podría ser necesario establecer valores de política de seguridad adicionales en el archivo de políticas de seguridad para la aplicación. Por ejemplo, se precisan las siguientes políticas:
    permission com.ibm.websphere.security.WebSphereRuntimePermission "accessRuntimeClasses";permission java.lang.RuntimePermission "accessDeclaredMembers";
    permission javax.management.MBeanTrustPermission "register";
    permission java.lang.RuntimePermission "getClassLoader";

    Además, cualquier propiedad o archivo de recursos utilizado por las fábricas de conexiones requieren permisos de archivo u otros permisos, como por ejemplo permission java.io.FilePermission "filePath";. Para WebSphere Application Server, el archivo de política es META-INF/was.policy y se encuentra en el archivo EAR J2EE.

Resultados

Las propiedades de seguridad de cliente que ha configurado en el dominio de servicio de catálogo se utilizan como valores predeterminados. Los valores que especifica sustituyen a las propiedades definidas en los archivos client.properties.

Qué hacer a continuación

Utilice las APIs de acceso a los datos de eXtreme Scale para desarrollar componentes de cliente con los que desea utilizar transacciones.