Configuração

A CSP JCA/JCE do Dinamo está em uma camada acima da API nativa do Dinamo. Consulte o tópico Variáveis de ambiente sobre opções de configuração da biblioteca cliente.

A configuração da CSP JCA/JCE pode ser feita de duas maneiras: interface gráfica (GUI) ou linha de comando (CLI).

Os passos necessários para a configuração são os seguintes:

  1. Gerar o arquivo de configuração Configuration.ND através do programa de configuração jca_config.jar;

  2. Copiar o arquivo de configuração para a pasta onde está localizado o programa que utilizará a CSP java do Dinamo.

O programa de configuração da JCA/JCE criará um arquivo chamado Configuration.ND que deverá ser copiado para a pasta onde está localizado o programa que utiliza a CSP java do Dinamo. O arquivo gerado pode ser utilizado em qualquer plataforma de sistema operacional.

Para encontrar o arquivo de configuração Configuration.ND, a JCA além de procurar no diretório da aplicação, utiliza o classpath.

Sequência de busca para aplicações Java em Servidor de Aplicação:

  1. Diretório raiz da aplicação;

  2. /WEB-INF/classes;

  3. /WEB-INF/lib/*.jar, onde *.jar significa uma busca dentro dos jars;

  4. Diretório conf do servidor de aplicação;

  5. Classes bootstrap da JVM;

Sequência de busca para aplicações Java tipo executável:

  1. Diretório raiz da aplicação (que pode ser o root do .jar por exemplo, encapsulado);

  2. Classpath da aplicação;

Além da busca padrão, a escolha do arquivo de configuração também poderá ser feita através de variável de ambiente ou propriedades de sistema (System Properties).

  1. Nome da propriedade: dinamo.hsm.configfile

    Valor: Caminho completo para o arquivo de configuração incluindo o nome do arquivo.

  2. Variável de ambiente: DIN_JCA_CONF_FILE

    Valor: Caminho completo para o arquivo de configuração incluindo o nome do arquivo.

Ao definir o caminho de configuração pelas opções acima, a busca se dará pelo caminho com nome do arquivo e não pelos caminhos padrão. A ordem de busca será:

  1. Propriedade sistema;

  2. Variável de ambiente;

  3. Busca padrão (descrita acima);

O programa de configuração é chamado utilizando a linha de comando java -jar jca_config.jar. Ao executar o programa sem parâmetros a interface gráfica é inicializada, chamando com parâmetros a interação é feita apenas por linha de comando.

As telas e opções a seguir podem sofrer variações dependendo da versão utilizada.

Via Interface Gráfica (GUI)

  1. Execute o programa jca_config.jar sem parâmetros: java -jar jca_config.jar.

  2. Configure o balanceamento de carga (Load Balance), de acordo com o seu ambiente.

    • Selecionando Enable a CSP Java irá utilizar o balanceamento de carga configurado na biblioteca cliente.

    • Selecionando Disable deverá ser especificado um IP. O balanceamento de carga configurado na biblioteca será ignorado e será utilizado o IP especificado.

  3. Selecione User/Password e configure o usuário e senha do HSM. Caso utilize Access Tokens selecionar a opção Access Token e preencher o campo Access Token com a estrutura DN_A_TOKEN no formato Base64 (por exemplo: o AToken retornado pelo hsmcon ou pelo método TacAccessToken.getAToken() e transformado em Base64).

  4. Selecione o nível de log e a localização do arquivo de log.

  5. Selecionar o formato de exportação de chave pública que será retornado pela JCA: SubjectPublicKeyInfo ou SubjectPublicKey.

    Recomenda-se deixar esta opção desmarcada. Ela só deverá ser habilitada quando estritamente necessário para o funcionamento da aplicação.

  6. Selecionar o tipo de sessão (com ou sem proteção de canal por TLS). Marcar a caixa desabilita o uso de sessão encriptada.

    Recomenda-se deixar esta opção desmarcada. Ela só deverá ser habilitada quando estritamente necessário para o funcionamento da aplicação.

  7. Selecionar o atributo de exportação de chaves simétricas. Marcar a caixa habilita a geração de chaves simétricas exportáveis.

    Avaliar de acordo com a necessidade da aplicação.

  8. Selecionar o atributo de exportação de chaves assimétricas. Marcar a caixa habilita a geração de chaves assimétricas exportáveis.

    Avaliar de acordo com a necessidade da aplicação.

  9. OK para finalizar.

Via Linha de Comando (CLI)

  1. Execute o programa jca_config.jar com parâmetros (Ex: java -jar jca_config.jar -help).

    java -jar jca_config.jar -h
    Usage: java CSPConfig <options>
    where possible options include:
    -lb                           Enable load balance
    -addr <address>               Disable load balance and set a specific HSM address
    -usr <user name>              Specify HSM user name
    -pwd <password>               Specify HSM user password
    -at <accesstoken>             Specify access token in Base64. This option cannot be used with -usr and -pwd.
    -loglevel {none, info, warning, error, debug}Specify JCA/JCE's log level
    -logpath <log path>           Specify JCA/JCE's log path
    -spk                          Enable SubjectPublicKey export format[0-disabled/1-enabled]
    -tls                          Enable TLS [0-disabled/1-enabled]
    -ces                          Create exportable symmetric key [0-disabled/1-enabled]
    -cea                          Create exportable asymmetric key [0-disabled/1-enabled]
    -file                         Configuration file
    -ls                           List file properties
    -help | -h                    Print a synopsis of standard options
    
    *Call CSPConfig with no options to start GUI mode.

A configuração padrão de atributo de exportação de chaves é: Chaves simétricas exportáveis e assimétricas não exportáveis.

  • Exemplo 1. Esta chamada irá configurar o balanceamento de carga, usuário e senha, o nível de log para debug, chaves simétricas exportáveis, assimétricas não exportáveis e o caminho do arquivo de log:

    java -jar jca_config.jar -lb -usr master -pwd 12345678 -loglevel debug -logpath c:\jca.log -spk 0 -tls 1 -ces 1 -cea 0 -file Configuration.ND
  • Exemplo 2. Esta chamada configurará um IP específico, usuário e senha, e com o log desabilitado:

    java -jar jca_config.jar -addr 10.0.1.2 -usr master -pwd 12345678 -loglevel none -spk 0 -tls 1 -file Configuration.ND
  • Exemplo 3. Esta chamada configurará um Access Token.

    java -jar jca_config.jar -addr 10.0.1.2 -at bHVhbgAAAAAAAAAAAAAAAGIwx1mtzLLQ9OkapMIzRrTNxAssvFeUvDh1mO7I4x5xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= -loglevel none -spk 0 -tls 1 -file Configuration.ND
  • Exemplo 4. Esta chamada listará os atributos da configuração.

    java -jar jca_config.jar -file Configuration.ND -ls

Last updated