Controle de utilização do HSM - AWS CloudHSM

Controle de utilização do HSM

Quando a workload exceder a capacidade do módulo de segurança de hardware (HSM) do cluster do AWS CloudHSM, você receberá mensagens de erro informando que os HSMs estão ocupados ou com controle de utilização. Quando isso acontece, você pode ver uma throughput reduzida ou um aumento na taxa de solicitações de rejeição de HSMs. Além disso, os HSMs podem enviar os seguintes erros de ocupação.

  • No PKCS11, os erros de ocupação são mapeados para CKR_FUNCTION_FAILED. Esse erro pode ocorrer por vários motivos, mas se o controle de utilização do HSM causar esse erro, as seguintes linhas de registro aparecerão no seu registro:

    • [cloudhsm_provider::hsm1::hsm_connection::e2e_encryption::error] Failed to prepare E2E response. Error: Received error response code from Server. Response Code: 187

    • [cloudhsm_pkcs11::decryption::aes_gcm] Received error from the server. Error: This operation is already in progress. Internal error code: 0x000000BB

  • No JCE, os erros de ocupação são mapeados para com.amazonaws.cloudhsm.jce.jni.exception.InternalException: Unexpected error with the Provider: The HSM could not queue the request for processing.

  • Os erros de ocupação de outros SDKs imprimem a seguinte mensagem: Received error response code from Server. Response Code: 187.

  • No PKCS11, os erros de ocupação são mapeados para CKR_OPERATION_ACTIVE.

  • No JCE, os erros de ocupação são mapeados para CFM2Exception com o status de 0xBB (187). Os aplicativos podem usar a função getStatus() em CFM2Exception para verificar qual status será retornado pelo HSM.

  • Os erros de ocupação de outros SDKs imprimem a seguinte mensagem: HSM Error: HSM is already busy generating the keys(or random bytes) for another request.

Resolução

É possível resolver esses problemas executando uma ou mais das seguintes ações:

  • Adicione comandos de repetição para operações de HSM rejeitadas em sua camada de aplicação. Antes de ativar os comandos de repetição, verifique se o cluster está dimensionado adequadamente para atender às cargas máximas.

    nota

    Para o Client SDK 5.8.0 e versões posteriores, os comandos de repetição são ativados por padrão. Para obter detalhes sobre a configuração do comando de repetição de cada SDK, consulte Configurações avançadas para a ferramenta de configuração do Client SDK 5.

  • Adicione mais HSMs ao seu cluster seguindo as instruções emEscalar HSMs em um cluster do AWS CloudHSM.

    Importante

    Recomendamos testar a carga do seu cluster para determinar a carga máxima que você deve prever e, em seguida, adicionar mais um HSM a ele para garantir a alta disponibilidade.