Instale e use o provedor AWS CloudHSM JCE para o Client SDK 5 - AWS CloudHSM

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Instale e use o provedor AWS CloudHSM JCE para o Client SDK 5

O provedor JCE é compatível com OpenJDK 8, OpenJDK 11, OpenJDK 17 e OpenJDK 21. Você pode baixar os dois no site do OpenJDK.

nota

Para executar um único cluster HSM com o Client SDK 5, você deve primeiro gerenciar as configurações de durabilidade da chave do cliente configurando disable_key_availability_check como True. Para obter mais informações, consulte Sincronização de chave e a ferramenta de configuração do Client SDK 5.

Instalar o provedor JCE

  1. Use so seguintes comandos para fazer download e instalar o provedor JCE.

    Amazon Linux 2

    Instale o provedor JCE para Amazon Linux 2 na arquitetura x86_64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-jce-latest.el7.x86_64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.el7.x86_64.rpm

    Instale o provedor JCE para Amazon Linux 2 na arquitetura ARM64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-jce-latest.el7.aarch64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.el7.aarch64.rpm
    Amazon Linux 2023

    Instale o provedor JCE para Amazon Linux 2023 na arquitetura x86_64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Amzn2023/cloudhsm-jce-latest.amzn2023.x86_64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.amzn2023.x86_64.rpm

    Instale o provedor JCE para Amazon Linux 2023 na arquitetura ARM64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Amzn2023/cloudhsm-jce-latest.amzn2023.aarch64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.amzn2023.aarch64.rpm
    CentOS 7 (7.8+)

    Instale o provedor JCE para CentOS 7 na arquitetura x86_64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-jce-latest.el7.x86_64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.el7.x86_64.rpm
    RHEL 7 (7.8+)

    Instale o provedor JCE para RHEL 7 na arquitetura x86_64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-jce-latest.el7.x86_64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.el7.x86_64.rpm
    RHEL 8 (8.3+)

    Instale o provedor JCE para RHEL 8 na arquitetura x86_64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-jce-latest.el8.x86_64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.el8.x86_64.rpm
    RHEL 9 (9.2+)

    Instale o provedor JCE para RHEL 9 (9.2+) na arquitetura x86_64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL9/cloudhsm-jce-latest.el9.x86_64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.el9.x86_64.rpm

    Instale o provedor JCE para RHEL 9 (9.2+) na arquitetura ARM64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL9/cloudhsm-jce-latest.el9.aarch64.rpm
    $ sudo yum install ./cloudhsm-jce-latest.el9.aarch64.rpm
    Ubuntu 20.04 LTS

    Instale o provedor JCE para o Ubuntu 20.04 LTS na arquitetura x86_64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Focal/cloudhsm-jce_latest_u20.04_amd64.deb
    $ sudo apt install ./cloudhsm-jce_latest_u20.04_amd64.deb
    Ubuntu 22.04 LTS

    Instale o provedor JCE para o Ubuntu 22.04 LTS na arquitetura x86_64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Jammy/cloudhsm-jce_latest_u22.04_amd64.deb
    $ sudo apt install ./cloudhsm-jce_latest_u22.04_amd64.deb

    Instale o provedor JCE para o Ubuntu 22.04 LTS na arquitetura ARM64:

    $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Jammy/cloudhsm-jce_latest_u22.04_arm64.deb
    $ sudo apt install ./cloudhsm-jce_latest_u22.04_arm64.deb
    Windows Server 2016

    Instale o provedor JCE para Windows Server 2016 na arquitetura x86_64, abra PowerShell como administrador e execute o seguinte comando:

    PS C:\> wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMJCE-latest.msi -Outfile C:\AWSCloudHSMJCE-latest.msi
    PS C:\> Start-Process msiexec.exe -ArgumentList '/i C:\AWSCloudHSMJCE-latest.msi /quiet /norestart /log C:\client-install.txt' -Wait
    Windows Server 2019

    Instale o provedor JCE para Windows Server 2019 na arquitetura x86_64, abra PowerShell como administrador e execute o seguinte comando:

    PS C:\> wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMJCE-latest.msi -Outfile C:\AWSCloudHSMJCE-latest.msi
    PS C:\> Start-Process msiexec.exe -ArgumentList '/i C:\AWSCloudHSMJCE-latest.msi /quiet /norestart /log C:\client-install.txt' -Wait
  2. Bootstrap do Client SDK 5. Para obter mais informações sobre ações de bootstrap, consulte Bootstrap o Client SDK.

  3. Localize os seguintes arquivos do provedor JCE:

    Linux
    • /opt/cloudhsm/java/cloudhsm-version.jar

    • /opt/cloudhsm/bin/configure-jce

    • /opt/cloudhsm/bin/jce-info

    Windows
    • C:\Program Files\Amazon\CloudHSM\java\cloudhsm-version.jar>

    • C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe

    • C:\Program Files\Amazon\CloudHSM\bin\jce_info.exe

Forneça credenciais ao provedor JCE

Os HSMs precisam autenticar seu aplicativo Java antes que o aplicativo possa usá-los. Os HSMs autenticam uma sessão usando o método de login explícito ou implícito.

Login explícito AWS CloudHSM esse método permite que você forneça credenciais do diretamente no aplicativo. Ele usa o método AuthProvider, em que você passa no mome do usuário, a senha e o ID da partição do HSM do usuário CU. Para obter mais informações, consulte Exemplo de login em um código HSM.

Login implícito AWS CloudHSM esse método permite que você defina as credenciais do em um novo arquivo de propriedades, as propriedades do sistema, ou como variáveis de ambiente.

  • Propriedades do sistema: defina as credenciais por meio das propriedades do sistema ao executar seu aplicativo. Os exemplos a seguir mostram duas formas diferentes de fazer isso:

    Linux
    $ java -DHSM_USER=<HSM user name> -DHSM_PASSWORD=<password>
    System.setProperty("HSM_USER","<HSM user name>"); System.setProperty("HSM_PASSWORD","<password>");
    Windows
    PS C:\> java -DHSM_USER=<HSM user name> -DHSM_PASSWORD=<password>
    System.setProperty("HSM_USER","<HSM user name>"); System.setProperty("HSM_PASSWORD","<password>");
  • Variáveis de ambiente: defina as credenciais como variáveis de ambiente.

    Linux
    $ export HSM_USER=<HSM user name> $ export HSM_PASSWORD=<password>
    Windows
    PS C:\> $Env:HSM_USER="<HSM user name>" PS C:\> $Env:HSM_PASSWORD="<password>"

As credenciais talvez não estejam disponíveis se o aplicativo não fornecê-las ou se você tentar uma operação antes que o HSM autentique a sessão. Nesses casos, a biblioteca de software do CloudHSM para Java procura as credenciais na seguinte ordem:

  1. Propriedades do sistema

  2. Variáveis de ambiente

Fundamentos do gerenciamento de chaves no provedor JCE

Os conceitos básicos do gerenciamento de chaves no provedor JCE envolvem a importação e a exportação, o carregamento por identificador ou a exclusão de chaves. Para obter mais informações sobre como gerenciar chaves, consulte Gerenciar chaves no exemplo de código.

Você também pode encontrar mais amostras de código de provedor JCE em Exemplos de código.