Vinculação de uma chave de assinatura
Função
Uma chave de assinatura entra em vigor somente depois de ser vinculada a uma API. Ao solicitar o serviço de back-end, o APIG usa a chave de assinatura para assinar criptograficamente as solicitações. O serviço de back-end verifica a assinatura para identificar fontes de solicitação.
Esta API é usada para vincular uma chave de assinatura a uma ou mais APIs publicadas.
Chaves de assinatura diferentes podem ser vinculadas a uma API em ambientes diferentes, mas apenas uma chave de assinatura pode ser vinculada à API no mesmo ambiente.
URI
A tabela a seguir lista o método de solicitação HTTP/HTTPS e o URI da API.
|
Método de solicitação |
URI |
|---|---|
|
POST |
/v1.0/apigw/sign-bindings |
Solicitação
|
Parâmetro |
Obrigatório |
Tipo |
Descrição |
|---|---|---|---|
|
sign_id |
Sim |
String |
ID da chave de assinatura |
|
publish_ids |
Sim |
Array of strings |
ID do registro de publicação da API |
Exemplo de solicitação:
{
"sign_id": "3a793b65a9034bdfae08924f149bfb4a",
"publish_ids": [
"374a6d5a-20c7-4ea1-82e1-19fce4556956",
"65e6fe53-1ac3-4481-ba36-9f0bc6f22057"
]
}
Resposta
|
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
- |
Dicionário |
Lista de APIs vinculadas à chave de assinatura |
|
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
id |
String |
ID de vinculação |
|
api_id |
String |
ID da API |
|
api_name |
String |
Nome da API |
|
api_remark |
String |
Descrição da API |
|
group_name |
String |
Nome do grupo de APIs ao qual a API pertence |
|
api_type |
Integer |
Tipo de API |
|
sign_id |
String |
ID da chave de assinatura |
|
sign_name |
String |
Nome da chave de assinatura |
|
sign_key |
String |
Chave de assinatura |
|
sign_secret |
String |
Segredo de assinatura |
|
env_id |
String |
ID do ambiente no qual a API foi publicada |
|
env_name |
String |
Nome do ambiente no qual a API foi publicada |
|
binding_time |
Timestamp |
Hora em que a chave de assinatura é vinculada à API |
|
publish_id |
String |
ID do registro de publicação |
Exemplo de resposta:
[
{
"id": "d8426fb090e442c4a56a35e451bea085",
"api_id": "3c6769c6-ec61-4b45-b478-c60310dbaa1b",
"api_name": "bbb",
"api_remark": "",
"group_name": "asd",
"api_type": 1,
"sign_id": "3a793b65a9034bdfae08924f149bfb4a",
"sign_name": "signature01",
"sign_key": "abcd_1234",
"sign_secret": "******",
"env_id": "DEFAULT_ENVIRONMENT_RELEASE_ID",
"env_name": "RELEASE",
"binding_time": "2018-02-07T03:17:26.396039456Z",
"publish_id": "23234202f5834ab69113fc1b790b6bed"
},
{
"id": "97952732e6d7452d99de02db99acce27",
"api_id": "d85c502a-f916-47e8-bba0-50537a2d1af2",
"api_name": "aaa",
"api_remark": "",
"group_name": "asd",
"api_type": 1,
"sign_id": "3a793b65a9034bdfae08924f149bfb4a",
"sign_name": "signature01",
"sign_key": "abcd_1234",
"sign_secret": "******",
"env_id": "DEFAULT_ENVIRONMENT_RELEASE_ID",
"env_name": "RELEASE",
"binding_time": "2018-02-07T03:17:26.39803282Z",
"publish_id": "6581f68efddc4ff0815e156ec6ecfb52"
}
]
Códigos de status
|
Código de status |
Descrição |
|---|---|
|
201 |
Criado |
|
400 |
Solicitação inválida |
|
401 |
Não autorizado |
|
403 |
Proibido |
|
404 |
Não encontrado |
|
500 |
Erro do servidor interno |