云服务器内容精选

  • URI PUT /v2/{project_id}/apigw/instances/{instance_id}/signs/{sign_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID,在API网关控制台的“实例信息”中获取。 sign_id 是 String 签名密钥编号
  • 响应示例 状态码: 200 OK { "sign_secret" : "dc0************2b3", "update_time" : "2020-08-03T03:50:14.989785802Z", "create_time" : "2020-08-03T03:39:38Z", "name" : "signature_demo", "id" : "0b0e8f456b8742218af75f945307173c", "sign_key" : "a071a20d460a4f639a636c3d7e3d8163", "sign_type" : "hmac" } 状态码: 400 Bad Request { "error_code" : "APIG.2011", "error_msg" : "Invalid parameter value,parameterName:name. Please refer to the support documentation" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3017", "error_msg" : "Signature key 0b0e8f456b8742218af75f945307173c does not exist" } 状态码: 412 PreconditionFailed { "error_code" : "APIG.3548", "error_msg" : "sign_type=public_key not supported by instance 6a29d4e9-69a0-412a-aabe-9898ec0903b0" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应示例 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3017", "error_msg" : "Signature key 0b0e8f456b8742218af75f945307173c does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应参数 状态码: 401 表3 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • URI DELETE /v2/{project_id}/apigw/instances/{instance_id}/signs/{sign_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID,在API网关控制台的“实例信息”中获取。 sign_id 是 String 签名密钥编号
  • 响应示例 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3017", "error_msg" : "Signature key 0b0e8f456b8742218af75f945307173c does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应参数 状态码: 401 表3 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应消息 表4 参数说明 参数 类型 说明 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"}
  • 请求消息 表3 参数说明 参数 是否必选 类型 说明 name 是 String 签名密钥的名称。 支持汉字,英文,数字,下划线,且只能以英文和汉字开头,3 ~ 64字符。 说明: 中文字符必须为UTF-8或者unicode编码。 sign_key 否 String 签名密钥的key。 支持英文,数字,下划线,中划线,且只能以数字或英文字母开头,8 ~ 32字符。 未填写时后台自动生成。 sign_secret 否 String 签名密钥的密钥。 支持英文,数字,下划线,中划线,!,@,#,$,%,且只能以数字或英文字母开头,16 ~ 64字符。 未填写时后台自动生成。 请求消息样例: {"name": "signature01","sign_key": "abcd_1234","sign_secret": "******"}
  • 响应消息 表4 参数说明 参数 类型 说明 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"}
  • 请求消息 表3 参数说明 参数 是否必选 类型 说明 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": "******"}
  • 功能介绍 为了保护API的安全性,建议租户为API的访问提供一套保护机制,即租户开放的API,需要对请求来源进行认证,不符合认证的请求直接拒绝访问。 其中,签名密钥就是API安全保护机制的一种。 租户创建一个签名密钥,并将签名密钥与API进行绑定,则API网关在请求这个API时,就会使用绑定的签名密钥对请求参数进行 数据加密 ,生成签名。当租户的后端服务收到请求时,可以校验这个签名,如果签名校验不通过,则该请求不是API网关发出的请求,租户可以拒绝这个请求,从而保证API的安全性,避免API被未知来源的请求攻击。
  • URI HTTP/HTTPS请求方法以及URI如下表所示 表1 HTTP/HTTPS请求方法以及URI 请求方法 URI POST /v1/{project_id}/apigw/instances/{instance_id}/signs URI中的参数说明如下表所示。 表2 参数说明 名称 是否必选 类型 说明 project_id 是 String 项目ID。可从控制台“我的凭证”中获取region下项目ID,管理员权限可查询。 instance_id 是 String 实例ID,可从API网关控制台的专享版实例信息中获取。