ALIYUN::ESA::HttpRequestHeaderModificationRule类型用于创建修改HTTP请求头配置。
语法
{
"Type": "ALIYUN::ESA::HttpRequestHeaderModificationRule",
"Properties": {
"RequestHeaderModification": List,
"SiteId": Integer,
"RuleEnable": String,
"Rule": String,
"RuleName": String,
"Sequence": Integer,
"SiteVersion": Integer
}
}
属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
RequestHeaderModification | List | 是 | 是 | 修改请求头。 | 支持添加、删除、修改三种操作方式。更多信息,请参考RequestHeaderModification属性。 |
SiteId | Integer | 是 | 否 | 站点 ID。 | 无 |
RuleEnable | String | 否 | 是 | 规则开关。 | 添加全局配置的时候不需要设置该参数。取值范围:
|
Rule | String | 否 | 是 | 规则内容。 | 使用条件表达式来匹配用户请求。添加全局配置的时候不需要设置该参数。存在两种使用场景:
|
RuleName | String | 否 | 是 | 规则名称。 | 添加全局配置的时候不需要设置该参数。 |
Sequence | Integer | 否 | 否 | 规则执行顺序。 | 数值越小越优先执行。 |
SiteVersion | Integer | 否 | 否 | 站点配置的版本号。 | 开启了配置版本管理的站点,可以通过该参数指定配置生效的站点版本,默认为版本 0。 |
RequestHeaderModification语法
"RequestHeaderModification": [
{
"Type": String,
"Value": String,
"Operation": String,
"Name": String
}
]
RequestHeaderModification属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Name | String | 是 | 是 | 请求头名称。 | 无 |
Operation | String | 是 | 是 | 操作方式。 | 取值范围:
|
Type | String | 否 | 是 | 值类型。 | 取值范围:
|
Value | String | 否 | 是 | 请求头值。 | 无 |
返回值
Fn::GetAtt
RuleEnable:规则开关。
Sequence:规则执行顺序。
Rule:规则内容。
ConfigId:配置 ID。
SiteVersion:站点配置的版本号。
ConfigType:配置类型。
RequestHeaderModification:修改请求头。
RuleName:规则名称。
示例
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
SiteId:
Type: Number
Description:
en: The site ID.
Required: true
RequestHeaderModification:
AssociationPropertyMetadata:
Parameters:
Type:
Type: String
Description:
en: |-
Value type. Value range:
- `static`:static mode.
- `dynamic`:dynamic mode.
AllowedValues:
- static
- dynamic
Required: false
Value:
Type: String
Description:
en: Request header value.
Required: false
Operation:
Type: String
Description:
en: |-
Mode of operation. Value range:
- `add`: add.
- `del`: delete
- `modify`: change.
AllowedValues:
- add
- del
- modify
Required: true
Name:
Type: String
Description:
en: Request Header Name.
Required: true
AssociationProperty: List[Parameters]
Type: Json
Description:
en: The configurations of modifying request headers. You can add, delete, or modify a request header.
Required: true
Resources:
ExtensionResource:
Type: ALIYUN::ESA::HttpRequestHeaderModificationRule
Properties:
SiteId:
Ref: SiteId
RequestHeaderModification:
Ref: RequestHeaderModification
Outputs:
RuleEnable:
Description: Rule switch. When adding global configuration, this parameter does not need to be set.
Value:
Fn::GetAtt:
- ExtensionResource
- RuleEnable
Sequence:
Description: Order of rule execution. The smaller the value, the higher the priority for execution.
Value:
Fn::GetAtt:
- ExtensionResource
- Sequence
Rule:
Description: Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set.
Value:
Fn::GetAtt:
- ExtensionResource
- Rule
ConfigId:
Description: Config Id.
Value:
Fn::GetAtt:
- ExtensionResource
- ConfigId
SiteVersion:
Description: The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.
Value:
Fn::GetAtt:
- ExtensionResource
- SiteVersion
ConfigType:
Description: The configuration type. You can use this parameter to check the global configuration or rule configuration.
Value:
Fn::GetAtt:
- ExtensionResource
- ConfigType
RequestHeaderModification:
Description: The configurations of modifying request headers. You can add, delete, or modify a request header.
Value:
Fn::GetAtt:
- ExtensionResource
- RequestHeaderModification
RuleName:
Description: Rule name. When adding global configuration, this parameter does not need to be set.
Value:
Fn::GetAtt:
- ExtensionResource
- RuleName
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"SiteId": {
"Type": "Number",
"Description": {
"en": "The site ID."
},
"Required": true
},
"RequestHeaderModification": {
"AssociationPropertyMetadata": {
"Parameters": {
"Type": {
"Type": "String",
"Description": {
"en": "Value type. Value range:\n- `static`:static mode.\n- `dynamic`:dynamic mode."
},
"AllowedValues": [
"static",
"dynamic"
],
"Required": false
},
"Value": {
"Type": "String",
"Description": {
"en": "Request header value."
},
"Required": false
},
"Operation": {
"Type": "String",
"Description": {
"en": "Mode of operation. Value range:\n- `add`: add.\n- `del`: delete\n- `modify`: change."
},
"AllowedValues": [
"add",
"del",
"modify"
],
"Required": true
},
"Name": {
"Type": "String",
"Description": {
"en": "Request Header Name."
},
"Required": true
}
}
},
"AssociationProperty": "List[Parameters]",
"Type": "Json",
"Description": {
"en": "The configurations of modifying request headers. You can add, delete, or modify a request header."
},
"Required": true
}
},
"Resources": {
"ExtensionResource": {
"Type": "ALIYUN::ESA::HttpRequestHeaderModificationRule",
"Properties": {
"SiteId": {
"Ref": "SiteId"
},
"RequestHeaderModification": {
"Ref": "RequestHeaderModification"
}
}
}
},
"Outputs": {
"RuleEnable": {
"Description": "Rule switch. When adding global configuration, this parameter does not need to be set.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"RuleEnable"
]
}
},
"Sequence": {
"Description": "Order of rule execution. The smaller the value, the higher the priority for execution.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Sequence"
]
}
},
"Rule": {
"Description": "Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Rule"
]
}
},
"ConfigId": {
"Description": "Config Id.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ConfigId"
]
}
},
"SiteVersion": {
"Description": "The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"SiteVersion"
]
}
},
"ConfigType": {
"Description": "The configuration type. You can use this parameter to check the global configuration or rule configuration.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ConfigType"
]
}
},
"RequestHeaderModification": {
"Description": "The configurations of modifying request headers. You can add, delete, or modify a request header.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"RequestHeaderModification"
]
}
},
"RuleName": {
"Description": "Rule name. When adding global configuration, this parameter does not need to be set.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"RuleName"
]
}
}
}
}