Skip to content

Commit 0500e12

Browse files
authored
feat: Add support for permissions boundary on enhanced monitoring role (#482)
1 parent 0c22c3d commit 0500e12

File tree

3 files changed

+12
-4
lines changed

3 files changed

+12
-4
lines changed

modules/db_instance/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ No modules.
7575
| <a name="input_monitoring_role_arn"></a> [monitoring\_role\_arn](#input\_monitoring\_role\_arn) | The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. Must be specified if monitoring\_interval is non-zero. | `string` | `null` | no |
7676
| <a name="input_monitoring_role_description"></a> [monitoring\_role\_description](#input\_monitoring\_role\_description) | Description of the monitoring IAM role | `string` | `null` | no |
7777
| <a name="input_monitoring_role_name"></a> [monitoring\_role\_name](#input\_monitoring\_role\_name) | Name of the IAM role which will be created when create\_monitoring\_role is enabled. | `string` | `"rds-monitoring-role"` | no |
78+
| <a name="input_monitoring_role_permissions_boundary"></a> [monitoring\_role\_permissions\_boundary](#input\_monitoring\_role\_permissions\_boundary) | ARN of the policy that is used to set the permissions boundary for the monitoring IAM role | `string` | `null` | no |
7879
| <a name="input_monitoring_role_use_name_prefix"></a> [monitoring\_role\_use\_name\_prefix](#input\_monitoring\_role\_use\_name\_prefix) | Determines whether to use `monitoring_role_name` as is or create a unique identifier beginning with `monitoring_role_name` as the specified prefix | `bool` | `false` | no |
7980
| <a name="input_multi_az"></a> [multi\_az](#input\_multi\_az) | Specifies if the RDS instance is multi-AZ | `bool` | `false` | no |
8081
| <a name="input_network_type"></a> [network\_type](#input\_network\_type) | The type of network stack | `string` | `null` | no |

modules/db_instance/main.tf

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -177,10 +177,11 @@ data "aws_iam_policy_document" "enhanced_monitoring" {
177177
resource "aws_iam_role" "enhanced_monitoring" {
178178
count = var.create_monitoring_role ? 1 : 0
179179

180-
name = local.monitoring_role_name
181-
name_prefix = local.monitoring_role_name_prefix
182-
assume_role_policy = data.aws_iam_policy_document.enhanced_monitoring.json
183-
description = var.monitoring_role_description
180+
name = local.monitoring_role_name
181+
name_prefix = local.monitoring_role_name_prefix
182+
assume_role_policy = data.aws_iam_policy_document.enhanced_monitoring.json
183+
description = var.monitoring_role_description
184+
permissions_boundary = var.monitoring_role_permissions_boundary
184185

185186
tags = merge(
186187
{

modules/db_instance/variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,12 @@ variable "monitoring_role_description" {
224224
default = null
225225
}
226226

227+
variable "monitoring_role_permissions_boundary" {
228+
description = "ARN of the policy that is used to set the permissions boundary for the monitoring IAM role"
229+
type = string
230+
default = null
231+
}
232+
227233
variable "create_monitoring_role" {
228234
description = "Create IAM role with a defined name that permits RDS to send enhanced monitoring metrics to CloudWatch Logs."
229235
type = bool

0 commit comments

Comments
 (0)