Skip to content

Commit c85d3b0

Browse files
authored
feat: Self managed active directory arguments (#541)
1 parent 40e5971 commit c85d3b0

File tree

43 files changed

+165
-53
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+165
-53
lines changed

README.md

+9-1
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ Users have the ability to:
210210
| Name | Version |
211211
|------|---------|
212212
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
213-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
213+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
214214

215215
## Providers
216216

@@ -266,7 +266,11 @@ No resources.
266266
| <a name="input_delete_automated_backups"></a> [delete\_automated\_backups](#input\_delete\_automated\_backups) | Specifies whether to remove automated backups immediately after the DB instance is deleted | `bool` | `true` | no |
267267
| <a name="input_deletion_protection"></a> [deletion\_protection](#input\_deletion\_protection) | The database can't be deleted when this value is set to true | `bool` | `false` | no |
268268
| <a name="input_domain"></a> [domain](#input\_domain) | The ID of the Directory Service Active Directory domain to create the instance in | `string` | `null` | no |
269+
| <a name="input_domain_auth_secret_arn"></a> [domain\_auth\_secret\_arn](#input\_domain\_auth\_secret\_arn) | (Optional, but required if domain\_fqdn is provided) The ARN for the Secrets Manager secret with the self managed Active Directory credentials for the user joining the domain. Conflicts with domain and domain\_iam\_role\_name. | `string` | `null` | no |
270+
| <a name="input_domain_dns_ips"></a> [domain\_dns\_ips](#input\_domain\_dns\_ips) | (Optional, but required if domain\_fqdn is provided) The IPv4 DNS IP addresses of your primary and secondary self managed Active Directory domain controllers. Two IP addresses must be provided. If there isn't a secondary domain controller, use the IP address of the primary domain controller for both entries in the list. Conflicts with domain and domain\_iam\_role\_name. | `list(string)` | `null` | no |
271+
| <a name="input_domain_fqdn"></a> [domain\_fqdn](#input\_domain\_fqdn) | The fully qualified domain name (FQDN) of the self managed Active Directory domain. Conflicts with domain and domain\_iam\_role\_name. | `string` | `null` | no |
269272
| <a name="input_domain_iam_role_name"></a> [domain\_iam\_role\_name](#input\_domain\_iam\_role\_name) | (Required if domain is provided) The name of the IAM role to be used when making API calls to the Directory Service | `string` | `null` | no |
273+
| <a name="input_domain_ou"></a> [domain\_ou](#input\_domain\_ou) | (Optional, but required if domain\_fqdn is provided) The self managed Active Directory organizational unit for your DB instance to join. Conflicts with domain and domain\_iam\_role\_name. | `string` | `null` | no |
270274
| <a name="input_enabled_cloudwatch_logs_exports"></a> [enabled\_cloudwatch\_logs\_exports](#input\_enabled\_cloudwatch\_logs\_exports) | List of log types to enable for exporting to CloudWatch logs. If omitted, no logs will be exported. Valid values (depending on engine): alert, audit, error, general, listener, slowquery, trace, postgresql (PostgreSQL), upgrade (PostgreSQL) | `list(string)` | `[]` | no |
271275
| <a name="input_engine"></a> [engine](#input\_engine) | The database engine to use | `string` | `null` | no |
272276
| <a name="input_engine_version"></a> [engine\_version](#input\_engine\_version) | The engine version to use | `string` | `null` | no |
@@ -340,7 +344,11 @@ No resources.
340344
| <a name="output_db_instance_ca_cert_identifier"></a> [db\_instance\_ca\_cert\_identifier](#output\_db\_instance\_ca\_cert\_identifier) | Specifies the identifier of the CA certificate for the DB instance |
341345
| <a name="output_db_instance_cloudwatch_log_groups"></a> [db\_instance\_cloudwatch\_log\_groups](#output\_db\_instance\_cloudwatch\_log\_groups) | Map of CloudWatch log groups created and their attributes |
342346
| <a name="output_db_instance_domain"></a> [db\_instance\_domain](#output\_db\_instance\_domain) | The ID of the Directory Service Active Directory domain the instance is joined to |
347+
| <a name="output_db_instance_domain_auth_secret_arn"></a> [db\_instance\_domain\_auth\_secret\_arn](#output\_db\_instance\_domain\_auth\_secret\_arn) | The ARN for the Secrets Manager secret with the self managed Active Directory credentials for the user joining the domain |
348+
| <a name="output_db_instance_domain_dns_ips"></a> [db\_instance\_domain\_dns\_ips](#output\_db\_instance\_domain\_dns\_ips) | The IPv4 DNS IP addresses of your primary and secondary self managed Active Directory domain controllers |
349+
| <a name="output_db_instance_domain_fqdn"></a> [db\_instance\_domain\_fqdn](#output\_db\_instance\_domain\_fqdn) | The fully qualified domain name (FQDN) of an self managed Active Directory domain |
343350
| <a name="output_db_instance_domain_iam_role_name"></a> [db\_instance\_domain\_iam\_role\_name](#output\_db\_instance\_domain\_iam\_role\_name) | The name of the IAM role to be used when making API calls to the Directory Service |
351+
| <a name="output_db_instance_domain_ou"></a> [db\_instance\_domain\_ou](#output\_db\_instance\_domain\_ou) | The self managed Active Directory organizational unit for your DB instance to join |
344352
| <a name="output_db_instance_endpoint"></a> [db\_instance\_endpoint](#output\_db\_instance\_endpoint) | The connection endpoint |
345353
| <a name="output_db_instance_engine"></a> [db\_instance\_engine](#output\_db\_instance\_engine) | The database engine |
346354
| <a name="output_db_instance_engine_version_actual"></a> [db\_instance\_engine\_version\_actual](#output\_db\_instance\_engine\_version\_actual) | The running version of the database |

examples/blue-green-deployment/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ Note that this example may create resources which cost money. Run `terraform des
2727
| Name | Version |
2828
|------|---------|
2929
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
30-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
30+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
3131

3232
## Providers
3333

3434
| Name | Version |
3535
|------|---------|
36-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
36+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3737

3838
## Modules
3939

examples/blue-green-deployment/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/complete-mssql/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des
2020
| Name | Version |
2121
|------|---------|
2222
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
23-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
23+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2424

2525
## Providers
2626

2727
| Name | Version |
2828
|------|---------|
29-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
29+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3030

3131
## Modules
3232

examples/complete-mssql/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/complete-mysql/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des
2020
| Name | Version |
2121
|------|---------|
2222
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
23-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
23+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2424

2525
## Providers
2626

2727
| Name | Version |
2828
|------|---------|
29-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
29+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3030

3131
## Modules
3232

examples/complete-mysql/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/complete-oracle/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des
2020
| Name | Version |
2121
|------|---------|
2222
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
23-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
23+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2424

2525
## Providers
2626

2727
| Name | Version |
2828
|------|---------|
29-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
29+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3030

3131
## Modules
3232

examples/complete-oracle/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/complete-postgres/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des
2020
| Name | Version |
2121
|------|---------|
2222
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
23-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
23+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2424

2525
## Providers
2626

2727
| Name | Version |
2828
|------|---------|
29-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
29+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3030

3131
## Modules
3232

examples/complete-postgres/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/cross-region-replica-postgres/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des
2020
| Name | Version |
2121
|------|---------|
2222
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
23-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
23+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2424

2525
## Providers
2626

2727
| Name | Version |
2828
|------|---------|
29-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
29+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3030

3131
## Modules
3232

examples/cross-region-replica-postgres/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/enhanced-monitoring/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ Note that this example may create resources which cost money. Run `terraform des
2222
| Name | Version |
2323
|------|---------|
2424
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
25-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
25+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2626

2727
## Providers
2828

2929
| Name | Version |
3030
|------|---------|
31-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
31+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3232

3333
## Modules
3434

examples/enhanced-monitoring/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/groups/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Note that this example may create resources which cost money. Run `terraform des
2020
| Name | Version |
2121
|------|---------|
2222
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
23-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
23+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2424

2525
## Providers
2626

examples/groups/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/replica-mysql/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des
2020
| Name | Version |
2121
|------|---------|
2222
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
23-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
23+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2424

2525
## Providers
2626

2727
| Name | Version |
2828
|------|---------|
29-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
29+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3030

3131
## Modules
3232

examples/replica-mysql/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/replica-postgres/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ Note that this example may create resources which cost money. Run `terraform des
2020
| Name | Version |
2121
|------|---------|
2222
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
23-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
23+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
2424

2525
## Providers
2626

2727
| Name | Version |
2828
|------|---------|
29-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
29+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
3030

3131
## Modules
3232

examples/replica-postgres/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/role-association-postgres/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ Further database configurations for creating extension and invoking from postgre
1010
| Name | Version |
1111
|------|---------|
1212
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
13-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
13+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
1414

1515
## Providers
1616

1717
| Name | Version |
1818
|------|---------|
19-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
19+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
2020

2121
## Modules
2222

examples/role-association-postgres/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

examples/s3-import-mysql/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,13 @@ Note that this example may create resources which cost money. Run `terraform des
4949
| Name | Version |
5050
|------|---------|
5151
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
52-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.33 |
52+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.36 |
5353

5454
## Providers
5555

5656
| Name | Version |
5757
|------|---------|
58-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.33 |
58+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.36 |
5959

6060
## Modules
6161

examples/s3-import-mysql/versions.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.33"
7+
version = ">= 5.36"
88
}
99
}
1010
}

main.tf

+4
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,11 @@ module "db_instance" {
7777
password = var.manage_master_user_password ? null : var.password
7878
port = var.port
7979
domain = var.domain
80+
domain_auth_secret_arn = var.domain_auth_secret_arn
81+
domain_dns_ips = var.domain_dns_ips
82+
domain_fqdn = var.domain_fqdn
8083
domain_iam_role_name = var.domain_iam_role_name
84+
domain_ou = var.domain_ou
8185
iam_database_authentication_enabled = var.iam_database_authentication_enabled
8286
custom_iam_instance_profile = var.custom_iam_instance_profile
8387
manage_master_user_password = var.manage_master_user_password

0 commit comments

Comments
 (0)