Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2023-05-11 GMT+08:00

Criação e uso de uma chave de assinatura

Cenário

As chaves de assinatura são usadas pelos serviços de back-end para verificar a identidade do APIG.

Uma chave de assinatura consiste em uma chave e um segredo e pode ser usada somente depois de vinculada a uma API. Quando uma API vinculada a uma chave de assinatura é chamada, o APIG adiciona detalhes de assinatura à solicitação da API. O serviço de back-end da API assina a solicitação da mesma maneira e verifica a identidade da APIG verificando se a assinatura é consistente com a do cabeçalho de Authorization enviado pelo APIG.

Cada API só pode ser vinculada a uma chave de assinatura em um determinado ambiente, mas cada chave de assinatura pode ser vinculada a várias APIs.

Procedimento

  1. Crie uma chave de assinatura no console do APIG.
  2. Vincule a chave de assinatura a uma API.
  3. APIG envia solicitações assinadas contendo uma assinatura no cabeçalho Authorization para o serviço de back-end. O serviço de back-end pode usar diferentes linguagens de programação (como Java, Go, Python, JavaScript, C#, PHP, C++, C e Android) para assinar cada solicitação e verificar se as duas assinaturas são consistentes.
Figura 1 Fluxo de processo de chave de assinatura

Criação de uma chave de assinatura

  1. Acesse o console de gerenciamento.
  2. Clique em no canto superior esquerdo e selecione uma região.
  3. Clique em no canto superior esquerdo e escolha API Gateway.
  4. Escolha um tipo de gateway no painel de navegação.

    • Shared Gateway: você pode criar e gerenciar APIs imediatamente. Você será cobrado com base no número de chamadas de API.
    • Dedicated Gateways: você pode criar e gerenciar APIs depois de comprar um gateway. Você será cobrado com base na duração de uso do gateway.

  5. No painel de navegação, escolha API Publishing > Signature Keys.
  6. Clique em Create Signature Key.
  7. Na caixa de diálogo Create Signature Key, defina os parâmetros listados em Tabela 1.

    Tabela 1 Parâmetros para criar uma chave de assinatura

    Parâmetro

    Descrição

    Name

    Nome da chave de assinatura.

    Type

    Tipo da chave de assinatura. Selecione HMAC ou Basic. Este parâmetro está disponível apenas para gateways dedicados.

    Key

    Combinado com Secret para formar um par de chaves de assinatura.

    • Se você definir Type como HMAC, insira a chave do par de chaves usado para autenticação de código de autenticação de mensagem baseado em hash (HMAC).
    • Se você definir Type como Basic, digite o nome de usuário usado para autenticação básica.

    Secret

    Combinado com Key para formar um par de chaves de assinatura.

    • Se você definir Type como HMAC, insira o segredo do par de chaves usado para autenticação HMAC.
    • Se você definir Type como Basic, digite a senha usada para autenticação básica.

    Confirm Secret

    Digite o segredo novamente.

  8. Clique em OK.

Vinculação de uma chave de assinatura a uma API

  1. No painel de navegação, escolha API Publishing > Signature Keys.
  2. Vincule uma chave de assinatura a uma API. Você pode usar um dos seguintes métodos:

    • Na coluna Operation da chave de assinatura a ser vinculada a uma API, clique em Bind to API.
    • Clique no nome da chave de assinatura de destino.

  3. Clique em Select API.
  4. Especifique um grupo de APIs, um ambiente e uma palavra-chave de nome de API para pesquisar a API desejada.
  5. Selecione a API e clique em OK.

    Se uma chave de assinatura não for mais necessária para uma API, desvincule-a da API.

Verificar o resultado da assinatura

Assine cada solicitação de back-end seguindo as instruções em Algoritmo de assinatura e verifique se a assinatura do back-end é consistente com a assinatura no cabeçalho Authorization da solicitação da API.

Criação de uma chave de assinatura chamando uma API

Você também pode criar uma chave de assinatura chamando uma API fornecida pelo APIG. Para obter detalhes, consulte Criação de uma chave de assinatura.