更新时间:2026-01-16 GMT+08:00

创建自定义安全策略

功能介绍

创建自定义安全策略。用于在创建HTTPS/TLS监听器时,请求参数中指定security_policy_id来设置监听器的自定义安全策略。

调用方法

请参见如何调用API

URI

POST /v3/{project_id}/elb/security-policies

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:项目ID。获取方式请参见获取项目ID

约束限制:不涉及

取值范围:长度为32个字符,由小写字母和数字组成。

默认取值:不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:IAM鉴权Token。

约束限制:不涉及

取值范围:不涉及

默认取值:不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

security_policy

CreateSecurityPolicyOption object

参数解释:自定义安全策略创建参数。

约束限制:不涉及

表4 CreateSecurityPolicyOption

参数

是否必选

参数类型

描述

name

String

参数解释:自定义安全策略的名称。

约束限制:不涉及

取值范围:0到255个字符。

默认取值:不涉及

description

String

参数解释:自定义安全策略的描述信息。

约束限制:不涉及

取值范围:0到255个字符。

默认取值:不涉及

enterprise_project_id

String

参数解释:资源所属的企业项目ID。创建时不传则资源属于default企业项目,返回enterprise_project_id="0"。

约束限制:不能传入空字符串""、"0"或不存在的企业项目ID。

取值范围:不涉及

默认取值:"0"

protocols

Array of strings

参数解释:自定义安全策略选择的TLS协议列表。

约束限制:不涉及

取值范围:TLSv1, TLSv1.1, TLSv1.2, TLSv1.3

默认取值:不涉及

ciphers

Array of strings

参数解释:自定义安全策略的加密套件列表。

约束限制:协议和加密套件必须匹配,即ciphers中必须至少有一种与协议匹配的加密套件。

取值范围:ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-GCM-SHA256,

ECDHE-ECDSA-AES256-GCM-SHA384,ECDHE-ECDSA-AES128-GCM-SHA256,

AES128-GCM-SHA256,AES256-GCM-SHA384,ECDHE-ECDSA-AES128-SHA256,

ECDHE-RSA-AES128-SHA256,AES128-SHA256,AES256-SHA256,

ECDHE-ECDSA-AES256-SHA384,ECDHE-RSA-AES256-SHA384,

ECDHE-ECDSA-AES128-SHA,ECDHE-RSA-AES128-SHA,ECDHE-RSA-AES256-SHA,

ECDHE-ECDSA-AES256-SHA,AES128-SHA,AES256-SHA,CAMELLIA128-SHA,

DES-CBC3-SHA,CAMELLIA256-SHA,ECDHE-RSA-CHACHA20-POLY1305,

ECDHE-ECDSA-CHACHA20-POLY1305,TLS_AES_128_GCM_SHA256,

TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,

TLS_AES_128_CCM_SHA256,TLS_AES_128_CCM_8_SHA256

默认取值:不涉及

说明:
协议与加密套件的匹配关系可参考系统安全策略

响应参数

状态码:201

表5 响应Body参数

参数

参数类型

描述

security_policy

SecurityPolicy object

参数解释:自定义安全策略信息。

request_id

String

参数解释:请求ID。

取值范围:由数字、小写字母和中划线(-)组成的字符串,自动生成。

表6 SecurityPolicy

参数

参数类型

描述

id

String

参数解释:自定义安全策略的ID。

取值范围:不涉及

project_id

String

参数解释:自定义安全策略的项目ID。

取值范围:不涉及

name

String

参数解释:自定义安全策略的名称。

取值范围:不涉及

description

String

参数解释:自定义安全策略的描述。

取值范围:不涉及

listeners

Array of ListenerRef objects

参数解释:关联的监听器。

protocols

Array of strings

参数解释:自定义安全策略的TLS协议列表。

取值范围:不涉及

ciphers

Array of strings

参数解释:自定义安全策略的加密套件列表。

取值范围:不涉及

enterprise_project_id

String

参数解释:资源所属的企业项目ID。

取值范围

  • "0":表示资源属于default企业项目。

  • UUID格式的字符串,表示非默认企业项目。

created_at

String

参数解释:创建时间。

取值范围:格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。

updated_at

String

参数解释:更新时间。

取值范围:格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。

表7 ListenerRef

参数

参数类型

描述

id

String

参数解释:监听器ID。

取值范围:不涉及

请求示例

创建自定义安全策略,并指定策略使用的TLS协议和加密套件

POST https://{ELB_Endpoint}/v3/7a9941d34fc1497d8d0797429ecfd354/elb/security-policies

{
  "security_policy" : {
    "name" : "test_1",
    "description" : "test1",
    "protocols" : [ "TLSv1.2", "TLSv1", "TLSv1.3" ],
    "ciphers" : [ "ECDHE-ECDSA-AES128-SHA", "TLS_AES_128_GCM_SHA256", "TLS_AES_128_CCM_8_SHA256" ]
  }
}

响应示例

状态码:201

POST操作正常返回。

{
  "request_id" : "6b50d914-41f2-4e50-8929-e8a9837dbe75",
  "security_policy" : {
    "id" : "d74e27c9-4d60-427c-a11f-21142117c433",
    "name" : "test_1",
    "project_id" : "7a9941d34fc1497d8d0797429ecfd354",
    "description" : "test1",
    "protocols" : [ "TLSv1.2", "TLSv1", "TLSv1.3" ],
    "ciphers" : [ "ECDHE-ECDSA-AES128-SHA", "TLS_AES_128_GCM_SHA256", "TLS_AES_128_CCM_8_SHA256" ],
    "listeners" : [ ],
    "created_at" : "2021-03-26T01:33:12Z",
    "updated_at" : "2021-03-26T01:33:12Z",
    "enterprise_project_id" : "0"
  }
}

状态码

状态码

描述

201

POST操作正常返回。

错误码

请参见错误码