The ALIYUN::ROCKETMQ5::Acl resource creates an access control rule.
Syntax
{
"Type": "ALIYUN::ROCKETMQ5::Acl",
"Properties": {
"Actions": List,
"Decision": String,
"InstanceId": String,
"ResourceName": String,
"ResourceType": String,
"Username": String,
"IpWhitelists": List
}
}
Properties
|
Parameter |
Type |
Required |
Update allowed |
Description |
Constraints |
|
Actions |
List |
Yes |
Yes |
The authorized operation types. |
None |
|
Decision |
String |
Yes |
Yes |
The authorization decision. |
Valid values:
|
|
InstanceId |
String |
Yes |
No |
The ID of the ApsaraMQ for RocketMQ instance. |
None |
|
ResourceName |
String |
Yes |
No |
The name of the resource to which permissions apply. |
None |
|
ResourceType |
String |
Yes |
No |
The type of resource to which permissions apply. |
Valid values:
|
|
Username |
String |
Yes |
No |
The username of the account. |
None |
|
IpWhitelists |
List |
No |
Yes |
The whitelisted IP addresses. |
None |
Return values
Use the Fn::GetAtt intrinsic function to retrieve the value of an attribute for this resource. The following attributes are available:
-
Username: The username of the account.
-
InstanceId: The ID of the ApsaraMQ for RocketMQ instance.
-
Actions: The authorized operation types.
-
ResourceName: The name of the resource to which permissions apply.
-
IpWhitelists: The whitelisted IP addresses.
-
ResourceType: The type of resource to which permissions apply.
-
Decision: The authorization decision.
Examples
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
Username:
Type: String
Description:
en: The username of the account.
Required: true
InstanceId:
Type: String
Description:
en: The ID of the ApsaraMQ for RocketMQ instance.
Required: true
Decision:
Type: String
Description:
en: |-
The authorization decision. Valid values:
* Deny: Denies access.
* Allow: Allows access.
AllowedValues:
- Deny
- Allow
Required: true
Actions:
Description:
en: The authorized operation types.
Required: true
Type: Json
AssociationProperty: List[Parameter]
AssociationPropertyMetadata:
Parameter:
Type: String
Description:
en: |-
The operations to authorize on the resource.
The following operations are supported for different resource types:
* topics: Pub, Sub
* consumer groups: Sub
* Sub: Subscribe
* Pub: Send
Required: true
IpWhitelists:
Description:
en: The whitelisted IP addresses.
Required: false
Default: Null
Type: Json
AssociationProperty: List[Parameter]
AssociationPropertyMetadata:
Parameter:
Type: String
Description:
en: An IP address or CIDR block for the whitelist.
Default: Null
Required: false
ResourceType:
Type: String
Description:
en: |-
The type of resource to which permissions apply. Valid values:
* Group: consumer group.
* Topic: topic.
AllowedValues:
- Group
- Topic
Required: true
ResourceName:
Type: String
Description:
en: The name of the resource to which permissions apply.
Required: true
Resources:
ExtensionResource:
Type: ALIYUN::ROCKETMQ5::Acl
Properties:
Username:
Ref: Username
InstanceId:
Ref: InstanceId
Decision:
Ref: Decision
Actions:
Ref: Actions
IpWhitelists:
Ref: IpWhitelists
ResourceType:
Ref: ResourceType
ResourceName:
Ref: ResourceName
Outputs:
Username:
Value:
Fn::GetAtt:
- ExtensionResource
- Username
Description: The username of the account.
InstanceId:
Value:
Fn::GetAtt:
- ExtensionResource
- InstanceId
Description: The ID of the ApsaraMQ for RocketMQ instance.
Decision:
Value:
Fn::GetAtt:
- ExtensionResource
- Decision
Description: The authorization decision.
Actions:
Value:
Fn::GetAtt:
- ExtensionResource
- Actions
Description: The authorized operation types.
IpWhitelists:
Value:
Fn::GetAtt:
- ExtensionResource
- IpWhitelists
Description: The whitelisted IP addresses.
ResourceType:
Value:
Fn::GetAtt:
- ExtensionResource
- ResourceType
Description: The type of resource to which permissions apply.
ResourceName:
Value:
Fn::GetAtt:
- ExtensionResource
- ResourceName
Description: The name of the resource to which permissions apply.
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"Username": {
"Type": "String",
"Description": {
"en": "The username of the account."
},
"Required": true
},
"InstanceId": {
"Type": "String",
"Description": {
"en": "The ID of the ApsaraMQ for RocketMQ instance."
},
"Required": true
},
"Decision": {
"Type": "String",
"Description": {
"en": "The authorization decision. Valid values:\n* Deny: Denies access.\n* Allow: Allows access."
},
"AllowedValues": [
"Deny",
"Allow"
],
"Required": true
},
"Actions": {
"Description": {
"en": "The authorized operation types."
},
"Required": true,
"Type": "Json",
"AssociationProperty": "List[Parameter]",
"AssociationPropertyMetadata": {
"Parameter": {
"Type": "String",
"Description": {
"en": "The operations to authorize on the resource.\nThe following operations are supported for different resource types:\n* topics: Pub, Sub\n* consumer groups: Sub\n* Sub: Subscribe\n* Pub: Send"
},
"Required": true
}
}
},
"IpWhitelists": {
"Description": {
"en": "The whitelisted IP addresses."
},
"Required": false,
"Default": null,
"Type": "Json",
"AssociationProperty": "List[Parameter]",
"AssociationPropertyMetadata": {
"Parameter": {
"Type": "String",
"Description": {
"en": "An IP address or CIDR block for the whitelist."
},
"Default": null,
"Required": false
}
}
},
"ResourceType": {
"Type": "String",
"Description": {
"en": "The type of resource to which permissions apply. Valid values:\n* Group: consumer group.\n* Topic: topic."
},
"AllowedValues": [
"Group",
"Topic"
],
"Required": true
},
"ResourceName": {
"Type": "String",
"Description": {
"en": "The name of the resource to which permissions apply."
},
"Required": true
}
},
"Resources": {
"ExtensionResource": {
"Type": "ALIYUN::ROCKETMQ5::Acl",
"Properties": {
"Username": {
"Ref": "Username"
},
"InstanceId": {
"Ref": "InstanceId"
},
"Decision": {
"Ref": "Decision"
},
"Actions": {
"Ref": "Actions"
},
"IpWhitelists": {
"Ref": "IpWhitelists"
},
"ResourceType": {
"Ref": "ResourceType"
},
"ResourceName": {
"Ref": "ResourceName"
}
}
}
},
"Outputs": {
"Username": {
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Username"
]
},
"Description": "The username of the account."
},
"InstanceId": {
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"InstanceId"
]
},
"Description": "The ID of the ApsaraMQ for RocketMQ instance."
},
"Decision": {
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Decision"
]
},
"Description": "The authorization decision."
},
"Actions": {
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Actions"
]
},
"Description": "The authorized operation types."
},
"IpWhitelists": {
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"IpWhitelists"
]
},
"Description": "The whitelisted IP addresses."
},
"ResourceType": {
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ResourceType"
]
},
"Description": "The type of resource to which permissions apply."
},
"ResourceName": {
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ResourceName"
]
},
"Description": "The name of the resource to which permissions apply."
}
}
}