通过 Terraform 部署时如何避免 RDS 使用明文主密码以及如何检索密码以在服务器中使用它
How to avoid having plaintext master-passwords for RDS when deployed through terraform and How to retrieve password to use it in a server
我是堆栈溢出的新手。如果我没有正确格式化,请道歉。
我目前正在使用 terraform 来配置 aurora-rds。问题是,我不应该将 db master-password 作为明文放在 .tf 文件中。
我最初一直使用此配置和明文密码。
engine = "aurora-mysql"
engine_version = "5.7.12"
cluster_family = "aurora-mysql5.7"
cluster_size = "1"
namespace = "eg"
stage = "dev"
admin_user = "admin"
admin_password = "passwordhere"
db_name = "dbname"
db_port = "3306
我正在寻找一种解决方案,我可以在其中跳过如上所示的明文密码,并自动生成一些内容并能够将其包含到 terraform 文件中。此外,我必须能够检索密码,以便我可以使用它来配置 wordpress 服务器。
https://gist.github.com/smiller171/6be734957e30c5d4e4b15422634f13f4
我遇到了这个解决方案,但不确定如何检索密码以在服务器中使用它。好吧,我还没有部署它。
正如您在问题中提到的,有一个 workaround 您还没有尝试过。
我建议先尝试一下,如果成功,然后使用 output
terraform 资源找回密码。
output "db_password" {
value = ${random_string.db_master_pass.result}
description = "db password"
}
一旦你的 terraform 运行 完成,你可以使用 terraform output db_password
检索该值,或者如果你想在 terraform 代码本身的某个地方引用该密码,那么立即引用该变量 ${db_password}
我是堆栈溢出的新手。如果我没有正确格式化,请道歉。 我目前正在使用 terraform 来配置 aurora-rds。问题是,我不应该将 db master-password 作为明文放在 .tf 文件中。 我最初一直使用此配置和明文密码。
engine = "aurora-mysql"
engine_version = "5.7.12"
cluster_family = "aurora-mysql5.7"
cluster_size = "1"
namespace = "eg"
stage = "dev"
admin_user = "admin"
admin_password = "passwordhere"
db_name = "dbname"
db_port = "3306
我正在寻找一种解决方案,我可以在其中跳过如上所示的明文密码,并自动生成一些内容并能够将其包含到 terraform 文件中。此外,我必须能够检索密码,以便我可以使用它来配置 wordpress 服务器。
https://gist.github.com/smiller171/6be734957e30c5d4e4b15422634f13f4 我遇到了这个解决方案,但不确定如何检索密码以在服务器中使用它。好吧,我还没有部署它。
正如您在问题中提到的,有一个 workaround 您还没有尝试过。
我建议先尝试一下,如果成功,然后使用 output
terraform 资源找回密码。
output "db_password" {
value = ${random_string.db_master_pass.result}
description = "db password"
}
一旦你的 terraform 运行 完成,你可以使用 terraform output db_password
检索该值,或者如果你想在 terraform 代码本身的某个地方引用该密码,那么立即引用该变量 ${db_password}