Assine e valide dados

O AO realiza operações de assinatura e validação através do Google Distributed Cloud (GDC) isolado do KMS através de um cliente gRPC.

Antes de começar

Antes de realizar operações do KMS, configure kubectl para aceder ao servidor da API Management e obter as autorizações necessárias.

Configure o acesso ao servidor da API Management

Configure o kubectl para aceder ao servidor da API Management:

  1. Se ainda não o fez, obtenha um ficheiro kubeconfig para o servidor da API Management através da interface de linhas de comando (CLI) gcloud.
  2. Defina a variável de ambiente MANAGEMENT_API_SERVER:

    export MANAGEMENT_API_SERVER=PATH_TO_KUBECONFIG
    

    Substitua PATH_TO_KUBECONFIG pelo caminho do ficheiro kubeconfig gerado.

  3. Se ainda não o fez, transfira, instale e configure a CLI gdcloud. Para o fazer, siga a vista geral da CLI gdcloud.

Autorizações necessárias

Para receber as autorizações de que precisa, peça ao administrador da IAM da sua organização para lhe conceder a função de programador do KMS (kms-developer) no seu projeto.

Dados de assinatura

Para assinar dados, use o comando gdcloud kms keys asymmetric-sign. Este comando cria uma assinatura digital de um ficheiro de entrada através da chave Signing e guarda a assinatura codificada em base64.

  • Para assinar os 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 espaço de nomes do projeto, por exemplo: kms-test1.
    • KEY_NAME: o nome da chave usada para assinar, por exemplo: key-1.
    • INPUT_PATH: o caminho do ficheiro de entrada que quer que seja assinado.
    • SIGNATURE_FILE: o caminho do ficheiro de saída para guardar a assinatura codificada em base64.

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

Valide dados

Depois de assinar os dados, valide a assinatura digital base64 com o comando gdcloud kms keys asymmetric-verify. Este comando verifica se a assinatura digital codificada em base64 que recebe após executar o comando gdcloud kms keys asymmetric-sign é válida ou não.

  • Para validar a assinatura, transmita o ficheiro 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, vê o resultado Verification OK se for bem-sucedido. Se não for bem-sucedido, vê o resultado da falha Verification Failure.