34 lines
No EOL
1 KiB
HCL
34 lines
No EOL
1 KiB
HCL
resource "random_integer" "suffix" {
|
|
min = 1000
|
|
max = 9999
|
|
|
|
# Opcional: O 'keepers' força a geração de um novo número
|
|
# apenas quando o nome do cluster mudar.
|
|
keepers = {
|
|
cluster_name = var.postgresql_name
|
|
}
|
|
}
|
|
|
|
# 1. Gera uma senha forte e aleatória (16 caracteres, com letras, números e símbolos)
|
|
resource "random_password" "psql_admin_password" {
|
|
length = 32
|
|
special = true
|
|
# Evita aspas ou caracteres que possam quebrar strings de conexão no futuro
|
|
override_special = "!#$%&*-_=+[]{}<>:?"
|
|
}
|
|
|
|
# 2. Cria a Secret dentro do Vault que você já tem
|
|
resource "oci_vault_secret" "psql_admin_secret" {
|
|
compartment_id = var.postgresql_compartment_id
|
|
|
|
vault_id = var.vault_id
|
|
key_id = var.master_key_id
|
|
|
|
secret_name = "admin-pwd-psql-${var.postgresql_name}-${random_integer.suffix.result}"
|
|
description = "Senha do admin do PostgreSQL gerenciado"
|
|
|
|
secret_content {
|
|
content_type = "BASE64"
|
|
content = base64encode(random_password.psql_admin_password.result)
|
|
}
|
|
} |