Assinar e verificar os dados

O AO realiza operações de assinatura e verificação pelo Google Distributed Cloud (GDC) isolado do KMS por um cliente gRPC.

Antes de começar

Antes de realizar operações do KMS, configure kubectl para acessar o servidor da API Management e receber as permissões necessárias.

Configurar o acesso ao servidor da API Management

Configure o kubectl para acessar o servidor da API Management:

  1. Se você ainda não fez isso, receba um arquivo kubeconfig para o servidor da API Management usando a interface de linha de comando (CLI) gdcloud.
  2. Defina a variável de ambiente MANAGEMENT_API_SERVER:

    export MANAGEMENT_API_SERVER=PATH_TO_KUBECONFIG
    

    Substitua PATH_TO_KUBECONFIG pelo caminho do arquivo kubeconfig gerado.

  3. Faça o download, instale e configure a CLI gdcloud, caso ainda não tenha feito isso. Para fazer isso, siga a visão geral da CLI gdcloud.

Permissões necessárias

Para receber as permissões necessárias, peça ao administrador do IAM da organização para conceder a você a função de desenvolvedor do KMS (kms-developer) no seu projeto.

Assinar dados

Para assinar dados, use o comando gdcloud kms keys asymmetric-sign. Esse comando cria uma assinatura digital de um arquivo de entrada usando a chave Signing e salva a assinatura codificada em base64.

  • Para assinar seus dados, transmita o nome da chave e o seguinte:

    gdcloud kms keys asymmetric-sign \
    namespaces/NAMESPACE/signingKeys/KEY_NAME \
    --input-file=INPUT_PATH \
    --signature-file=SIGNATURE_FILE
    

    Substitua as seguintes variáveis:

    • NAMESPACE: o namespace do projeto, por exemplo: kms-test1.
    • KEY_NAME: o nome da chave usada para assinar. Por exemplo: key-1.
    • INPUT_PATH: o caminho do arquivo de entrada que você quer assinar.
    • SIGNATURE_FILE: o caminho do arquivo de saída para salvar a assinatura codificada em base64.

    Depois de executar o comando, você vai encontrar um arquivo de saída especificado na flag --signature-file que contém a assinatura codificada em base64.

Verificar dados

Depois de assinar os dados, verifique a assinatura digital base64 usando o comando gdcloud kms keys asymmetric-verify. Esse comando verifica se a assinatura digital codificada em base64 que você recebe depois de executar o comando gdcloud kms keys asymmetric-sign é válida.

  • Para verificar a assinatura, transmita o arquivo de assinatura e o seguinte:

    gdcloud kms keys asymmetric-verify \
    namespaces/NAMESPACE/signingKeys/KEY_NAME \
      --input-file=INPUT_PATH \
      --signature-file=SIGNATURE_FILE
    

    Depois de executar o comando, você vai ver a saída Verification OK se a operação for bem-sucedida. Caso contrário, você vai ver a saída de falha Verification Failure.