创建签名密钥
功能介绍
为了保护API的安全性,建议租户为API的访问提供一套保护机制,即租户开放的API,需要对请求来源进行认证,不符合认证的请求直接拒绝访问。
其中,签名密钥就是API安全保护机制的一种。
租户创建一个签名密钥,并将签名密钥与API进行绑定,则API网关在请求这个API时,就会使用绑定的签名密钥对请求参数进行数据加密,生成签名。当租户的后端服务收到请求时,可以校验这个签名,如果签名校验不通过,则该请求不是API网关发出的请求,租户可以拒绝这个请求,从而保证API的安全性,避免API被未知来源的请求攻击。
URI
HTTP/HTTPS请求方法以及URI如下表所示
请求方法 | URI |
|---|---|
POST | /v1.0/apigw/signs |
请求消息
参数 | 是否必选 | 类型 | 说明 |
|---|---|---|---|
name | 是 | String | 签名密钥的名称。 支持汉字,英文,数字,下划线,且只能以英文和汉字开头,3 ~ 64字符。 说明: 中文字符必须为UTF-8或者unicode编码。 |
sign_key | 否 | String | 签名密钥的key。 支持英文,数字,下划线,中划线,且只能以数字或英文字母开头,8 ~ 32字符。 未填写时后台自动生成。 |
sign_secret | 否 | String | 签名密钥的密钥。 支持英文,数字,下划线,中划线,!,@,#,$,%,且只能以数字或英文字母开头,16 ~ 64字符。 未填写时后台自动生成。 |
请求消息样例:
{
"name": "signature01",
"sign_key": "abcd_123",
"sign_secret": "******"
} 响应消息
参数 | 类型 | 说明 |
|---|---|---|
id | String | 签名密钥的编号 |
name | String | 签名密钥的名称 |
sign_key | String | 签名密钥的key |
sign_secret | String | 签名密钥的密钥 |
create_time | Timestamp | 创建时间 |
update_time | Timestamp | 更新时间 |
响应消息样例:
{
"name": "signature01",
"sign_key": "abcd_123",
"sign_secret": "******",
"id": "3a793b65a9034bdfae08924f149bfb4a",
"create_time": "2018-02-06T12:17:36.039953112Z",
"update_time": "2018-02-06T12:17:36.039954198Z"
} 状态码
状态码 | 说明 |
|---|---|
201 | Created |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
500 | Server Internal Error |

