更新时间:2022-09-14 GMT+08:00
分享

实例配置特性

功能介绍

为实例配置需要的特性。

支持配置的特性列表及特性配置示例如下:

特性名称 特性描述 特性配置示例 特性参数名称 参数描述 参数默认值 参数范围
lts 是否支持shubao访问日志上报功能。 {"name":"lts","enable":true,"config": "{\"group_id\": ",\"topic_id\":\"\",\"log_group\":\"\",\"log_stream\":\"\"}"} (1) group_id (2) topic_id (3) log_group (4) log_stream (1) 日志组ID (2) 日志流ID (3) 日志组名称 (4) 日志流名称 - -
ratelimit 是否支持自定义流控值。 {"name":"ratelimit","enable":true,"config": "{\"api_limits\": 500}"} api_limits API全局默认流控值。注意:如果配置过小会导致业务持续被流控,请根据业务谨慎修改。 200 次/秒 1-1000000 次/秒
request_body_size 是否支持设置请求体大小上限。 {"name":"request_body_size","enable":true,"config": "104857600"} request_body_size 请求中允许携带的Body大小上限。 12 M 1-9536 M
backend_timeout 是否支持配置后端API最大超时时间。 {"name":"backend_timeout","enable":true,"config": "{"max_timeout": 500}"} max_timeout API网关到后端服务的超时时间上限。 60000 ms 1-600000 ms
app_token 是否开启app_token认证方式。 {"name":"app_token","enable":true,"config": "{\"enable\": \"on\", \"app_token_expire_time\": 3600, \"app_token_uri\": \"/v1/apigw/oauth2/token\", \"refresh_token_expire_time\": 7200}"} (1) enable (2) app_token_expire_time (3) refresh_token_expire_time (4) app_token_uri (5) app_token_key (1) 是否开启 (2) access token的有效时间 (3) refresh token的有效时间 (4) 获取token的uri (5) token的加密key (1) off (2) 3600 s (3) 7200 s (4) /v1/apigw/oauth2/token (1) on/off (2) 1-72000 s (3) 1-72000 s
app_api_key 是否开启app_api_key认证方式。 {"name":"app_api_key","enable":true,"config": "on"} - - off on/off
app_basic 是否开启app_basic认证方式。 {"name":"app_basic","enable":true,"config": "on"} - - off on/off
app_secret 是否支持app_secret认证方式。 {"name":"app_secret","enable":true,"config": "on"} - - off on/off
app_jwt 是否支持app_jwt认证方式。 {"name":"app_jwt","enable":true,"config": "{\"enable\": \"on\", \"auth_header\": \"Authorization\"}"} (1) enable (2) auth_header (1) 是否开启app_jwt认证方式。 (2) app_jwt认证头 (1) off (2) Authorization (1) on/off
public_key 是否支持public_key类型的后端签名。 {"name":"public_key","enable":true,"config": "{\"enable\": \"on\", \"public_key_uri_prefix\": \"/apigw/authadv/v2/public-key/\"}"} (1) enable (2) public_key_uri_prefix (1) 是否开启app_jwt认证方式。 (2) 获取public key的uri前缀 (1) off(2) /apigw/authadv/v2/public-key/ (1) on/off
backend_token_allow 是否支持普通租户透传token到后端。 {"name":"backend_token_allow","enable":true,"config": "{\"backend_token_allow_users\": [\"user_name\"]}"} backend_token_allow_users 透传token到后端普通租户白名单,匹配普通租户domain name正则表达式 - -
backend_client_certificate 是否开启后端双向认证。 {"name":"backend_client_certificate","enable":true,"config": "{\"enable\": \"on\",\"ca\": \"\",\"content\": \"\",\"key\": \"\"}"} (1) enable (2) ca (3) content (4) key (1) 是否开启 (2) 双向认证信任证书 (3) 双向认证证书 (4) 双向认证信任私钥 (1) off (1) on/off
ssl_ciphers 是否支持https加密套件。 {"name":"ssl_ciphers","enable":true,"config": "config": "{\"ssl_ciphers\": [\"ECDHE-ECDSA-AES256-GCM-SHA384\"]}"} ssl_ciphers 支持的加解密套件。ssl_ciphers数组中只允许出现默认值中的字符串,且数组不能为空。 - ECDHE-ECDSA-AES256-GCM-SHA384,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-RSA-AES128-GCM-SHA256,ECDHE-ECDSA-AES256-SHA384,ECDHE-RSA-AES256-SHA384,ECDHE-ECDSA-AES128-SHA256,ECDHE-RSA-AES128-SHA256
real_ip_from_xff 是否开启使用xff头作为访问控制、流控策略的源ip生效依据。 {"name":"real_ip_from_xff","enable": true,"config": "{\"enable\": \"on\",\"xff_index\": 1}"} (1) enable (2) xff_index (1) 是否开启 (2) 源ip所在xff头的索引位置(支持负数,-1为最后一位,以此类推) (1) off (2) -1 (1) on/off (2) int32有效值
app_route 是否支持ip访问。 {"name":"app_route","enable":true,"config": "on"} - - off on/off
vpc_name_modifiable 是否支持修改负载通道名称。 {"name":"vpc_name_modifiable","enable":true,"config": "on"} - - on on/off
default_group_host_trustlist DEFAULT分组是否支持配置非本实例IP访问。 {"name":"default_group_host_trustlist","enable": true,"config": "{\"enable\":\"on\",\"hosts\":[\"123.2.2.2\",\"202.2.2.2\"]}"} (1) enable (2) hosts (1) 是否开启 (2) 非本实例IP列表 - (1) on/off
throttle_strategy 是否启用流控模式。 {"name":"throttle_strategy","enable":true,"config": "{\"enable\": \"on\",\"strategy\": \"local\"}"} (1) enable (2) strategy (1) 是否开启(2) 流控模式 (1) off (1) on/off (2) cluster/local
custom_log 是否支持用户自定义API请求中的HEADER、QUERY、COOKIE参数值打印到日志。 {"name":"custom_log","enable":true,"config": "{\"custom_logs\":[{\"location\":\"header\",\"name\":\"a1234\"}]}"} (1) custom_logs (2) location (3) name (1) 自定义日志 (2) 位置(3) 名称 - (1) 数量不超过10个 (2) header/query/cookie
real_ip_header_getter 是否开启通过用户自定义的Header获取用户源IP地址。 {"name":"real_ip_header_getter","enable":true,"config": "{\"enable\": \"on\",\"header_getter\": \"header:testIP\"}"} (1) enable (2) header_getter (1) 是否开启 (2) 获取用户源IP地址的自定义Header (1) off (1) on/off
policy_cookie_param 是否开启策略后端条件支持cookie类型。 {"name":"policy_cookie_param","enable":true,"config": "on"} - - off on/off

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v2/{project_id}/apigw/instances/{instance_id}/features

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方式请参见API参考的“附录 > 获取项目ID”章节。

instance_id

String

实例ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

特性名称

最小长度:1

最大长度:64

enable

Boolean

是否开启特性

config

String

特性参数配置

响应参数

状态码: 201

表4 响应Body参数

参数

参数类型

描述

id

String

特性编号

name

String

特性名称

最小长度:1

最大长度:64

enable

Boolean

是否开启特性

config

String

特性参数配置

instance_id

String

实例编号

update_time

String

实例特性更新时间

状态码: 400

表5 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 401

表6 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 403

表7 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 404

表8 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 500

表9 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

请求示例

{
  "name" : "app_api_key",
  "config" : "on",
  "enable" : true
}

响应示例

状态码: 201

Created

{
  "config" : "on",
  "enable" : true,
  "id" : "db9a9260cd3e4a16a9b5747a65d3ffaa",
  "instance_id" : "eddc4d25480b4cd6b512f270a1b8b341",
  "name" : "app_api_key",
  "update_time" : "2020-08-24T01:17:31.041984021Z"
}

状态码: 400

Bad Request

{
  "error_code" : "APIG.2000",
  "error_msg" : "unrecognized feature app-api-key"
}

状态码: 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.3030",
  "error_msg" : "The instance does not exist;id:eddc4d25480b4cd6b512f270a1b8b341"
}

状态码: 500

Internal Server Error

{
  "error_code" : "APIG.9999",
  "error_msg" : "System error"
}

状态码

状态码

描述

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Internal Server Error

错误码

请参见错误码

分享:

    相关文档

    相关产品

close