Protegendo as Conexões do Cliente J2C

[Version 8.5 and later] Use a arquitetura Java 2 Connector (J2C) para proteger as conexões entre clientes WebSphere eXtreme Scale e seus aplicativos.

Sobre Esta Tarefa

Os aplicativos se referem ao connection factory, o que estabelece a conexão com a grade de dados remotos. Cada connection factory hospeda uma única conexão do cliente do eXtreme Scale que é reutilizada para todos os componentes de aplicativo.
Importante: Uma vez que a conexão do cliente do eXtreme Scale pode incluir um cache próximo, é importante que os aplicativos não compartilhem uma conexão. Um connection factory deve existir para uma instância única do aplicativo para evitar problemas ao compartilhar objetos entre os aplicativos.
É possível configurar o gerador de credenciais com a API ou no arquivo de propriedades do cliente. No arquivo de propriedades do cliente, as propriedades securityEnabled e credentialGenerator são usadas. O exemplo de código a seguir é exibido em diversas linhas para propósitos de publicação:
securityEnabled=true
credentialGeneratorClass=com.ibm.websphere.objectgrid.security.plugins.builtins.
     UserPasswordCredentialGenerator
credentialGeneratorProps=operator XXXXXX

O gerador de credenciais e a credencial no arquivo de propriedades do cliente são usados para a operação de conexão eXtreme Scale e as credenciais J2C padrão. Portanto, as credenciais que são especificadas com a API são usadas no tempo de conexão J2C para a conexão J2C. No entanto, se nenhuma credencial estiver especificada no tempo de conexão J2C, o gerenciador de credencial no arquivo de propriedades do cliente será usado.

Procedimento

  1. Configure o acesso seguro em que a conexão J2C representa o cliente eXtreme Scale. Use a propriedade do connection factory ClientPropertiesResource ou a propriedade do connection factory ClientPropertiesURL para configurar a autenticação de cliente.
  2. Configure as propriedades de segurança do cliente para usar o connection factory que faz referência ao objeto gerador de credencial apropriado para eXtreme Scale. Essas propriedades também são compatíveis com a segurança do servidor eXtreme Scale. Por exemplo, use o gerador de credencial WSTokenCredentialGenerator para as credenciais WebSphere quando o eXtreme Scale estiver instalado com o WebSphere Application Server. Como alternativa, use o gerador de credencial UserPasswordCredentialGenerator quando executar o eXtreme Scale em um ambiente independente. No exemplo a seguir, as credenciais são passadas programaticamente usando a chamada de API em vez de usar a configuração nas propriedades do cliente:
    XSConnectionSpec spec = new XSConnectionSpec();
    spec.setCredentialGenerator(new UserPasswordCredentialGenerator
    ("operator", "xxxxxx"));
    Connection conn = connectionFactory.getConnection(spec);
  3. (Opcional) Desative o cache próximo, se necessário.

    Todas as conexões J2C de um único connection factory compartilham um único cache próximo. As permissões da entrada de grade e as permissões de mapa são validadas no servidor, mas não no cache próximo. Quando um aplicativo usa diversas credenciais para criar conexões J2C e a configuração usa permissões específicas para entradas de grade e mapas para essas credenciais, desative o cache próximo. Desative o cache próximo usando a propriedade do connection factory, ObjectGridResource ou ObjectGridURL. Configure a propriedade numberOfBuckets para 0.

  4. (Opcional) Configure as configurações de política de segurança, se necessário.
    Se o aplicativo J2EE contém a configuração de arquivo Resource Adapter Archive (RAR) do eXtreme Scale integrado, pode ser necessário configurar as configurações de política de segurança adicionais no arquivo da política de segurança para o aplicativo. Por exemplo, essas políticas são necessárias:
    permission com.ibm.websphere.security.WebSphereRuntimePermission 
    "accessRuntimeClasses";
    permission java.lang.RuntimePermission "accessDeclaredMembers";
    permission javax.management.MBeanTrustPermission "register";
    permission java.lang.RuntimePermission "getClassLoader";

    Além disso, quaisquer arquivos de propriedade ou recurso usados pelos connection factories precisarão do arquivo ou de outras permissões, como permission java.io.FilePermission "filePath";. Para WebSphere Application Server, o arquivo de políticas é META-INF/was.policy, e está localizado no arquivo EAR J2EE.

Resultados

As propriedades de segurança do cliente configuradas no domínio de serviço de catálogo são usadas como valores padrão. Os valores que você especifica substituem quaisquer propriedades definidas nos arquivos client.properties.

O que Fazer Depois

Use as APIs de acesso a dados eXtreme Scale para desenvolver os componentes do cliente que você deseja para usar as transações.