Template name
ACS-RDS-ReleaseInstancePublicConnection
Template description
Releases the public IP address of an ApsaraDB RDS instance.
Template type
Automated
Owner
Alibaba Cloud
Input parameters
Parameter | Description | Data type | Required | Default value | Limit |
instanceId | The ID of the ApsaraDB RDS instance. | String | Yes | ||
regionId | The region ID. | String | No | {{ ACS::RegionId }} | |
OOSAssumeRole | The RAM role that is assumed by CloudOps Orchestration Service (OOS). | String | No | "" |
Output parameters
N/A.
Permission policy that is required to execute the template
{
"Version": "1",
"Statement": [
{
"Action": [
"rds:DescribeDBInstanceNetInfo",
"rds:ReleaseInstancePublicConnection"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
References
ACS-RDS-ReleaseInstancePublicConnection
Template content
FormatVersion: OOS-2019-06-01
Description:
en: Release the public address of RDS instance
name-en: ACS-RDS-ReleaseInstancePublicConnection
categories:
- security
Parameters:
regionId:
Label:
en: RegionId
Type: String
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
instanceId:
Label:
en: InstanceId
AssociationProperty: ALIYUN::RDS::Instance::InstanceId
AssociationPropertyMetadata:
RegionId: regionId
Type: String
OOSAssumeRole:
Label:
en: OOSAssumeRole
Type: String
Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: describeDBInstanceNetInfo
Action: 'ACS::ExecuteAPI'
Description:
en: Query the ip type and address of a RDS instance
Properties:
Service: RDS
API: DescribeDBInstanceNetInfo
Parameters:
RegionId: '{{ regionId }}'
DBInstanceId: '{{ instanceId }}'
Outputs:
connectionString:
Type: String
ValueSelector: '.DBInstanceNetInfos.DBInstanceNetInfo[] | select(.IPType=="Public") | .ConnectionString'
- Name: checkPublicAddress
Action: 'ACS::Choice'
Description:
En: Whether to release instance public connection
Properties:
DefaultTask: releaseInstancePublicConnection
Choices:
- When:
'Fn::Equals':
- Null
- '{{ describeDBInstanceNetInfo.connectionString }}'
NextTask: 'ACS::END'
- Name: releaseInstancePublicConnection
Action: 'ACS::ExecuteAPI'
Description:
En: Release the public address of RDS instances
Properties:
Service: RDS
API: ReleaseInstancePublicConnection
Parameters:
RegionId: '{{ regionId }}'
DBInstanceId: '{{ instanceId }}'
CurrentConnectionString: '{{ describeDBInstanceNetInfo.connectionString }}'
Metadata:
ALIYUN::OOS::Interface:
ParameterGroups:
- Parameters:
- regionId
- instanceId
Label:
default:
en: Select Instances
- Parameters:
- OOSAssumeRole
Label:
default:
en: Control Options