Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2023-11-30 GMT+08:00

Creación y uso de una clave de firma

Escenario

Los servicios de backend utilizan las claves de firma para verificar la identidad de API Gateway.

Una clave de firma consiste en una clave y un secreto, y solo se puede usar después de estar vinculada a una API. Cuando se llama a una API vinculada con una clave de firma, API Gateway agrega detalles de firma a la solicitud de API. El servicio backend de la API firma la solicitud de la misma manera y verifica la identidad de API Gateway comprobando si la firma es consistente con la del encabezado de Authorization enviado por API Gateway.

Cada API solo se puede vincular con una clave de firma en un entorno determinado, pero cada clave de firma se puede vincular a varias API.

Procedimiento

  1. Cree una clave de firma en la consola API Gateway.
  2. Enlace la clave de firma a una API.
  3. API Gateway envía solicitudes firmadas que contienen una firma en el encabezado Authorization al servicio de backend. El servicio backend puede utilizar diferentes lenguajes de programación (como Java, Go, Python, JavaScript, C#, PHP, C++, C, y Android) para firmar cada solicitud y comprobar si las dos firmas son consistentes.
Figura 1 Flujo de proceso de clave de firma

Creación de una clave de firma

  1. Inicie sesión en la consola de gestión.
  2. Haga clic en en la esquina superior izquierda y seleccione una región.
  3. Haz clic en en la esquina superior izquierda y elige API Gateway.
  4. Elija un tipo de puerta de enlace en el panel de navegación.

    • Shared Gateway: puede crear y gestionar API de inmediato. Se le facturará en función del número de llamadas API.
    • Dedicated Gateways: puede crear y gestionar API después de comprar una puerta de enlace. Se le facturará en función de la duración del uso del gateway.

  5. En el panel de navegación, seleccione API Publishing > Signature Keys.
  6. Haga clic en Create Signature Key.
  7. En el cuadro de diálogo Create Signature Key, establezca los parámetros enumerados en Tabla 1.

    Tabla 1 Parámetros para crear una clave de firma

    Parámetro

    Descripción

    Name

    Nombre de clave de firma.

    Type

    Tipo de la clave de firma. Seleccione HMAC o Basic. Este parámetro solo está disponible para puertas de enlace dedicadas.

    Key

    Combinado con Secret para formar un par de claves de firma.

    • Si establece Type en HMAC, ingrese la clave del par de claves utilizado para la autenticación de código de autenticación de mensaje basado en hash (HMAC).
    • Si establece Type en Basic, introduzca el nombre de usuario utilizado para la autenticación básica.

    Secret

    Combinado con Key para formar un par de claves de firma.

    • Si establece Type en HMAC, introduzca el secreto del par de claves utilizado para la autenticación HMAC.
    • Si establece Type en Basic, introduzca la contraseña utilizada para la autenticación básica.

    Confirm Secret

    Introduce el secreto de nuevo.

  8. Haga clic en OK.

Vinculación de una clave de firma a una API

  1. En el panel de navegación, seleccione API Publishing > Signature Keys.
  2. Enlace una clave de firma a una API. Puede utilizar uno de los métodos siguientes:

    • En la columna Operation de la clave de firma que se vinculará a una API, haga clic en Bind to API.
    • Haga clic en el nombre de la clave de firma de destino.

  3. Haz clic en Select API.
  4. Especifique un grupo de API, un entorno y una palabra clave de nombre de API para buscar la API deseada.
  5. Seleccione la API y haga clic en OK.

    Si ya no se necesita una clave de firma para una API, desvíela de la API.

Verificación del resultado de la firma

Firme cada solicitud de backend siguiendo las instrucciones en Algoritmo de firma, y compruebe si la firma de backend es coherente con la firma en el encabezado Authorization de la solicitud de API.

Creación de una clave de firma mediante llamada a una API

También puede crear una clave de firma mediante llamada a una API proporcionada por API Gateway. Para obtener más información, consulte Creación de una clave de firma.