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
[
"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 Parameter Group > Approved > Custom

Determine whether the AWS RDS db parameter group is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS db parameter group is not approved, it will be subject to the action specified in the AWS > RDS > DB 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/dbParameterGroupApprovedCustom
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 Parameter Group > Approved > Regions

A list of AWS regions in which AWS RDS db 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 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 Parameter Group > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbParameterGroupApprovedRegions
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 Parameter Group > Approved > Usage

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

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

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbParameterGroupApprovedUsage
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 Parameter Group > CMDB

Configure whether to record and synchronize details for the AWS RDS db 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 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/dbParameterGroupCmdb
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 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/dbParameterGroupConfigured
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 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/dbParameterGroupConfiguredPrecedence
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 Parameter Group > Configured > Source

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

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

AWS > RDS > DB Parameter Group > Regions

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

Any db 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/dbParameterGroupRegions
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 Parameter Group > Tags

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

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

Tags not defined in DB 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/dbParameterGroupTags
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 Parameter Group > Tags > Template

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

Tags not defined in DB 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/dbParameterGroupTagsTemplate
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 Parameter Group > Usage

Configure the number of AWS RDS db 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 Parameter Group > Usage policy.

URI
tmod:@turbot/aws-rds#/policy/types/dbParameterGroupUsage
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 Parameter Group > Usage > Limit

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

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

AWS > RDS > DB Snapshot [Manual] > Active

Determine the action to take when an AWS RDS db snapshot [manual], based on the AWS > RDS > DB 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 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/dbSnapshotManualActive
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 Snapshot [Manual] > Active > Age

The age after which the AWS RDS db 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 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/dbSnapshotManualActiveAge
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 Snapshot [Manual] > Active > Budget

The impact of the budget state on the active control. This policy allows you to force
dbSnapshotManuals 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 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/dbSnapshotManualActiveBudget
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 Snapshot [Manual] > Active > Last Modified

The number of days since the AWS RDS db 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 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/dbSnapshotManualActiveLastModified
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 Snapshot [Manual] > Approved

Determine the action to take when an AWS RDS db snapshot [manual] is not approved based on AWS > RDS > DB 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/dbSnapshotManualApproved
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 Snapshot [Manual] > Approved > Budget

The policy allows you to set db 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 snapshot [manual] is not matched by the approved list, it will be subject to the action specified in the AWS > RDS > DB Snapshot [Manual] > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbSnapshotManualApprovedBudget
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 Snapshot [Manual] > Approved > Custom

Determine whether the AWS RDS db snapshot [manual] is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS db snapshot [manual] is not approved, it will be subject to the action specified in the AWS > RDS > DB 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/dbSnapshotManualApprovedCustom
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 Snapshot [Manual] > Approved > Encryption at Rest

Define the Encryption at Rest settings required for AWS > RDS > DB Snapshot [Manual].

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 Snapshot [Manual] > Encryption at Rest > *),
raises an alarm, and takes the defined enforcement action

URI
tmod:@turbot/aws-rds#/policy/types/dbSnapshotManualEncryptionAtRest
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 Snapshot [Manual] > 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 Snapshot [Manual] > 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/dbSnapshotManualEncryptionAtRestCustomerManagedKey
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 Snapshot [Manual] > Approved > Regions

A list of AWS regions in which AWS RDS db 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 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 Snapshot [Manual] > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbSnapshotManualApprovedRegions
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 Snapshot [Manual] > Approved > Usage

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

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

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/dbSnapshotManualApprovedUsage
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 Snapshot [Manual] > CMDB

Configure whether to record and synchronize details for the AWS RDS db 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 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/dbSnapshotManualCmdb
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 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/dbSnapshotManualConfigured
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 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/dbSnapshotManualConfiguredPrecedence
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 Snapshot [Manual] > Configured > Source

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

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

AWS > RDS > DB Snapshot [Manual] > Regions

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

Any db 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/dbSnapshotManualRegions
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 Snapshot [Manual] > Tags

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

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

Tags not defined in DB 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/dbSnapshotManualTags
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 Snapshot [Manual] > Tags > Template

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

Tags not defined in DB 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/dbSnapshotManualTagsTemplate
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 Snapshot [Manual] > Trusted Access

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

AWS allows RDS DB 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/dbSnapshotManualTrustedAccess
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 Snapshot [Manual] > Trusted Access > Accounts

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

URI
tmod:@turbot/aws-rds#/policy/types/dbSnapshotManualTrustedAccessAccounts
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 Snapshot [Manual] > Usage

Configure the number of AWS RDS db 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 Snapshot [Manual] > Usage policy.

URI
tmod:@turbot/aws-rds#/policy/types/dbSnapshotManualUsage
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 Snapshot [Manual] > Usage > Limit

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

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

AWS > RDS > Enabled

Enabled RDS.

URI
tmod:@turbot/aws-rds#/policy/types/rdsEnabled
Parent
Valid Value
[
"Enabled",
"Enabled: Metadata Only",
"Disabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled",
"Enabled: Metadata Only",
"Disabled"
],
"example": [
"Enabled"
],
"default": "Disabled"
}

AWS > RDS > Global Cluster > Active

Determine the action to take when an AWS RDS global cluster, based on the AWS > RDS > Global 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 > Global 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/globalClusterActive
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 > Global Cluster > Active > Age

The age after which the AWS RDS global 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 > Global 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/globalClusterActiveAge
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 > Global Cluster > Active > Budget

The impact of the budget state on the active control. This policy allows you to force
globalClusters 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 > Global 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/globalClusterActiveBudget
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 > Global Cluster > Active > Last Modified

The number of days since the AWS RDS global 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 > Global 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/globalClusterActiveLastModified
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 > Global Cluster > Approved

Determine the action to take when an AWS RDS global cluster is not approved based on AWS > RDS > Global 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/globalClusterApproved
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 > Global Cluster > Approved > Budget

The policy allows you to set global 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 global cluster is not matched by the approved list, it will be subject to the action specified in the AWS > RDS > Global Cluster > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/globalClusterApprovedBudget
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 > Global Cluster > Approved > Custom

Determine whether the AWS RDS global cluster is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS global cluster is not approved, it will be subject to the action specified in the AWS > RDS > Global 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/globalClusterApprovedCustom
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 > Global Cluster > Approved > Usage

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

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

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/globalClusterApprovedUsage
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 > Global Cluster > CMDB

Configure whether to record and synchronize details for the AWS RDS global 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".

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

AWS > RDS > Option Group > Active

Determine the action to take when an AWS RDS option group, based on the AWS > RDS > Option 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 > Option 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/optionGroupActive
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 > Option Group > Active > Age

The age after which the AWS RDS option 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 > Option 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/optionGroupActiveAge
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 > Option Group > Active > Last Modified

The number of days since the AWS RDS option 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 > Option 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/optionGroupActiveLastModified
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 > Option Group > Approved

Determine the action to take when an AWS RDS option group is not approved based on AWS > RDS > Option 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/optionGroupApproved
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 > Option Group > Approved > Custom

Determine whether the AWS RDS option group is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS option group is not approved, it will be subject to the action specified in the AWS > RDS > Option 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/optionGroupApprovedCustom
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 > Option Group > Approved > Regions

A list of AWS regions in which AWS RDS option 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 option 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 > Option Group > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/optionGroupApprovedRegions
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 > Option Group > Approved > Usage

Determine whether the AWS RDS option group is allowed to exist.

This policy will be evaluated by the Approved control. If an AWS RDS option group is not approved, it will be subject to the action specified in the AWS > RDS > Option Group > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/optionGroupApprovedUsage
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 > Option Group > CMDB

Configure whether to record and synchronize details for the AWS RDS option 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 > Option 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/optionGroupCmdb
Category
Valid Value
[
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
],
"example": [
"Skip"
],
"default": "Enforce: Enabled"
}

AWS > RDS > Option 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/optionGroupConfigured
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 > Option 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/optionGroupConfiguredPrecedence
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 > Option Group > Configured > Source

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

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

AWS > RDS > Option Group > Regions

A list of AWS regions in which AWS RDS option groups are supported for use.

Any option 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/optionGroupRegions
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 > Option Group > Tags

Determine the action to take when an AWS RDS option group tags are not updated based on the AWS > RDS > Option Group > Tags > * policies.

The control ensure AWS RDS option group tags include tags defined in AWS > RDS > Option Group > Tags > Template.

Tags not defined in Option 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/optionGroupTags
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 > Option Group > Tags > Template

The template is used to generate the keys and values for AWS RDS option group.

Tags not defined in Option 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/optionGroupTagsTemplate
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 > Option Group > Usage

Configure the number of AWS RDS option 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 > Option Group > Usage policy.

URI
tmod:@turbot/aws-rds#/policy/types/optionGroupUsage
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 > Option Group > Usage > Limit

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

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

AWS > RDS > Permissions

Configure whether permissions policies are in effect for AWS RDS.
This setting does not affect account level permissions (AWS/Admin, AWS/Owner, etc).

Note: The behavior of this policy depends on the value of AWS > Permissions."

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

AWS > RDS > Permissions > Levels

Define the permissions levels that can be used to grant access to an AWS account.
Permissions levels defined will appear in the UI to assign access to Guardrails users.
This policy provides a default for Permissions > Levels in each service,
however you can explicitly override the setting for each service if desired

URI
tmod:@turbot/aws-rds#/policy/types/rdsPermissionsLevels
Default Template Input
[
"{\n item: account {\n turbot{\n id\n }\n }\n}\n",
"{\n availableLevels: policyValues(filter:\"policyTypeLevel:self resourceId:{{ $.item.turbot.id }} policyTypeId:'tmod:@turbot/aws-iam#/policy/types/permissionsLevelsDefault'\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"{% if $.availableLevels.items[0].value | length == 0 %} [] {% endif %}{% for item in $.availableLevels.items[0].value %}- {{ item }}&#92;n{% endfor %}"
Schema
{
"type": "array",
"items": {
"type": "string",
"enum": [
"Metadata",
"ReadOnly",
"Operator",
"Admin",
"Owner"
]
}
}

AWS > RDS > Permissions > Levels > Modifiers

A map of AWS API to Guardrails Permission Level used to customize Guardrails'
standard permissions. You can add, remove or redefine the mapping of AWS
API operations to Guardrails permissions levels here.

Note: Modifiers are cumulative - if you add a permission to the Metadata level,
it is also added to ReadOnly, Operator and Admin. Modifier policies set here apply ONLY to the AWS level

<br />example:<br /> - &quot;glacier:createvault&quot;: admin<br /> - &quot;glacier:ListVaults&quot;: metadata<br /> - &quot;s3:DeleteBucket&quot;: none<br />

URI
tmod:@turbot/aws-rds#/policy/types/rdsPermissionsLevelsModifiers

AWS > RDS > Permissions > Levels > Subnet Group Administration

Determines which Guardrails permissions level can manage Subnet Group Administration.

URI
tmod:@turbot/aws-rds#/policy/types/rdsPermissionsLevelsSubnetGroupAdministration
Valid Value
[
"None",
"Admin"
]
Schema
{
"type": "string",
"enum": [
"None",
"Admin"
],
"example": [
"None"
],
"default": "None"
}

AWS > RDS > Permissions > Lockdown

URI
tmod:@turbot/aws-rds#/policy/types/rdsPermissionsLockdown

AWS > RDS > Permissions > Lockdown > API Boundary

Configure whether the AWS RDS API is enabled for
all users and roles in guardrails-managed boundary policies.

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/rdsPermissionsLockdownApiBoundary
Valid Value
[
"Enabled if AWS > RDS > API Enabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled if AWS > RDS > API Enabled"
],
"example": [
"Enabled if AWS > RDS > API Enabled"
],
"default": "Enabled if AWS > RDS > API Enabled"
}

AWS > RDS > Permissions > Lockdown > Engine Types

Configure whether lockdown policies are enabled to prohibit modification of Engine Types.

URI
tmod:@turbot/aws-rds#/policy/types/rdsPermissionsLockdownEngineTypes
Default Template Input
[
"{\n item: account {\n Id\n }\n}\n",
"{\n engineTypes: policyValues(filter:\"policyTypeLevel:self resourceId:{{ $.item.Id }} policyTypeId:'tmod:@turbot/aws-rds/policy/types/dbInstanceApprovedDatabaseEngines'\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"{% if $.engineTypes.items[0].value | length == 0 %} [&#39;*&#39;] {% endif %}{% for item in $.engineTypes.items[0].value %}- &#39;{{ item }}&#39;&#92;n{% endfor %}"
Schema
{
"type": "array",
"example": [
[
"aurora",
"aurora-mysql",
"chimera"
]
]
}

AWS > RDS > Regions

A list of AWS regions in which AWS RDS resources are supported 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' Regions policies.

URI
tmod:@turbot/aws-rds#/policy/types/rdsRegionsDefault
Parent
Default Template Input
"{\n regions: policyValue(uri:\"tmod:@turbot/aws#/policy/types/regionsDefault\") {\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 > Stack

Configure a custom stack on AWS, per the custom Stack > Source.

A Guardrails Stack is a set of resources configured by Guardrails, as specified
via Terraform source. Stacks are responsible for the creation and deletion
of multiple resources. Once created, stack resources are responsible for
configuring themselves from the stack source via their Configured control.

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

AWS > RDS > Stack > Secret Variables

Terraform secret variables in Terraform HCL that will be used as
inputs to the stack as a .tfvars file.

A Guardrails Stack is a set of resources configured by Guardrails,
as specified via Terraform source. Stacks are responsible
for the creation and deletion of multiple resources. Once created,
stack resources are responsible for configuring themselves from
the stack source via their Configured control.

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

AWS > RDS > Stack > Source

The Terraform HCL source used to configure this stack.

A Guardrails Stack is a set of resources configured by Guardrails, as specified
via Terraform source. Stacks are responsible for the creation and deletion
of multiple resources. Once created, stack resources are responsible for
configuring themselves from the stack source via their Configured control.

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

AWS > RDS > Stack > Terraform Version

The Version of Terraform to use for this stack.
Specify an npm-style semver string to
determine which version of the Terraform container
Guardrails will use to run this stack.

A Guardrails Stack is a set of resources configured by Guardrails,
as specified via Terraform source. Stacks are responsible
for the creation and deletion of multiple resources. Once created,
stack resources are responsible for configuring themselves from
the stack source via their Configured control.

URI
tmod:@turbot/aws-rds#/policy/types/rdsStackTerraformVersion
Default Template Input
"{\n terraformVersion: policy(uri:\"tmod:@turbot/turbot#/policy/types/stackTerraformVersion\")\n}\n"
Default Template
"{% if $.terraformVersion %}&quot;{{$.terraformVersion}}&quot;{% else %}&quot;&quot;{% endif %}"
Schema
{
"type": "string"
}

AWS > RDS > Stack > Variables

Terraform variables in Terraform HCL that will be used as
inputs to the stack as a .tfvars file.

A Guardrails Stack is a set of resources configured by Guardrails,
as specified via Terraform source. Stacks are responsible
for the creation and deletion of multiple resources. Once created,
stack resources are responsible for configuring themselves from
the stack source via their Configured control.

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

AWS > RDS > Subnet Group > Active

Determine the action to take when an AWS RDS subnet group, based on the AWS > RDS > Subnet 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 > Subnet 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/subnetGroupActive
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 > Subnet Group > Active > Age

The age after which the AWS RDS subnet 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 > Subnet 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/subnetGroupActiveAge
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 > Subnet Group > Active > Last Modified

The number of days since the AWS RDS subnet 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 > Subnet 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/subnetGroupActiveLastModified
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 > Subnet Group > Approved

Determine the action to take when an AWS RDS subnet group is not approved based on AWS > RDS > Subnet 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/subnetGroupApproved
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 > Subnet Group > Approved > Custom

Determine whether the AWS RDS subnet group is allowed to exist.
This policy will be evaluated by the Approved control. If an AWS RDS subnet group is not approved, it will be subject to the action specified in the AWS > RDS > Subnet 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/subnetGroupApprovedCustom
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 > Subnet Group > Approved > Regions

A list of AWS regions in which AWS RDS subnet 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 subnet 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 > Subnet Group > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/subnetGroupApprovedRegions
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 > Subnet Group > Approved > Usage

Determine whether the AWS RDS subnet group is allowed to exist.

This policy will be evaluated by the Approved control. If an AWS RDS subnet group is not approved, it will be subject to the action specified in the AWS > RDS > Subnet Group > Approved policy.

See Approved for more information.

URI
tmod:@turbot/aws-rds#/policy/types/subnetGroupApprovedUsage
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 > Subnet Group > CMDB

Configure whether to record and synchronize details for the AWS RDS subnet 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 > Subnet 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/subnetGroupCmdb
Category
Valid Value
[
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Enforce: Enabled",
"Enforce: Disabled"
],
"example": [
"Skip"
],
"default": "Enforce: Enabled"
}

AWS > RDS > Subnet 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/subnetGroupConfigured
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 > Subnet 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/subnetGroupConfiguredPrecedence
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 > Subnet Group > Configured > Source

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

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

AWS > RDS > Subnet Group > Management

If enabled, users with the RDS/Admin role can manage DB subnet groups.

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

AWS > RDS > Subnet Group > Regions

A list of AWS regions in which AWS RDS subnet groups are supported for use.

Any subnet 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/subnetGroupRegions
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 > Subnet Group > Tags

Determine the action to take when an AWS RDS subnet group tags are not updated based on the AWS > RDS > Subnet Group > Tags > * policies.

The control ensure AWS RDS subnet group tags include tags defined in AWS > RDS > Subnet Group > Tags > Template.

Tags not defined in Subnet 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/subnetGroupTags
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 > Subnet Group > Tags > Template

The template is used to generate the keys and values for AWS RDS subnet group.

Tags not defined in Subnet 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/subnetGroupTagsTemplate
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 > Subnet Group > Usage

Configure the number of AWS RDS subnet 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 > Subnet Group > Usage policy.

URI
tmod:@turbot/aws-rds#/policy/types/subnetGroupUsage
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 > Subnet Group > Usage > Limit

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

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

AWS > RDS > Tags Template [Default]

A template used to generate the keys and values for AWS RDS resources.

By default, all RDS resource Tags > Template policies will use this value.

URI
tmod:@turbot/aws-rds#/policy/types/rdsTagsTemplate
Parent
Default Template Input
"{\n defaultTags: policyValue(uri:\"tmod:@turbot/aws#/policy/types/defaultTagsTemplate\") {\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 > Trusted Accounts [Default]

List of AWS Accounts that are trusted for access in the AWS RDS policy.

This policy is used by the Trusted Access
control to determine which members of type "account" are allowed
to be granted access. You may use the '*' and '?' wildcard characters.

<br />example:<br /> - &quot;013122550996&quot;<br /> - &quot;560741234067&quot;<br />

Note: Setting the policy to Empty array will remove all accounts.

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

AWS > Turbot > Event Handlers > Events > Rules > Custom Event Patterns > RDS

The CloudWatch Events event pattern used by the AWS RDS module to specify
which events to forward to the Guardrails Event Handlers.

URI
tmod:@turbot/aws-rds#/policy/types/rdsCustomEventPatterns
Schema
{
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "object",
"properties": {
"title": {
"type": "string"
}
}
},
"value": {
"type": "object",
"properties": {
"source": {
"type": "array",
"items": {
"type": "string"
}
},
"detail-type": {
"type": "array",
"items": {
"type": "string"
}
},
"detail": {
"type": "object",
"property": {
"eventName": {
"type": "array"
}
},
"required": [
"eventName"
]
}
},
"required": [
"source"
]
}
},
"required": [
"type"
]
},
"default": [
{
"type": {
"title": "RDS",
"name": "rds"
},
"value": {
"source": [
"aws.rds"
],
"detail-type": [
"AWS API Call via CloudTrail"
],
"detail": {
"eventName": [
"AddTagsToResource",
"CopyDBClusterSnapshot",
"CopyDBParameterGroup",
"CopyDBSnapshot",
"CopyOptionGroup",
"CreateDBCluster",
"CreateDBClusterParameterGroup",
"CreateDBClusterSnapshot",
"CreateDBInstance",
"CreateDBParameterGroup",
"CreateDBSecurityGroup",
"CreateDBSnapshot",
"CreateDBSubnetGroup",
"CreateGlobalCluster",
"CreateOptionGroup",
"DeleteDBCluster",
"DeleteDBClusterParameterGroup",
"DeleteDBClusterSnapshot",
"DeleteDBInstance",
"DeleteDBParameterGroup",
"DeleteDBSnapshot",
"DeleteDBSubnetGroup",
"DeleteGlobalCluster",
"DeleteOptionGroup",
"FailoverDBCluster",
"ModifyDBCluster",
"ModifyDBClusterParameterGroup",
"ModifyDBClusterSnapshotAttribute",
"ModifyDBInstance",
"ModifyDBParameterGroup",
"ModifyDBSnapshot",
"ModifyDBSnapshotAttribute",
"ModifyDBSubnetGroup",
"ModifyGlobalCluster",
"ModifyOptionGroup",
"RebootDBInstance",
"RemoveFromGlobalCluster",
"RemoveTagsFromResource",
"ResetDBClusterParameterGroup",
"ResetDBParameterGroup",
"RestoreDBClusterFromS3",
"RestoreDBClusterFromSnapshot",
"RestoreDBClusterToPointInTime",
"RestoreDBInstanceFromDBSnapshot",
"RestoreDBInstanceFromS3",
"RestoreDBInstanceToPointInTime",
"RevokeDBSecurityGroupIngress",
"StartDBCluster",
"StartDBInstance",
"StopDBCluster",
"StopDBInstance"
]
}
}
}
]
}

AWS > Turbot > Permissions > Compiled > API Boundary > @turbot/aws-rds

A read-only policy generated by Guardrails that lists the APIs that
should be added to the guardrails-managed (hard) boundary policy,
thereby enabling them to be assigned to users and roles.
This value will change depending on the value of the value of the
AWS > RDS > Permissions > Lockdown > API Boundary policy

URI
tmod:@turbot/aws-rds#/policy/types/awsCompiledApiBoundary
Schema
{
"type": "array"
}

AWS > Turbot > Permissions > Compiled > Levels > @turbot/aws-rds

A calculated policy that Guardrails uses to create a compiled list of
ALL permissions for AWS RDS that is used as input to the stack
that manages the Guardrails IAM permissions objects.

URI
tmod:@turbot/aws-rds#/policy/types/awsLevelsCompiled

AWS > Turbot > Permissions > Compiled > Lockdown Statements > @turbot/aws-rds

A calculated policy that Guardrails uses to create a compiled list of
ALL lockdown policy statements for AWS RDS that is used as input
to the stack that manages the Guardrails IAM permissions objects.

URI
tmod:@turbot/aws-rds#/policy/types/awsCompiledLockdownStatements
Schema
{
"type": "array"
}

AWS > Turbot > Permissions > Compiled > Service Permissions > @turbot/aws-rds

A calculated policy that Guardrails uses to create a compiled
list of ALL permissions for AWS RDS that is used as input
to the control that manages the IAM stack.

URI
tmod:@turbot/aws-rds#/policy/types/awsCompiledServicePermissions