Creates an access control policy in a specified policy group for a virtual private cloud (VPC) firewall.
Operation description
You can call the CreateVpcFirewallControlPolicy operation to create an access control policy in a specified policy group for a VPC firewall. Different access control policies are used when a VPC firewall is used to protect traffic between two VPCs that are connected by using a Cloud Enterprise Network (CEN) instance or an Express Connect circuit.
Limits
You can call this operation up to 10 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
yundun-cloudfirewall:CreateVpcFirewallControlPolicy | create |
|
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
Lang | string | No | The language of the content within the request and response. Valid values:
| zh |
AclAction | string | Yes | The action that Cloud Firewall performs on the traffic. Valid values:
| accept |
ApplicationName | string | No | The type of the applications that the access control policy supports. Valid values:
| HTTP |
Description | string | Yes | The description of the access control policy. | test |
DestPort | string | No | The destination port in the access control policy. Note
If DestPortType is set to port , you must specify this parameter.
| 80 |
Destination | string | Yes | The destination address in the access control policy. Valid values:
| 10.2.XX.XX/24 |
DestinationType | string | Yes | The type of the destination address in the access control policy. Valid values:
| net |
VpcFirewallId | string | Yes | The ID of the policy group in which you want to create the access control policy.
Note
You can call the DescribeVpcFirewallAclGroupList operation to query the IDs.
| vfw-a42bbb7b887148c9**** |
Proto | string | Yes | The type of the protocol in the access control policy. Valid values:
| TCP |
Source | string | Yes | The source address in the access control policy.
| 10.2.XX.XX/24 |
SourceType | string | Yes | The type of the source address in the access control policy. Valid values:
| net |
NewOrder | string | Yes | The priority of the access control policy. The priority value starts from 1. A smaller priority value indicates a higher priority. | 1 |
DestPortType | string | No | The type of the destination port in the access control policy. Valid values:
| port |
DestPortGroup | string | No | The name of the destination port address book in the access control policy. Note
If DestPortType is set to group , you must specify this parameter.
| my_port_group |
MemberUid | string | No | The UID of the member that is managed by your Alibaba Cloud account. | 258039427902**** |
Release | string | No | Specifies whether to enable the access control policy. By default, an access control policy is enabled after the policy is created. Valid values:
| true |
ApplicationNameList | array | No | The application types supported by the access control policy. | |
string | No | The application type supported by the access control policy. Valid values:
Note
The value of this parameter depends on the value of the Proto parameter. If Proto is set to TCP, you can set ApplicationNameList to any valid value in the ["HTTP","HTTPS",……] format. If Proto is set to UDP, ICMP, or ANY, you can set ApplicationNameList only to ANY. You must specify at least one of ApplicationNameList and ApplicationName. If you specify both ApplicationNameList and ApplicationName, only the value of ApplicationNameList takes effect.
| [ "ANY" ] | |
RepeatType | string | No | The recurrence type for the access control policy to take effect. Valid values:
| Permanent |
RepeatDays | array | No | The days of a week or of a month on which the access control policy takes effect.
Note
If you set RepeatType to Weekly, the fields in the value of this parameter cannot be repeated.
Note
If you set RepeatType to Monthly, the fields in the value of this parameter cannot be repeated.
| |
long | No | The day of a week or of a month on which the access control policy takes effect. Note
If you set RepeatType to Weekly, valid values of this parameter are 0 to 6. Each week starts from Sunday. If you set RepeatType to Monthly, valid values of this parameter are 1 to 31.
| 1 | |
RepeatStartTime | string | No | The point in time when the recurrence starts. Example: 08:00. The value must be on the hour or on the half hour, and at least 30 minutes earlier than the end time. Note
If you set RepeatType to Permanent or None, leave this parameter empty. If you set RepeatType to Daily, Weekly, or Monthly, you must specify this parameter.
| 08:00 |
RepeatEndTime | string | No | The point in time when the recurrence ends. Example: 23:30. The value must be on the hour or on the half hour, and at least 30 minutes later than the start time. Note
If you set RepeatType to Permanent or None, leave this parameter empty. If you set RepeatType to Daily, Weekly, or Monthly, you must specify this parameter.
| 23:30 |
StartTime | long | No | The time when the access control policy starts to take effect. The value is a UNIX timestamp. Unit: seconds. The value must be on the hour or on the half hour, and at least 30 minutes earlier than the end time. Note
If you set RepeatType to Permanent, leave this parameter empty. If you set RepeatType to None, Daily, Weekly, or Monthly, you must specify this parameter.
| 1694761200 |
EndTime | long | No | The time when the access control policy stops taking effect. The value is a UNIX timestamp. Unit: seconds. The value must be on the hour or on the half hour, and at least 30 minutes later than the start time. Note
If you set RepeatType to Permanent, leave this parameter empty. If you set RepeatType to None, Daily, Weekly, or Monthly, you must specify this parameter.
| 1694764800 |
DomainResolveType | string | No | The domain name resolution method of the access control policy. Valid values:
| DNS |
Response parameters
Examples
Sample success responses
JSON
format
{
"AclUuid": "00281255-d220-4db1-8f4f-c4df221ad84c",
"RequestId": "CBF1E9B7-D6A0-4E9E-AD3E-2B47E6C2837D"
}
Error codes
HTTP status code | Error code | Error message | Description |
---|---|---|---|
400 | ErrorParametersUid | The aliUid parameter is invalid. | The aliUid parameter is invalid. |
400 | ErrorUUIDNew | The UUID is invalid. | The UUID is invalid. |
400 | ErrorParametersSource | The source is invalid. | The source is invalid. |
400 | ErrorParametersDestination | The Destination parameter is invalid. | The Destination parameter is invalid. |
400 | ErrorParametersProto | The protocol is invalid. | The protocol is invalid. |
400 | ErrorParametersDestPort | The dst_port is invalid. | The dst_port is invalid. |
400 | ErrorParametersAction | The action is invalid. | The action is invalid. |
400 | ErrorParametersAppId | The AppId parameter is incorrect. | The AppId parameter is invalid. |
400 | ErrorDBSelect | An error occurred while querying database. | An error occurred while querying database. |
400 | ErrorParameters | A parameter error occurred. | A parameter error occurred. |
400 | ErrorAddressCountExceed | The maximum number of addresses is exceeded. | The maximum number of address is exceeded. |
400 | ErrorParametersNewOrder | The newOrder is invalid. | The newOrder is invalid. |
400 | ErrorDBInsert | An error occurred while performing an insert operation in the database. | An error occurred while performing an insert operation in the database. |
400 | ErrorDBDelete | An error occurred while deleting the database. | An error occurred while deleting the database. |
400 | ErrorRecordLog | An error occurred while updating the operation log. | An error occurred while updating the operation log. |
400 | ErrorParameterIpVersion | The IP version is invalid. | The IP version is invalid. |
400 | ErrorParametersDirection | The direction is invalid. | The direction is invalid. |
400 | ErrorDomainResolve | An error occurred while resolving the domain. | An error occurred while resolving the domain. |
400 | ErrorAclExtendedCountExceed | ACL or extended ACL rules are not matched. | The quota for access control policies or extra access control policies is exhausted. |
400 | ErrorAclDomainAnyCountExceed | The number of resolved domain names cannot exceed 200. ACL configuration can be continued for HTTP, HTTPS, SMTP, SMTPS, and SSL applications. | The domain name is resolved to more than 200 IP addresses. We recommend that you set Application in your access control policy to HTTPS, HTTPS, SMTP, SMTPS, or SSL. |
400 | ErrorMarshalJSON | An error occurred. Try again later. | An error occurred. Try again later. |
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|---|---|
2024-08-13 | The Error code has changed. The request parameters of the API has changed | View Change Details |
2023-10-12 | The Error code has changed. The request parameters of the API has changed | View Change Details |
2023-09-11 | The Error code has changed. The request parameters of the API has changed | View Change Details |