Policy types for @turbot/aws-rds

AWS > RDS > API Enabled

Configure whether the AWS RDS API is enabled.

Note: Disabling the service disables the API for ALL users
and roles, and Guardrails will have no access to the API.

URI
tmod:@turbot/aws-rds#/policy/types/rdsApiEnabled
Parent
Valid Value
[
"Enabled",
"Disabled",
"Enabled if AWS > RDS > Enabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled",
"Disabled",
"Enabled if AWS > RDS > Enabled"
],
"default": "Enabled"
}

AWS > RDS > Approved Regions [Default]

A list of AWS regions in which AWS RDS resources are approved for use.

The expected format is an array of regions names. You may use the '*' and
'?' wildcard characters.

This policy is the default value for all AWS RDS resources' Approved > Regions policies.

URI
tmod:@turbot/aws-rds#/policy/types/rdsApprovedRegionsDefault
Parent
Default Template Input
"{\n regions: policyValue(uri:\"tmod:@turbot/aws#/policy/types/approvedRegionsDefault\") {\n value\n }\n}\n"
Default Template
"{% if $.regions.value | length == 0 %} [] {% endif %}{% for item in $.regions.value %}- '{{ item }}'\n{% endfor %}"

AWS > RDS > DB Cluster > Active

Determine the action to take when an AWS RDS db cluster, based on the AWS > RDS > DB Cluster > Active > * policies.

The control determines whether the resource is in active use, and if not,
has the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster > Active > *), raises an alarm, and takes the defined enforcement
action. Each Active sub-policy can calculate a status of active, inactive
or skipped. Generally, if the resource appears to be Active for any reason
it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved for any reason it will be considered
Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterActive
Valid Value
[
"Skip",
"Check: Active",
"Enforce: Snapshot and delete inactive with 1 day warning",
"Enforce: Snapshot and delete inactive with 3 days warning",
"Enforce: Snapshot and delete inactive with 7 days warning",
"Enforce: Snapshot and delete inactive with 14 days warning",
"Enforce: Snapshot and delete inactive with 30 days warning",
"Enforce: Snapshot and delete inactive with 60 days warning",
"Enforce: Snapshot and delete inactive with 90 days warning",
"Enforce: Snapshot and delete inactive with 180 days warning",
"Enforce: Snapshot and delete inactive with 365 days warning"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Active",
"Enforce: Snapshot and delete inactive with 1 day warning",
"Enforce: Snapshot and delete inactive with 3 days warning",
"Enforce: Snapshot and delete inactive with 7 days warning",
"Enforce: Snapshot and delete inactive with 14 days warning",
"Enforce: Snapshot and delete inactive with 30 days warning",
"Enforce: Snapshot and delete inactive with 60 days warning",
"Enforce: Snapshot and delete inactive with 90 days warning",
"Enforce: Snapshot and delete inactive with 180 days warning",
"Enforce: Snapshot and delete inactive with 365 days warning"
],
"example": [
"Check: Active"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Active > Age

The age after which the AWS RDS db cluster
is no longer considered active. If a create time is unavailable, the time Guardrails discovered the resource is used.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterActiveAge
Valid Value
[
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
],
"example": [
"Force inactive if age > 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Active > Budget

The impact of the budget state on the active control. This policy allows you to force
dbClusters to inactive based on the current budget state, as reflected in
AWS > Account > Budget > State

The Active control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated compliance
environment, it's common to end up with a wide range of alarms that are difficult
and time consuming to clear. The Active control brings automated, well-defined
control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterActiveBudget
Valid Value
[
"Skip",
"Force inactive if Budget > State is Over or higher",
"Force inactive if Budget > State is Critical or higher",
"Force inactive if Budget > State is Shutdown"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Force inactive if Budget > State is Over or higher",
"Force inactive if Budget > State is Critical or higher",
"Force inactive if Budget > State is Shutdown"
],
"example": [
"Skip"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Active > Last Modified

The number of days since the AWS RDS db cluster
was last modified before it is considered inactive.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterActiveLastModified
Valid Value
[
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
],
"example": [
"Active if last modified <= 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Approved

Determine the action to take when an AWS RDS db cluster is not approved based on AWS > RDS > DB Cluster > Approved > * policies.

The Approved control checks the status of the defined Approved sub-policies for the resource. If the resource is not approved according to any of these policies, this control raises an alarm and takes the defined enforcement action.

For any enforcement actions that specify if new, e.g., Enforce: Delete unapproved if new, this control will only take the enforcement actions for resources created within the last 60 minutes.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterApproved
Valid Value
[
"Skip",
"Check: Approved",
"Enforce: Snapshot and delete unapproved if new"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Approved",
"Enforce: Snapshot and delete unapproved if new"
],
"example": [
"Check: Approved"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Approved > Budget

The policy allows you to set db clusters to unapproved based on the current budget state, as reflected in AWS > Account > Budget > State

This policy will be evaluated by the Approved control. If an AWS RDS db cluster is not matched by the approved list, it will be subject to the action specified in the AWS > RDS > DB Cluster > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterApprovedBudget
Valid Value
[
"Skip",
"Unapproved if Budget > State is Over or higher",
"Unapproved if Budget > State is Critical or higher",
"Unapproved if Budget > State is Shutdown"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Unapproved if Budget > State is Over or higher",
"Unapproved if Budget > State is Critical or higher",
"Unapproved if Budget > State is Shutdown"
],
"example": [
"Unapproved if Budget > State is Shutdown"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Approved > Custom

Determine whether the AWS RDS db cluster is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS db cluster is not approved, it will be subject to the action specified in the AWS > RDS > DB Cluster > Approved policy.
See Approved for more information.

Note: The policy value must be a string with a value of Approved, Not approved or Skip, or in the form of YAML objects. The object(s) must contain the key result with its value as Approved or Not approved. A custom title and message can also be added using the keys title and message respectively.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterApprovedCustom
Schema
{
"example": [
"Approved",
"Not approved",
"Skip",
{
"result": "Approved"
},
{
"title": "string",
"result": "Not approved"
},
{
"title": "string",
"result": "Approved",
"message": "string"
},
[
{
"title": "string",
"result": "Approved",
"message": "string"
},
{
"title": "string",
"result": "Not approved",
"message": "string"
}
]
],
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"pattern": "^[\\W\\w]{1,32}$"
},
"message": {
"type": "string",
"pattern": "^[\\W\\w]{1,128}$"
},
"result": {
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
},
"required": [
"result"
],
"additionalProperties": false
}
},
{
"type": "object",
"properties": {
"title": {
"type": "string",
"pattern": "^[\\W\\w]{1,32}$"
},
"message": {
"type": "string",
"pattern": "^[\\W\\w]{1,128}$"
},
"result": {
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
},
"required": [
"result"
],
"additionalProperties": false
},
{
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Approved > Regions

A list of AWS regions in which AWS RDS db clusters are approved for use.

The expected format is an array of regions names. You may use the '*' and '?' wildcard characters.

This policy will be evaluated by the Approved control. If an AWS RDS db cluster is created in a region that is not in the approved list, it will be subject to the action specified in the AWS > RDS > DB Cluster > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterApprovedRegions
Default Template Input
"{\n regions: policy(uri: \"tmod:@turbot/aws-rds#/policy/types/rdsApprovedRegionsDefault\")\n}\n"
Default Template
"{% if $.regions | length == 0 %} [] {% endif %}{% for item in $.regions %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"

AWS > RDS > DB Cluster > Approved > Usage

Determine whether the AWS RDS db cluster is allowed to exist.

This policy will be evaluated by the Approved control. If an AWS RDS db cluster is not approved, it will be subject to the action specified in the AWS > RDS > DB Cluster > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterApprovedUsage
Valid Value
[
"Not approved",
"Approved",
"Approved if AWS > RDS > Enabled"
]
Schema
{
"type": "string",
"enum": [
"Not approved",
"Approved",
"Approved if AWS > RDS > Enabled"
],
"example": [
"Not approved"
],
"default": "Approved if AWS > RDS > Enabled"
}

AWS > RDS > DB Cluster > Backup Retention Period

Ensure the backup retention period is configured to meet policy. Automatic snapshots are deleted by AWS when the RDS cluster is deleted.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterBackupRetentionPeriod
Category
Valid Value
[
"Skip",
"Check: Backup retention period",
"Enforce: Backup retention period"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Backup retention period",
"Enforce: Backup retention period"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Backup Retention Period > Days

The number of days for which the automated snapshots are retained. Automated snapshots are deleted by AWS at the end of a retention period.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterBackupRetentionPeriodDays
Category
Schema
{
"type": "integer",
"minimum": 1,
"maximum": 35,
"default": 7
}

AWS > RDS > DB Cluster > CMDB

Configure whether to record and synchronize details for the AWS RDS db cluster into the CMDB.

The CMDB control is responsible for populating and updating all the attributes for that resource type in the Guardrails CMDB.
All policies and controls in Guardrails are based around the resource, so usually the CMDB policy is set to "Enforce: Enabled".

If set to Skip then all changes to the CMDB are paused - no new resources will be discovered, no updates will be made and deleted resources will not be removed.

To cleanup resources and stop tracking changes, set this policy to "Enforce: Disabled".

CMDB controls also use the Regions policy associated with the resource. If region is not in AWS > RDS > DB Cluster > Regions policy, the CMDB control will delete the resource from the CMDB.

(Note: Setting CMDB to "Skip" will also pause these changes.)

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterCmdb
Category
Valid Value
[
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
],
"example": [
"Skip"
],
"default": "Enforce: Enabled"
}

AWS > RDS > DB Cluster > Configured

Determine how to configure this resource.

Note: If the resource is managed by another stack, then the Skip/Check/Enforce values here are ignored
and inherit from the stack that owns it.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterConfigured
Valid Value
[
"Skip (unless claimed by a stack)",
"Check: Per Configured > Source (unless claimed by a stack)",
"Enforce: Per Configured > Source (unless claimed by a stack)"
]
Schema
{
"enum": [
"Skip (unless claimed by a stack)",
"Check: Per Configured > Source (unless claimed by a stack)",
"Enforce: Per Configured > Source (unless claimed by a stack)"
],
"default": "Skip (unless claimed by a stack)"
}

AWS > RDS > DB Cluster > Configured > Claim Precedence

An ordered list of who is allowed to claim a resource.
A stack cannot claim a resource if it is already claimed by another
stack at a higher level of precedence.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterConfiguredPrecedence
Default Template Input
"{\n defaultPrecedence: policy(uri:\"tmod:@turbot/turbot#/policy/types/claimPrecedenceDefault\")\n}\n"
Default Template
"{%- if $.defaultPrecedence | length == 0 %}[]{%- else %}{% for item in $.defaultPrecedence %}- &#39;{{ item }}&#39;{% endfor %}{% endif %}"
Schema
{
"type": "array",
"items": {
"type": "string"
}
}

AWS > RDS > DB Cluster > Configured > Source

A HCL or JSON format Terraform configuration source used to configure this resource

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterConfiguredSource
Schema
{
"type": "string",
"default": "",
"x-schema-form": {
"type": "code",
"language": "hcl"
}
}

AWS > RDS > DB Cluster > Copy Tags to Snapshot

Configure Copy Tags to Snapshot settings on an AWS > RDS > DB Cluster.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterCopyTagsToSnapshot
Category
Valid Value
[
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Deletion Protection

Configure Deletion Protection settings on an AWS > RDS > DB Cluster.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterDeletionProtection
Category
Valid Value
[
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Logs Export Configuration

Configure logs export to CloudWatch for an AWS > RDS > DB Cluster as per the AWS > RDS > DB Cluster > Logs Export Configuration > * policies.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterLogsExportConfiguration
Category
Valid Value
[
"Skip",
"Check: Disabled",
"Check: Enabled per Logs Export Configuration > Log Types",
"Enforce: Disabled",
"Enforce : Enabled per Logs Export Configuration > Log Types"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Disabled",
"Check: Enabled per Logs Export Configuration > Log Types",
"Enforce: Disabled",
"Enforce : Enabled per Logs Export Configuration > Log Types"
],
"example": [
"Check: Enabled per Logs Export Configuration > Log Types"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Logs Export Configuration > Log Types

List of log types to be enabled for an AWS > RDS > DB Cluster.

Supported log types for various DB engines:

<br /><br />Amazon Aurora MySQL:<br /> * Audit Log<br /> * Error Log<br /> * General Log<br /> * Slow Query Log<br /><br />Amazon Aurora PostgreSQL:<br /> * PostgreSQL Log<br /><br />

Note: Unsupported log types selected for a DB engine will be filtered out automatically and only the supported log types will be enabled.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterLogsExportConfigurationLogTypes
Category
Schema
{
"type": "array",
"items": {
"type": "string",
"enum": [
"Audit log",
"Error log",
"General log",
"PostgreSQL log",
"Slow query log"
]
},
"example": [
"Error log",
"General log"
],
"default": []
}

AWS > RDS > DB Cluster > Regions

A list of AWS regions in which AWS RDS db clusters are supported for use.

Any db clusters in a region not listed here will not be recorded in CMDB.

The expected format is an array of regions names. You may use the '*' and
'?' wildcard characters.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterRegions
Default Template Input
"{\n regions: policyValue(uri:\"tmod:@turbot/aws-rds#/policy/types/rdsRegionsDefault\") {\n value\n }\n}\n"
Default Template
"{% if $.regions.value | length == 0 %} [] {% endif %}{% for item in $.regions.value %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"

AWS > RDS > DB Cluster > Schedule

Set a schedule for starting and stopping an AWS RDS db cluster.

Note If both "Schedule" and "Schedule Tag" are set to enforce and the
db cluster has a turbot_custom_schedule tag, then the schedule specified by
the tag will be in effect.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSchedule
Valid Value
[
"Skip",
"Enforce: Business hours (8:00am - 6:00pm on weekdays)",
"Enforce: Extended business hours (7:00am - 11:00pm on weekdays)",
"Enforce: Stop for night (stop at 10:00pm every day)",
"Enforce: Stop for weekend (stop at 10:00pm on Friday)"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Business hours (8:00am - 6:00pm on weekdays)",
"Enforce: Extended business hours (7:00am - 11:00pm on weekdays)",
"Enforce: Stop for night (stop at 10:00pm every day)",
"Enforce: Stop for weekend (stop at 10:00pm on Friday)"
],
"example": [
"Enforce: Business hours (8:00am - 6:00pm on weekdays)"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Schedule Tag

Allow setting a schedule for starting and stopping an RDS db cluster via the
turbot_custom_schedule tag. If the schedule is invalid, no actions will be
taken against the dbCluster.

Note If both "Schedule" and "Schedule Tag" are set to enforce and the
db cluster has a turbot_custom_schedule, then the schedule specified by the
tag will be in effect.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterScheduleTag
Valid Value
[
"Skip",
"Enforce: Schedule per turbot_custom_schedule tag"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Schedule per turbot_custom_schedule tag"
],
"example": [
"Enforce: Schedule per turbot_custom_schedule tag"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Tags

Determine the action to take when an AWS RDS db cluster tags are not updated based on the AWS > RDS > DB Cluster > Tags > * policies.

The control ensure AWS RDS db cluster tags include tags defined in AWS > RDS > DB Cluster > Tags > Template.

Tags not defined in DB Cluster Tags Template will not be modified or deleted. Setting a tag value to undefined will result in the tag being deleted.

See Tags for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterTags
Valid Value
[
"Skip",
"Check: Tags are correct",
"Enforce: Set tags"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Tags are correct",
"Enforce: Set tags"
],
"example": [
"Check: Tags are correct"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Tags > Template

The template is used to generate the keys and values for AWS RDS db cluster.

Tags not defined in DB Cluster Tags Template will not be modified or deleted. Setting a tag value to undefined will result in the tag being deleted.

See Tags for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterTagsTemplate
Default Template Input
[
"{\n account {\n turbot {\n id\n }\n }\n}\n",
"{\n defaultTags: policyValue(uri:\"tmod:@turbot/aws-rds#/policy/types/rdsTagsTemplate\" resourceId: \"{{ $.account.turbot.id }}\") {\n value\n }\n}\n"
]
Default Template
"{%- if $.defaultTags.value | length == 0 %} [] {%- elif $.defaultTags.value != undefined %}{{ $.defaultTags.value | dump | safe }}{%- else %}{% for item in $.defaultTags.value %}- {{ item }}{% endfor %}{% endif %}"

AWS > RDS > DB Cluster > Usage

Configure the number of AWS RDS db clusters that can be used for this region and the current consumption against the limit.

You can configure the behavior of the control with this AWS > RDS > DB Cluster > Usage policy.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterUsage
Valid Value
[
"Skip",
"Check: Usage <= 85% of Limit",
"Check: Usage <= 100% of Limit"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Usage <= 85% of Limit",
"Check: Usage <= 100% of Limit"
],
"example": [
"Check: Usage <= 85% of Limit"
],
"default": "Skip"
}

AWS > RDS > DB Cluster > Usage > Limit

Maximum number of items that can be created for this region.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterUsageLimit
Schema
{
"type": "integer",
"minimum": 0,
"default": 40
}

AWS > RDS > DB Cluster Parameter Group > Active

Determine the action to take when an AWS RDS db cluster parameter group, based on the AWS > RDS > DB Cluster Parameter Group > Active > * policies.

The control determines whether the resource is in active use, and if not,
has the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster Parameter Group > Active > *), raises an alarm, and takes the defined enforcement
action. Each Active sub-policy can calculate a status of active, inactive
or skipped. Generally, if the resource appears to be Active for any reason
it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved for any reason it will be considered
Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupActive
Valid Value
[
"Skip",
"Check: Active",
"Enforce: Delete inactive with 1 day warning",
"Enforce: Delete inactive with 3 days warning",
"Enforce: Delete inactive with 7 days warning",
"Enforce: Delete inactive with 14 days warning",
"Enforce: Delete inactive with 30 days warning",
"Enforce: Delete inactive with 60 days warning",
"Enforce: Delete inactive with 90 days warning",
"Enforce: Delete inactive with 180 days warning",
"Enforce: Delete inactive with 365 days warning"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Active",
"Enforce: Delete inactive with 1 day warning",
"Enforce: Delete inactive with 3 days warning",
"Enforce: Delete inactive with 7 days warning",
"Enforce: Delete inactive with 14 days warning",
"Enforce: Delete inactive with 30 days warning",
"Enforce: Delete inactive with 60 days warning",
"Enforce: Delete inactive with 90 days warning",
"Enforce: Delete inactive with 180 days warning",
"Enforce: Delete inactive with 365 days warning"
],
"example": [
"Check: Active"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Parameter Group > Active > Age

The age after which the AWS RDS db cluster parameter group
is no longer considered active. If a create time is unavailable, the time Guardrails discovered the resource is used.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster Parameter Group > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupActiveAge
Valid Value
[
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
],
"example": [
"Force inactive if age > 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Parameter Group > Active > Last Modified

The number of days since the AWS RDS db cluster parameter group
was last modified before it is considered inactive.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster Parameter Group > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupActiveLastModified
Valid Value
[
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
],
"example": [
"Active if last modified <= 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Parameter Group > Approved

Determine the action to take when an AWS RDS db cluster parameter group is not approved based on AWS > RDS > DB Cluster Parameter Group > Approved > * policies.

The Approved control checks the status of the defined Approved sub-policies for the resource. If the resource is not approved according to any of these policies, this control raises an alarm and takes the defined enforcement action.

For any enforcement actions that specify if new, e.g., Enforce: Delete unapproved if new, this control will only take the enforcement actions for resources created within the last 60 minutes.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupApproved
Valid Value
[
"Skip",
"Check: Approved",
"Enforce: Delete unapproved if new"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Approved",
"Enforce: Delete unapproved if new"
],
"example": [
"Check: Approved"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Parameter Group > Approved > Custom

Determine whether the AWS RDS db cluster parameter group is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS db cluster parameter group is not approved, it will be subject to the action specified in the AWS > RDS > DB Cluster Parameter Group > Approved policy.
See Approved for more information.

Note: The policy value must be a string with a value of Approved, Not approved or Skip, or in the form of YAML objects. The object(s) must contain the key result with its value as Approved or Not approved. A custom title and message can also be added using the keys title and message respectively.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupApprovedCustom
Schema
{
"example": [
"Approved",
"Not approved",
"Skip",
{
"result": "Approved"
},
{
"title": "string",
"result": "Not approved"
},
{
"title": "string",
"result": "Approved",
"message": "string"
},
[
{
"title": "string",
"result": "Approved",
"message": "string"
},
{
"title": "string",
"result": "Not approved",
"message": "string"
}
]
],
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"pattern": "^[\\W\\w]{1,32}$"
},
"message": {
"type": "string",
"pattern": "^[\\W\\w]{1,128}$"
},
"result": {
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
},
"required": [
"result"
],
"additionalProperties": false
}
},
{
"type": "object",
"properties": {
"title": {
"type": "string",
"pattern": "^[\\W\\w]{1,32}$"
},
"message": {
"type": "string",
"pattern": "^[\\W\\w]{1,128}$"
},
"result": {
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
},
"required": [
"result"
],
"additionalProperties": false
},
{
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
],
"default": "Skip"
}

AWS > RDS > DB Cluster Parameter Group > Approved > Regions

A list of AWS regions in which AWS RDS db cluster parameter groups are approved for use.

The expected format is an array of regions names. You may use the '*' and '?' wildcard characters.

This policy will be evaluated by the Approved control. If an AWS RDS db cluster parameter group is created in a region that is not in the approved list, it will be subject to the action specified in the AWS > RDS > DB Cluster Parameter Group > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupApprovedRegions
Default Template Input
"{\n regions: policy(uri: \"tmod:@turbot/aws-rds#/policy/types/rdsApprovedRegionsDefault\")\n}\n"
Default Template
"{% if $.regions | length == 0 %} [] {% endif %}{% for item in $.regions %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"

AWS > RDS > DB Cluster Parameter Group > Approved > Usage

Determine whether the AWS RDS db cluster parameter group is allowed to exist.

This policy will be evaluated by the Approved control. If an AWS RDS db cluster parameter group is not approved, it will be subject to the action specified in the AWS > RDS > DB Cluster Parameter Group > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupApprovedUsage
Valid Value
[
"Not approved",
"Approved",
"Approved if AWS > RDS > Enabled"
]
Schema
{
"type": "string",
"enum": [
"Not approved",
"Approved",
"Approved if AWS > RDS > Enabled"
],
"example": [
"Not approved"
],
"default": "Approved if AWS > RDS > Enabled"
}

AWS > RDS > DB Cluster Parameter Group > CMDB

Configure whether to record and synchronize details for the AWS RDS db cluster parameter group into the CMDB.

The CMDB control is responsible for populating and updating all the attributes for that resource type in the Guardrails CMDB.
All policies and controls in Guardrails are based around the resource, so usually the CMDB policy is set to "Enforce: Enabled".

If set to Skip then all changes to the CMDB are paused - no new resources will be discovered, no updates will be made and deleted resources will not be removed.

To cleanup resources and stop tracking changes, set this policy to "Enforce: Disabled".

CMDB controls also use the Regions policy associated with the resource. If region is not in AWS > RDS > DB Cluster Parameter Group > Regions policy, the CMDB control will delete the resource from the CMDB.

(Note: Setting CMDB to "Skip" will also pause these changes.)

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupCmdb
Category
Valid Value
[
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
],
"example": [
"Skip"
],
"default": "Enforce: Enabled"
}

AWS > RDS > DB Cluster Parameter Group > Configured

Determine how to configure this resource.

Note: If the resource is managed by another stack, then the Skip/Check/Enforce values here are ignored
and inherit from the stack that owns it.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupConfigured
Valid Value
[
"Skip (unless claimed by a stack)",
"Check: Per Configured > Source (unless claimed by a stack)",
"Enforce: Per Configured > Source (unless claimed by a stack)"
]
Schema
{
"enum": [
"Skip (unless claimed by a stack)",
"Check: Per Configured > Source (unless claimed by a stack)",
"Enforce: Per Configured > Source (unless claimed by a stack)"
],
"default": "Skip (unless claimed by a stack)"
}

AWS > RDS > DB Cluster Parameter Group > Configured > Claim Precedence

An ordered list of who is allowed to claim a resource.
A stack cannot claim a resource if it is already claimed by another
stack at a higher level of precedence.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupConfiguredPrecedence
Default Template Input
"{\n defaultPrecedence: policy(uri:\"tmod:@turbot/turbot#/policy/types/claimPrecedenceDefault\")\n}\n"
Default Template
"{%- if $.defaultPrecedence | length == 0 %}[]{%- else %}{% for item in $.defaultPrecedence %}- &#39;{{ item }}&#39;{% endfor %}{% endif %}"
Schema
{
"type": "array",
"items": {
"type": "string"
}
}

AWS > RDS > DB Cluster Parameter Group > Configured > Source

A HCL or JSON format Terraform configuration source used to configure this resource.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupConfiguredSource
Schema
{
"type": "string",
"default": "",
"x-schema-form": {
"type": "code",
"language": "hcl"
}
}

AWS > RDS > DB Cluster Parameter Group > Regions

A list of AWS regions in which AWS RDS db cluster parameter groups are supported for use.

Any db cluster parameter groups in a region not listed here will not be recorded in CMDB.

The expected format is an array of regions names. You may use the '*' and
'?' wildcard characters.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupRegions
Default Template Input
"{\n regions: policyValue(uri:\"tmod:@turbot/aws-rds#/policy/types/rdsRegionsDefault\") {\n value\n }\n}\n"
Default Template
"{% if $.regions.value | length == 0 %} [] {% endif %}{% for item in $.regions.value %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"

AWS > RDS > DB Cluster Parameter Group > Tags

Determine the action to take when an AWS RDS db cluster parameter group tags are not updated based on the AWS > RDS > DB Cluster Parameter Group > Tags > * policies.

The control ensure AWS RDS db cluster parameter group tags include tags defined in AWS > RDS > DB Cluster Parameter Group > Tags > Template.

Tags not defined in DB Cluster Parameter Group Tags Template will not be modified or deleted. Setting a tag value to undefined will result in the tag being deleted.

See Tags for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupTags
Valid Value
[
"Skip",
"Check: Tags are correct",
"Enforce: Set tags"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Tags are correct",
"Enforce: Set tags"
],
"example": [
"Check: Tags are correct"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Parameter Group > Tags > Template

The template is used to generate the keys and values for AWS RDS db cluster parameter group.

Tags not defined in DB Cluster Parameter Group Tags Template will not be modified or deleted. Setting a tag value to undefined will result in the tag being deleted.

See Tags for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupTagsTemplate
Default Template Input
[
"{\n account {\n turbot {\n id\n }\n }\n}\n",
"{\n defaultTags: policyValue(uri:\"tmod:@turbot/aws-rds#/policy/types/rdsTagsTemplate\" resourceId: \"{{ $.account.turbot.id }}\") {\n value\n }\n}\n"
]
Default Template
"{%- if $.defaultTags.value | length == 0 %} [] {%- elif $.defaultTags.value != undefined %}{{ $.defaultTags.value | dump | safe }}{%- else %}{% for item in $.defaultTags.value %}- {{ item }}{% endfor %}{% endif %}"

AWS > RDS > DB Cluster Parameter Group > Usage

Configure the number of AWS RDS db cluster parameter groups that can be used for this region and the current consumption against the limit.

You can configure the behavior of the control with this AWS > RDS > DB Cluster Parameter Group > Usage policy.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupUsage
Valid Value
[
"Skip",
"Check: Usage <= 85% of Limit",
"Check: Usage <= 100% of Limit"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Usage <= 85% of Limit",
"Check: Usage <= 100% of Limit"
],
"example": [
"Check: Usage <= 85% of Limit"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Parameter Group > Usage > Limit

Maximum number of items that can be created for this region.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterParameterGroupUsageLimit
Schema
{
"type": "integer",
"minimum": 0,
"default": 50
}

AWS > RDS > DB Cluster Snapshot [Manual] > Active

Determine the action to take when an AWS RDS db cluster snapshot [manual], based on the AWS > RDS > DB Cluster Snapshot [Manual] > Active > * policies.

The control determines whether the resource is in active use, and if not,
has the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster Snapshot [Manual] > Active > *), raises an alarm, and takes the defined enforcement
action. Each Active sub-policy can calculate a status of active, inactive
or skipped. Generally, if the resource appears to be Active for any reason
it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved for any reason it will be considered
Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualActive
Valid Value
[
"Skip",
"Check: Active",
"Enforce: Delete inactive with 1 day warning",
"Enforce: Delete inactive with 3 days warning",
"Enforce: Delete inactive with 7 days warning",
"Enforce: Delete inactive with 14 days warning",
"Enforce: Delete inactive with 30 days warning",
"Enforce: Delete inactive with 60 days warning",
"Enforce: Delete inactive with 90 days warning",
"Enforce: Delete inactive with 180 days warning",
"Enforce: Delete inactive with 365 days warning"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Active",
"Enforce: Delete inactive with 1 day warning",
"Enforce: Delete inactive with 3 days warning",
"Enforce: Delete inactive with 7 days warning",
"Enforce: Delete inactive with 14 days warning",
"Enforce: Delete inactive with 30 days warning",
"Enforce: Delete inactive with 60 days warning",
"Enforce: Delete inactive with 90 days warning",
"Enforce: Delete inactive with 180 days warning",
"Enforce: Delete inactive with 365 days warning"
],
"example": [
"Check: Active"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Active > Age

The age after which the AWS RDS db cluster snapshot [manual]
is no longer considered active. If a create time is unavailable, the time Guardrails discovered the resource is used.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster Snapshot [Manual] > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualActiveAge
Valid Value
[
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
],
"example": [
"Force inactive if age > 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Active > Budget

The impact of the budget state on the active control. This policy allows you to force
dbClusterSnapshotManuals to inactive based on the current budget state, as reflected in
AWS > Account > Budget > State

The Active control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated compliance
environment, it's common to end up with a wide range of alarms that are difficult
and time consuming to clear. The Active control brings automated, well-defined
control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster Snapshot [Manual] > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualActiveBudget
Valid Value
[
"Skip",
"Force inactive if Budget > State is Over or higher",
"Force inactive if Budget > State is Critical or higher",
"Force inactive if Budget > State is Shutdown"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Force inactive if Budget > State is Over or higher",
"Force inactive if Budget > State is Critical or higher",
"Force inactive if Budget > State is Shutdown"
],
"example": [
"Skip"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Active > Last Modified

The number of days since the AWS RDS db cluster snapshot [manual]
was last modified before it is considered inactive.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Cluster Snapshot [Manual] > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualActiveLastModified
Valid Value
[
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
],
"example": [
"Active if last modified <= 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Approved

Determine the action to take when an AWS RDS db cluster snapshot [manual] is not approved based on AWS > RDS > DB Cluster Snapshot [Manual] > Approved > * policies.

The Approved control checks the status of the defined Approved sub-policies for the resource. If the resource is not approved according to any of these policies, this control raises an alarm and takes the defined enforcement action.

For any enforcement actions that specify if new, e.g., Enforce: Delete unapproved if new, this control will only take the enforcement actions for resources created within the last 60 minutes.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualApproved
Valid Value
[
"Skip",
"Check: Approved",
"Enforce: Delete unapproved if new"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Approved",
"Enforce: Delete unapproved if new"
],
"example": [
"Check: Approved"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Approved > Budget

The policy allows you to set db cluster snapshot [manual]s to unapproved based on the current budget state, as reflected in AWS > Account > Budget > State

This policy will be evaluated by the Approved control. If an AWS RDS db cluster snapshot [manual] is not matched by the approved list, it will be subject to the action specified in the AWS > RDS > DB Cluster Snapshot [Manual] > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualApprovedBudget
Valid Value
[
"Skip",
"Unapproved if Budget > State is Over or higher",
"Unapproved if Budget > State is Critical or higher",
"Unapproved if Budget > State is Shutdown"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Unapproved if Budget > State is Over or higher",
"Unapproved if Budget > State is Critical or higher",
"Unapproved if Budget > State is Shutdown"
],
"example": [
"Unapproved if Budget > State is Shutdown"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Approved > Custom

Determine whether the AWS RDS db cluster snapshot [manual] is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS db cluster snapshot [manual] is not approved, it will be subject to the action specified in the AWS > RDS > DB Cluster Snapshot [Manual] > Approved policy.
See Approved for more information.

Note: The policy value must be a string with a value of Approved, Not approved or Skip, or in the form of YAML objects. The object(s) must contain the key result with its value as Approved or Not approved. A custom title and message can also be added using the keys title and message respectively.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualApprovedCustom
Schema
{
"example": [
"Approved",
"Not approved",
"Skip",
{
"result": "Approved"
},
{
"title": "string",
"result": "Not approved"
},
{
"title": "string",
"result": "Approved",
"message": "string"
},
[
{
"title": "string",
"result": "Approved",
"message": "string"
},
{
"title": "string",
"result": "Not approved",
"message": "string"
}
]
],
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"pattern": "^[\\W\\w]{1,32}$"
},
"message": {
"type": "string",
"pattern": "^[\\W\\w]{1,128}$"
},
"result": {
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
},
"required": [
"result"
],
"additionalProperties": false
}
},
{
"type": "object",
"properties": {
"title": {
"type": "string",
"pattern": "^[\\W\\w]{1,32}$"
},
"message": {
"type": "string",
"pattern": "^[\\W\\w]{1,128}$"
},
"result": {
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
},
"required": [
"result"
],
"additionalProperties": false
},
{
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Approved > Regions

A list of AWS regions in which AWS RDS db cluster snapshot [manual]s are approved for use.

The expected format is an array of regions names. You may use the '*' and '?' wildcard characters.

This policy will be evaluated by the Approved control. If an AWS RDS db cluster snapshot [manual] is created in a region that is not in the approved list, it will be subject to the action specified in the AWS > RDS > DB Cluster Snapshot [Manual] > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualApprovedRegions
Default Template Input
"{\n regions: policy(uri: \"tmod:@turbot/aws-rds#/policy/types/rdsApprovedRegionsDefault\")\n}\n"
Default Template
"{% if $.regions | length == 0 %} [] {% endif %}{% for item in $.regions %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"

AWS > RDS > DB Cluster Snapshot [Manual] > Approved > Usage

Determine whether the AWS RDS db cluster snapshot [manual] is allowed to exist.

This policy will be evaluated by the Approved control. If an AWS RDS db cluster snapshot [manual] is not approved, it will be subject to the action specified in the AWS > RDS > DB Cluster Snapshot [Manual] > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualApprovedUsage
Valid Value
[
"Not approved",
"Approved",
"Approved if AWS > RDS > Enabled"
]
Schema
{
"type": "string",
"enum": [
"Not approved",
"Approved",
"Approved if AWS > RDS > Enabled"
],
"example": [
"Not approved"
],
"default": "Approved if AWS > RDS > Enabled"
}

AWS > RDS > DB Cluster Snapshot [Manual] > CMDB

Configure whether to record and synchronize details for the AWS RDS db cluster snapshot [manual] into the CMDB.

The CMDB control is responsible for populating and updating all the attributes for that resource type in the Guardrails CMDB.
All policies and controls in Guardrails are based around the resource, so usually the CMDB policy is set to "Enforce: Enabled".

If set to Skip then all changes to the CMDB are paused - no new resources will be discovered, no updates will be made and deleted resources will not be removed.

To cleanup resources and stop tracking changes, set this policy to "Enforce: Disabled".

CMDB controls also use the Regions policy associated with the resource. If region is not in AWS > RDS > DB Cluster Snapshot [Manual] > Regions policy, the CMDB control will delete the resource from the CMDB.

(Note: Setting CMDB to "Skip" will also pause these changes.)

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualCmdb
Category
Valid Value
[
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
],
"example": [
"Skip"
],
"default": "Enforce: Enabled"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Configured

Determine how to configure this resource.

Note: If the resource is managed by another stack, then the Skip/Check/Enforce values here are ignored
and inherit from the stack that owns it.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualConfigured
Valid Value
[
"Skip (unless claimed by a stack)",
"Check: Per Configured > Source (unless claimed by a stack)",
"Enforce: Per Configured > Source (unless claimed by a stack)"
]
Schema
{
"enum": [
"Skip (unless claimed by a stack)",
"Check: Per Configured > Source (unless claimed by a stack)",
"Enforce: Per Configured > Source (unless claimed by a stack)"
],
"default": "Skip (unless claimed by a stack)"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Configured > Claim Precedence

An ordered list of who is allowed to claim a resource.
A stack cannot claim a resource if it is already claimed by another
stack at a higher level of precedence.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualConfiguredPrecedence
Default Template Input
"{\n defaultPrecedence: policy(uri:\"tmod:@turbot/turbot#/policy/types/claimPrecedenceDefault\")\n}\n"
Default Template
"{%- if $.defaultPrecedence | length == 0 %}[]{%- else %}{% for item in $.defaultPrecedence %}- &#39;{{ item }}&#39;{% endfor %}{% endif %}"
Schema
{
"type": "array",
"items": {
"type": "string"
}
}

AWS > RDS > DB Cluster Snapshot [Manual] > Configured > Source

A HCL or JSON format Terraform configuration source used to configure this resource.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualConfiguredSource
Schema
{
"type": "string",
"default": "",
"x-schema-form": {
"type": "code",
"language": "hcl"
}
}

AWS > RDS > DB Cluster Snapshot [Manual] > Regions

A list of AWS regions in which AWS RDS db cluster snapshot [manual]s are supported for use.

Any db cluster snapshot [manual]s in a region not listed here will not be recorded in CMDB.

The expected format is an array of regions names. You may use the '*' and
'?' wildcard characters.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualRegions
Default Template Input
"{\n regions: policyValue(uri:\"tmod:@turbot/aws-rds#/policy/types/rdsRegionsDefault\") {\n value\n }\n}\n"
Default Template
"{% if $.regions.value | length == 0 %} [] {% endif %}{% for item in $.regions.value %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"

AWS > RDS > DB Cluster Snapshot [Manual] > Tags

Determine the action to take when an AWS RDS db cluster snapshot [manual] tags are not updated based on the AWS > RDS > DB Cluster Snapshot [Manual] > Tags > * policies.

The control ensure AWS RDS db cluster snapshot [manual] tags include tags defined in AWS > RDS > DB Cluster Snapshot [Manual] > Tags > Template.

Tags not defined in DB Cluster Snapshot [Manual] Tags Template will not be modified or deleted. Setting a tag value to undefined will result in the tag being deleted.

See Tags for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualTags
Valid Value
[
"Skip",
"Check: Tags are correct",
"Enforce: Set tags"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Tags are correct",
"Enforce: Set tags"
],
"example": [
"Check: Tags are correct"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Tags > Template

The template is used to generate the keys and values for AWS RDS db cluster snapshot [manual].

Tags not defined in DB Cluster Snapshot [Manual] Tags Template will not be modified or deleted. Setting a tag value to undefined will result in the tag being deleted.

See Tags for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualTagsTemplate
Default Template Input
[
"{\n account {\n turbot {\n id\n }\n }\n}\n",
"{\n defaultTags: policyValue(uri:\"tmod:@turbot/aws-rds#/policy/types/rdsTagsTemplate\" resourceId: \"{{ $.account.turbot.id }}\") {\n value\n }\n}\n"
]
Default Template
"{%- if $.defaultTags.value | length == 0 %} [] {%- elif $.defaultTags.value != undefined %}{{ $.defaultTags.value | dump | safe }}{%- else %}{% for item in $.defaultTags.value %}- {{ item }}{% endfor %}{% endif %}"

AWS > RDS > DB Cluster Snapshot [Manual] > Trusted Access

Manage trusted access for AWS RDS DB Cluster Snapshot [Manual]s.

AWS allows RDS DB Cluster Snapshot [Manual]s to be shared with specific AWS accounts.
This policy allows you to configure whether such sharing is allowed, and to which accounts.

If set to Enforce, access to non-trusted accounts will be removed.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualTrustedAccess
Valid Value
[
"Skip",
"Check: Trusted Access > Accounts",
"Enforce: Trusted Access > Accounts"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Trusted Access > Accounts",
"Enforce: Trusted Access > Accounts"
],
"example": [
"Check: Trusted Access > Accounts"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Trusted Access > Accounts

A list of AWS account IDs that are allowed to have access

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualTrustedAccessAccounts
Default Template Input
"{\n accounts: policy(uri: \"tmod:@turbot/aws-rds#/policy/types/rdsTrustedAccounts\")\n}\n"
Default Template
"{% if $.accounts | length == 0 %}[]{% endif %}{% for item in $.accounts %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"
Schema
{
"type": "array",
"items": {
"type": "string",
"pattern": "(?:^[0-9]{12}$|^\\*$|^all$)"
}
}

AWS > RDS > DB Cluster Snapshot [Manual] > Usage

Configure the number of AWS RDS db cluster snapshot [manual]s that can be used for this region and the current consumption against the limit.

You can configure the behavior of the control with this AWS > RDS > DB Cluster Snapshot [Manual] > Usage policy.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualUsage
Valid Value
[
"Skip",
"Check: Usage <= 85% of Limit",
"Check: Usage <= 100% of Limit"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Usage <= 85% of Limit",
"Check: Usage <= 100% of Limit"
],
"example": [
"Check: Usage <= 85% of Limit"
],
"default": "Skip"
}

AWS > RDS > DB Cluster Snapshot [Manual] > Usage > Limit

Maximum number of items that can be created for this region.

URI
tmod:@turbot/aws-rds#/policy/types/dbClusterSnapshotManualUsageLimit
Schema
{
"type": "integer",
"minimum": 0,
"default": 100
}

AWS > RDS > DB Instance > Active

Determine the action to take when an AWS RDS db instance, based on the AWS > RDS > DB Instance > Active > * policies.

The control determines whether the resource is in active use, and if not,
has the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Instance > Active > *), raises an alarm, and takes the defined enforcement
action. Each Active sub-policy can calculate a status of active, inactive
or skipped. Generally, if the resource appears to be Active for any reason
it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved for any reason it will be considered
Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceActive
Valid Value
[
"Skip",
"Check: Active",
"Enforce: Snapshot and delete inactive with 1 day warning",
"Enforce: Snapshot and delete inactive with 3 days warning",
"Enforce: Snapshot and delete inactive with 7 days warning",
"Enforce: Snapshot and delete inactive with 14 days warning",
"Enforce: Snapshot and delete inactive with 30 days warning",
"Enforce: Snapshot and delete inactive with 60 days warning",
"Enforce: Snapshot and delete inactive with 90 days warning",
"Enforce: Snapshot and delete inactive with 180 days warning",
"Enforce: Snapshot and delete inactive with 365 days warning"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Active",
"Enforce: Snapshot and delete inactive with 1 day warning",
"Enforce: Snapshot and delete inactive with 3 days warning",
"Enforce: Snapshot and delete inactive with 7 days warning",
"Enforce: Snapshot and delete inactive with 14 days warning",
"Enforce: Snapshot and delete inactive with 30 days warning",
"Enforce: Snapshot and delete inactive with 60 days warning",
"Enforce: Snapshot and delete inactive with 90 days warning",
"Enforce: Snapshot and delete inactive with 180 days warning",
"Enforce: Snapshot and delete inactive with 365 days warning"
],
"example": [
"Check: Active"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Active > Age

The age after which the AWS RDS db instance
is no longer considered active. If a create time is unavailable, the time Guardrails discovered the resource is used.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Instance > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceActiveAge
Valid Value
[
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
],
"example": [
"Force inactive if age > 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Active > Budget

The impact of the budget state on the active control. This policy allows you to force
dbInstances to inactive based on the current budget state, as reflected in
AWS > Account > Budget > State

The Active control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated compliance
environment, it's common to end up with a wide range of alarms that are difficult
and time consuming to clear. The Active control brings automated, well-defined
control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Instance > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceActiveBudget
Valid Value
[
"Skip",
"Force inactive if Budget > State is Over or higher",
"Force inactive if Budget > State is Critical or higher",
"Force inactive if Budget > State is Shutdown"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Force inactive if Budget > State is Over or higher",
"Force inactive if Budget > State is Critical or higher",
"Force inactive if Budget > State is Shutdown"
],
"example": [
"Skip"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Active > Last Modified

The number of days since the AWS RDS db instance
was last modified before it is considered inactive.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Instance > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceActiveLastModified
Valid Value
[
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
],
"example": [
"Active if last modified <= 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Approved

Determine the action to take when an AWS RDS db instance is not approved based on AWS > RDS > DB Instance > Approved > * policies.

The Approved control checks the status of the defined Approved sub-policies for the resource. If the resource is not approved according to any of these policies, this control raises an alarm and takes the defined enforcement action.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceApproved
Valid Value
[
"Skip",
"Check: Approved",
"Enforce: Stop unapproved",
"Enforce: Stop unapproved if new",
"Enforce: Snapshot and delete unapproved if new"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Approved",
"Enforce: Stop unapproved",
"Enforce: Stop unapproved if new",
"Enforce: Snapshot and delete unapproved if new"
],
"example": [
"Check: Approved"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Approved > Budget

The policy allows you to set db instances to unapproved based on the current budget state, as reflected in AWS > Account > Budget > State

This policy will be evaluated by the Approved control. If an AWS RDS db instance is not matched by the approved list, it will be subject to the action specified in the AWS > RDS > DB Instance > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceApprovedBudget
Valid Value
[
"Skip",
"Unapproved if Budget > State is Over or higher",
"Unapproved if Budget > State is Critical or higher",
"Unapproved if Budget > State is Shutdown"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Unapproved if Budget > State is Over or higher",
"Unapproved if Budget > State is Critical or higher",
"Unapproved if Budget > State is Shutdown"
],
"example": [
"Unapproved if Budget > State is Shutdown"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Approved > Custom

Determine whether the AWS RDS db instance is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS db instance is not approved, it will be subject to the action specified in the AWS > RDS > DB Instance > Approved policy.
See Approved for more information.

Note: The policy value must be a string with a value of Approved, Not approved or Skip, or in the form of YAML objects. The object(s) must contain the key result with its value as Approved or Not approved. A custom title and message can also be added using the keys title and message respectively.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceApprovedCustom
Schema
{
"example": [
"Approved",
"Not approved",
"Skip",
{
"result": "Approved"
},
{
"title": "string",
"result": "Not approved"
},
{
"title": "string",
"result": "Approved",
"message": "string"
},
[
{
"title": "string",
"result": "Approved",
"message": "string"
},
{
"title": "string",
"result": "Not approved",
"message": "string"
}
]
],
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"pattern": "^[\\W\\w]{1,32}$"
},
"message": {
"type": "string",
"pattern": "^[\\W\\w]{1,128}$"
},
"result": {
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
},
"required": [
"result"
],
"additionalProperties": false
}
},
{
"type": "object",
"properties": {
"title": {
"type": "string",
"pattern": "^[\\W\\w]{1,32}$"
},
"message": {
"type": "string",
"pattern": "^[\\W\\w]{1,128}$"
},
"result": {
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
},
"required": [
"result"
],
"additionalProperties": false
},
{
"type": "string",
"pattern": "^(Approved|Not approved|Skip)$"
}
],
"default": "Skip"
}

AWS > RDS > DB Instance > Approved > Database Engines

A list of database engines that the AWS RDS db instance is approved to use.

The expected format is an array of database engines. You may use the * and ? wildcard characters (and more).

This policy will be evaluated by the Approved control. If an AWS RDS db instance is not matched by the approved list, it will be subject to the action specified in the AWS > RDS > DB Instance > Approved policy.

<br />example:<br /> postgres<br />

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceApprovedDatabaseEngines
Schema
{
"type": "array",
"default": [
"*"
],
"items": {
"type": "string",
"pattern": "^[a-z0-9.?*-]+$"
}
}

AWS > RDS > DB Instance > Approved > Encryption at Rest

Define the Encryption at Rest settings required for AWS > RDS > DB Instance.

Encryption at Rest refers specifically to the encryption of data when written
to an underlying storage system. This control determines whether the resource
is encrypted at rest, and sets encryption to your desired level.

The Encryption at Rest
control compares the encryption settings against the encryption policies for the resource
(AWS > RDS > DB Instance > Encryption at Rest > *),
raises an alarm, and takes the defined enforcement action

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceEncryptionAtRest
Valid Value
[
"None",
"None or higher",
"AWS managed key",
"AWS managed key or higher",
"Customer managed key",
"Encryption at Rest > Customer Managed Key"
]
Schema
{
"type": "string",
"enum": [
"None",
"None or higher",
"AWS managed key",
"AWS managed key or higher",
"Customer managed key",
"Encryption at Rest > Customer Managed Key"
],
"example": [
"None or higher"
],
"default": "None or higher"
}

AWS > RDS > DB Instance > Approved > Encryption at Rest > Customer Managed Key

Define the KMS key ID for encryption at rest.

Encryption at Rest refers specifically to the encryption of data when written
to an underlying storage system. This control determines whether the resource
is encrypted at rest, and sets encryption to your desired level.

The Encryption at Rest
control compares the encryption settings against the encryption policies for the resource
(AWS > RDS > DB Instance > Encryption at Rest > *),
raises an alarm, and takes the defined enforcement action

Please make sure the key defined in the template has required permissions.

<br />example:<br /> alias/aws/ebs<br /> ddc06e04-ce5f-4995-c758-c2b6c510e8fd<br /> arn:aws:kms:us-east-1:123456789012:key/ddc06e04-ce5f-4995-c758-c2b6c510e8fd<br /> arn:aws:kms:us-east-1:123456789012:alias/aws/ebs<br />

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceEncryptionAtRestCustomerManagedKey
Default Template Input
"{\n defaultKey: policy(uri: \"aws-kms#/policy/types/keyDefaultCustomerManagedKey\")\n}\n"
Default Template
"{{ $.defaultKey }}"
Schema
{
"anyOf": [
{
"type": "string",
"pattern": "^alias/[a-zA-Z0-9:/_-]{1,249}$"
},
{
"type": "string",
"pattern": "^[-a-z0-9-]{1,255}$"
},
{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:kms:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:key/[-a-z0-9-]{1,255}$"
},
{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:kms:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:alias/[a-zA-Z0-9:/_-]{1,249}$"
}
],
"tests": [
{
"description": "valid - if keyArn",
"input": "arn:aws:kms:us-east-1:039305405804:key/ddc06e04-ce5f-4995-b758-c2b6c510e8fd"
},
{
"description": "valid - if aliasName",
"input": "alias/aws/ebs"
},
{
"description": "valid - if keyId",
"input": "ddc06e04-ce5f-4995-b758-c2b6c510e8fd"
},
{
"description": "valid - if aliasArn",
"input": "arn:aws:kms:us-east-1:039305405804:alias/aws/ebs"
}
]
}

AWS > RDS > DB Instance > Approved > Instance Classes

A list of instance classes that the AWS RDS db instance is approved to use.

The expected format is an array of instance classes. You may use the * and ? wildcard characters (and more).

This policy will be evaluated by the Approved control. If an AWS RDS db instance is not matched by the approved list, it will be subject to the action specified in the AWS > RDS > DB Instance > Approved policy.

<br />example:<br /> db.t2.large<br />

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceApprovedInstanceClasses
Schema
{
"type": "array",
"default": [
"*"
],
"items": {
"type": "string",
"pattern": "^[a-z0-9.?*]+$"
}
}

AWS > RDS > DB Instance > Approved > Regions

A list of AWS regions in which AWS RDS db instances are approved for use.

The expected format is an array of regions names. You may use the '*' and '?' wildcard characters.

This policy will be evaluated by the Approved control. If an AWS RDS db instance is created in a region that is not in the approved list, it will be subject to the action specified in the AWS > RDS > DB Instance > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceApprovedRegions
Default Template Input
"{\n regions: policy(uri: \"tmod:@turbot/aws-rds#/policy/types/rdsApprovedRegionsDefault\")\n}\n"
Default Template
"{% if $.regions | length == 0 %} [] {% endif %}{% for item in $.regions %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"

AWS > RDS > DB Instance > Approved > Usage

Determine whether the AWS RDS db instance is allowed to exist.

This policy will be evaluated by the Approved control. If an AWS RDS db instance is not approved, it will be subject to the action specified in the AWS > RDS > DB Instance > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceApprovedUsage
Valid Value
[
"Not approved",
"Approved",
"Approved if AWS > RDS > Enabled"
]
Schema
{
"type": "string",
"enum": [
"Not approved",
"Approved",
"Approved if AWS > RDS > Enabled"
],
"example": [
"Not approved"
],
"default": "Approved if AWS > RDS > Enabled"
}

AWS > RDS > DB Instance > Auto Minor Version Upgrade

Configure Auto Minor Version Upgrade settings on an AWS > RDS > DB Instance.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceAutoMinorVersionUpgrade
Category
Valid Value
[
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Backup Retention Period

Ensure the backup retention period is configured to meet policy. Automatic snapshots are deleted by AWS when the RDS instance is deleted.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceBackupRetentionPeriod
Category
Valid Value
[
"Skip",
"Check: Backup retention period",
"Enforce: Backup retention period"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Backup retention period",
"Enforce: Backup retention period"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Backup Retention Period > Days

The number of days for which the automated snapshots are retained. Automated snapshots are deleted by AWS at the end of a retention period.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceBackupRetentionPeriodDays
Category
Schema
{
"type": "integer",
"minimum": 0,
"maximum": 35,
"default": 7
}

AWS > RDS > DB Instance > CMDB

Configure whether to record and synchronize details for the AWS RDS db instance into the CMDB.

The CMDB control is responsible for populating and updating all the attributes for that resource type in the Guardrails CMDB.
All policies and controls in Guardrails are based around the resource, so usually the CMDB policy is set to "Enforce: Enabled".

If set to Skip then all changes to the CMDB are paused - no new resources will be discovered, no updates will be made and deleted resources will not be removed.

To cleanup resources and stop tracking changes, set this policy to "Enforce: Disabled".

CMDB controls also use the Regions policy associated with the resource. If region is not in AWS > RDS > DB Instance > Regions policy, the CMDB control will delete the resource from the CMDB.

(Note: Setting CMDB to "Skip" will also pause these changes.)

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceCmdb
Category
Valid Value
[
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
],
"example": [
"Skip"
],
"default": "Enforce: Enabled"
}

AWS > RDS > DB Instance > Configured

Determine how to configure this resource.

Note: If the resource is managed by another stack, then the Skip/Check/Enforce values here are ignored
and inherit from the stack that owns it.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceConfigured
Valid Value
[
"Skip (unless claimed by a stack)",
"Check: Per Configured > Source (unless claimed by a stack)",
"Enforce: Per Configured > Source (unless claimed by a stack)"
]
Schema
{
"enum": [
"Skip (unless claimed by a stack)",
"Check: Per Configured > Source (unless claimed by a stack)",
"Enforce: Per Configured > Source (unless claimed by a stack)"
],
"default": "Skip (unless claimed by a stack)"
}

AWS > RDS > DB Instance > Configured > Claim Precedence

An ordered list of who is allowed to claim a resource.
A stack cannot claim a resource if it is already claimed by another
stack at a higher level of precedence.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceConfiguredPrecedence
Default Template Input
"{\n defaultPrecedence: policy(uri:\"tmod:@turbot/turbot#/policy/types/claimPrecedenceDefault\")\n}\n"
Default Template
"{%- if $.defaultPrecedence | length == 0 %}[]{%- else %}{% for item in $.defaultPrecedence %}- &#39;{{ item }}&#39;{% endfor %}{% endif %}"
Schema
{
"type": "array",
"items": {
"type": "string"
}
}

AWS > RDS > DB Instance > Configured > Source

A HCL or JSON format Terraform configuration source used to configure this resource.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceConfiguredSource
Schema
{
"type": "string",
"default": "",
"x-schema-form": {
"type": "code",
"language": "hcl"
}
}

AWS > RDS > DB Instance > Copy Tags to Snapshot

Configure Copy Tags to Snapshot settings on an AWS > RDS > DB Instance.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceCopyTagsToSnapshot
Category
Valid Value
[
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Deletion Protection

Configure Deletion Protection settings on an AWS > RDS > DB Instance.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceDeletionProtection
Category
Valid Value
[
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Logs Export Configuration

Configure logs export to CloudWatch for an AWS > RDS > DB Instance as per the AWS > RDS > DB Instance > Logs Export Configuration > * policies.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceLogsExportConfiguration
Category
Valid Value
[
"Skip",
"Check: Disabled",
"Check: Enabled per Logs Export Configuration > Log Types",
"Enforce: Disabled",
"Enforce : Enabled per Logs Export Configuration > Log Types"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Disabled",
"Check: Enabled per Logs Export Configuration > Log Types",
"Enforce: Disabled",
"Enforce : Enabled per Logs Export Configuration > Log Types"
],
"example": [
"Check: Enabled Logs Export Configuration > Log Types"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Logs Export Configuration > Log Types

List of log types to be enabled for an AWS > RDS > DB Instance.

Supported log types for various DB engines:

<br /><br />MySQL:<br /> * Audit Log<br /> * Error Log<br /> * General Log<br /> * Slow Query Log<br /><br />MariaDB:<br /> * Audit Log<br /> * Error Log<br /> * General Log<br /> * Slow Query Log<br /><br />PostgreSQL:<br /> * PostgreSQL Log<br /> * Upgrade Log<br /><br />Oracle:<br /> * Alert Log<br /> * Audit Log<br /> * Listener Log<br /> * Oracle Management Agent Log<br /> * Trace Log<br /><br />Microsoft SQL Server:<br /> * Error Log<br /><br />

Note: Unsupported log types selected for a DB engine will be filtered out automatically and only the supported log types will be enabled.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceLogsExportConfigurationLogTypes
Category
Schema
{
"type": "array",
"items": {
"type": "string",
"enum": [
"Agent log",
"Alert log",
"Audit log",
"Error log",
"General log",
"Listener log",
"Oracle management agent log",
"PostgreSQL log",
"Slow query log",
"Trace log",
"Upgrade log"
]
},
"example": [
"Alert log",
"Error log",
"General log"
],
"default": []
}

AWS > RDS > DB Instance > Multi-AZ

Configure Multi-AZ deployment settings on an AWS > RDS > DB Instance.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceMultiAz
Category
Valid Value
[
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Parameter Group

Determine whether to check or enforce a specific Parameter Group for this DB Instance.

Use the Parameter Group > Name sub-policy to set which Parameter Group to configure for this instance.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceParameterGroup
Category
Valid Value
[
"Skip",
"Check: Set to Parameter Group > Name",
"Enforce: Set to Parameter Group > Name",
"Enforce: Set to Parameter Group > Name (Create if missing)"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Set to Parameter Group > Name",
"Enforce: Set to Parameter Group > Name",
"Enforce: Set to Parameter Group > Name (Create if missing)"
],
"example": [
"Check: Set to Parameter Group > Name"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Parameter Group > Name

The name of a DB Parameter Group for this DB Instance.

If the parent Parameter Group policy is set to Enforce: Set to Parameter Group > Name (Create if missing) a new parameter group with this name will be created if it does not already exist.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceParameterGroupName
Category
Default Template Input
"{\n item: dbInstance { DBInstanceIdentifier }\n}\n"
Default Template
"turbot-{{ $.item.DBInstanceIdentifier }}"
Schema
{
"type": "string",
"pattern": "^([a-z])[a-z0-9-.]{0,62}$"
}

AWS > RDS > DB Instance > Performance Insights

Configure performance insights settings for an AWS > RDS > DB Instance as per the AWS > RDS > DB Instance > Performance Insights > * policies.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstancePerformanceInsights
Category
Valid Value
[
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Enabled",
"Check: Disabled",
"Enforce: Enabled",
"Enforce: Disabled"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Performance Insights > KMS Key

The AWS KMS key to enable performance insights. This key cannot be changed after enabling performance insights.

Please make sure the key defined in the template has required permissions.

<br />example:<br /> alias/aws/rds<br /> ddc06e04-ce5f-4995-c758-c2b6c510e8fd<br /> arn:aws:kms:us-east-1:123456789012:key/ddc06e04-ce5f-4995-c758-c2b6c510e8fd<br /> arn:aws:kms:us-east-1:123456789012:alias/aws/rds<br />

URI
tmod:@turbot/aws-rds#/policy/types/dbInstancePerformanceInsightsKmsKey
Category
Schema
{
"anyOf": [
{
"type": "string",
"pattern": "^alias/[a-zA-Z0-9:/_-]{1,249}$"
},
{
"type": "string",
"pattern": "^[-a-z0-9-]{1,255}$"
},
{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:kms:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:key/[-a-z0-9-]{1,255}$"
},
{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:kms:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:alias/[a-zA-Z0-9:/_-]{1,249}$"
}
],
"tests": [
{
"description": "valid - if keyArn",
"input": "arn:aws:kms:us-east-1:039305405804:key/ddc06e04-ce5f-4995-b758-c2b6c510e8fd"
},
{
"description": "valid - if aliasName",
"input": "alias/aws/ebs"
},
{
"description": "valid - if keyId",
"input": "ddc06e04-ce5f-4995-b758-c2b6c510e8fd"
},
{
"description": "valid - if aliasArn",
"input": "arn:aws:kms:us-east-1:039305405804:alias/aws/ebs"
}
]
}

AWS > RDS > DB Instance > Performance Insights > Retention Period

The number of days for which the performance insights are retained. Performance insights are deleted by AWS at the end of a retention period.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstancePerformanceInsightsRetentionPeriod
Category
Valid Value
[
7,
731
]
Schema
{
"type": "integer",
"enum": [
7,
731
],
"default": 7
}

AWS > RDS > DB Instance > Publicly Accessible

Ensure the RDS instance is not publicly accessible.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstancePubliclyAccessible
Category
Valid Value
[
"Skip",
"Check: DB Instance is not publicly accessible",
"Enforce: DB Instance is not publicly accessible"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: DB Instance is not publicly accessible",
"Enforce: DB Instance is not publicly accessible"
],
"example": [
"Skip"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Regions

A list of AWS regions in which AWS RDS db instances are supported for use.

Any db instances in a region not listed here will not be recorded in CMDB.

The expected format is an array of regions names. You may use the '*' and
'?' wildcard characters.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceRegions
Default Template Input
"{\n regions: policyValue(uri:\"tmod:@turbot/aws-rds#/policy/types/rdsRegionsDefault\") {\n value\n }\n}\n"
Default Template
"{% if $.regions.value | length == 0 %} [] {% endif %}{% for item in $.regions.value %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"

AWS > RDS > DB Instance > Schedule

Set a schedule for starting and stopping an AWS RDS db instance.

Note If both "Schedule" and "Schedule Tag" are set to enforce and the
the tag will be in effect.

URI
tmod:@turbot/aws-rds#/policy/types/instanceSchedule
Valid Value
[
"Skip",
"Enforce: Business hours (8:00am - 6:00pm on weekdays)",
"Enforce: Extended business hours (7:00am - 11:00pm on weekdays)",
"Enforce: Stop for night (stop at 10:00pm every day)",
"Enforce: Stop for weekend (stop at 10:00pm on Friday)"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Business hours (8:00am - 6:00pm on weekdays)",
"Enforce: Extended business hours (7:00am - 11:00pm on weekdays)",
"Enforce: Stop for night (stop at 10:00pm every day)",
"Enforce: Stop for weekend (stop at 10:00pm on Friday)"
],
"example": [
"Enforce: Business hours (8:00am - 6:00pm on weekdays)"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Schedule Tag

Allow setting a schedule for starting and stopping an RDS db instance via the
turbot_custom_schedule tag. If the schedule is invalid, no actions will be
taken against the dbInstance.

Note If both "Schedule" and "Schedule Tag" are set to enforce and the
db instance has a turbot_custom_schedule, then the schedule specified by the
tag will be in effect.

URI
tmod:@turbot/aws-rds#/policy/types/instanceScheduleTag
Valid Value
[
"Skip",
"Enforce: Schedule per turbot_custom_schedule tag"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Schedule per turbot_custom_schedule tag"
],
"example": [
"Enforce: Schedule per turbot_custom_schedule tag"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Tags

Determine the action to take when an AWS RDS db instance tags are not updated based on the AWS > RDS > DB Instance > Tags > * policies.

The control ensure AWS RDS db instance tags include tags defined in AWS > RDS > DB Instance > Tags > Template.

Tags not defined in DB Instance Tags Template will not be modified or deleted. Setting a tag value to undefined will result in the tag being deleted.

See Tags for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceTags
Valid Value
[
"Skip",
"Check: Tags are correct",
"Enforce: Set tags"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Tags are correct",
"Enforce: Set tags"
],
"example": [
"Check: Tags are correct"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Tags > Template

The template is used to generate the keys and values for AWS RDS db instance.

Tags not defined in DB Instance Tags Template will not be modified or deleted. Setting a tag value to undefined will result in the tag being deleted.

See Tags for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceTagsTemplate
Default Template Input
[
"{\n account {\n turbot {\n id\n }\n }\n}\n",
"{\n defaultTags: policyValue(uri:\"tmod:@turbot/aws-rds#/policy/types/rdsTagsTemplate\" resourceId: \"{{ $.account.turbot.id }}\") {\n value\n }\n}\n"
]
Default Template
"{%- if $.defaultTags.value | length == 0 %} [] {%- elif $.defaultTags.value != undefined %}{{ $.defaultTags.value | dump | safe }}{%- else %}{% for item in $.defaultTags.value %}- {{ item }}{% endfor %}{% endif %}"

AWS > RDS > DB Instance > Usage

Configure the number of AWS RDS db instances that can be used for this region and the current consumption against the limit.

You can configure the behavior of the control with this AWS > RDS > DB Instance > Usage policy.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceUsage
Valid Value
[
"Skip",
"Check: Usage <= 85% of Limit",
"Check: Usage <= 100% of Limit"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Usage <= 85% of Limit",
"Check: Usage <= 100% of Limit"
],
"example": [
"Check: Usage <= 85% of Limit"
],
"default": "Skip"
}

AWS > RDS > DB Instance > Usage > Limit

Maximum number of items that can be created for this region.

URI
tmod:@turbot/aws-rds#/policy/types/dbInstanceUsageLimit
Schema
{
"type": "integer",
"minimum": 0,
"default": 40
}

AWS > RDS > DB Parameter Group > Active

Determine the action to take when an AWS RDS db parameter group, based on the AWS > RDS > DB Parameter Group > Active > * policies.

The control determines whether the resource is in active use, and if not,
has the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Parameter Group > Active > *), raises an alarm, and takes the defined enforcement
action. Each Active sub-policy can calculate a status of active, inactive
or skipped. Generally, if the resource appears to be Active for any reason
it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved for any reason it will be considered
Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbParameterGroupActive
Valid Value
[
"Skip",
"Check: Active",
"Enforce: Delete inactive with 1 day warning",
"Enforce: Delete inactive with 3 days warning",
"Enforce: Delete inactive with 7 days warning",
"Enforce: Delete inactive with 14 days warning",
"Enforce: Delete inactive with 30 days warning",
"Enforce: Delete inactive with 60 days warning",
"Enforce: Delete inactive with 90 days warning",
"Enforce: Delete inactive with 180 days warning",
"Enforce: Delete inactive with 365 days warning"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Active",
"Enforce: Delete inactive with 1 day warning",
"Enforce: Delete inactive with 3 days warning",
"Enforce: Delete inactive with 7 days warning",
"Enforce: Delete inactive with 14 days warning",
"Enforce: Delete inactive with 30 days warning",
"Enforce: Delete inactive with 60 days warning",
"Enforce: Delete inactive with 90 days warning",
"Enforce: Delete inactive with 180 days warning",
"Enforce: Delete inactive with 365 days warning"
],
"example": [
"Check: Active"
],
"default": "Skip"
}

AWS > RDS > DB Parameter Group > Active > Age

The age after which the AWS RDS db parameter group
is no longer considered active. If a create time is unavailable, the time Guardrails discovered the resource is used.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Parameter Group > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbParameterGroupActiveAge
Valid Value
[
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Force inactive if age > 1 day",
"Force inactive if age > 3 days",
"Force inactive if age > 7 days",
"Force inactive if age > 14 days",
"Force inactive if age > 30 days",
"Force inactive if age > 60 days",
"Force inactive if age > 90 days",
"Force inactive if age > 180 days",
"Force inactive if age > 365 days"
],
"example": [
"Force inactive if age > 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Parameter Group > Active > Last Modified

The number of days since the AWS RDS db parameter group
was last modified before it is considered inactive.

The Active
control determines whether the resource is in active use, and if not, has
the ability to delete / cleanup the resource. When running an automated
compliance environment, it's common to end up with a wide range of alarms
that are difficult and time consuming to clear. The Active control brings
automated, well-defined control to this process.

The Active control checks the status of all defined Active policies for the
resource (AWS > RDS > DB Parameter Group > Active > *),
raises an alarm, and takes the defined enforcement action. Each Active
sub-policy can calculate a status of active, inactive or skipped. Generally,
if the resource appears to be Active for any reason it will be considered Active.
Note the contrast with Approved, where if the resource appears to be Unapproved
for any reason it will be considered Unapproved.

See Active for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbParameterGroupActiveLastModified
Valid Value
[
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Active if last modified <= 1 day",
"Active if last modified <= 3 days",
"Active if last modified <= 7 days",
"Active if last modified <= 14 days",
"Active if last modified <= 30 days",
"Active if last modified <= 60 days",
"Active if last modified <= 90 days",
"Active if last modified <= 180 days",
"Active if last modified <= 365 days",
"Force active if last modified <= 1 day",
"Force active if last modified <= 3 days",
"Force active if last modified <= 7 days",
"Force active if last modified <= 14 days",
"Force active if last modified <= 30 days",
"Force active if last modified <= 60 days",
"Force active if last modified <= 90 days",
"Force active if last modified <= 180 days",
"Force active if last modified <= 365 days"
],
"example": [
"Active if last modified <= 90 days"
],
"default": "Skip"
}

AWS > RDS > DB Parameter Group > Approved

Determine the action to take when an AWS RDS db parameter group is not approved based on AWS > RDS > DB Parameter Group > Approved > * policies.

The Approved control checks the status of the defined Approved sub-policies for the resource. If the resource is not approved according to any of these policies, this control raises an alarm and takes the defined enforcement action.

For any enforcement actions that specify if new, e.g., Enforce: Delete unapproved if new, this control will only take the enforcement actions for resources created within the last 60 minutes.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbParameterGroupApproved
Valid Value
[
&qu