Как избежать использования незашифрованных мастер-паролей для RDS при развертывании через terraform и Как получить пароль для использования его на сервере - PullRequest
0 голосов
/ 14 июня 2019

Я новичок в переполнении стека. Извинитесь, если я не отформатировал это правильно. В настоящее время я использую terraform для обеспечения северного сияния. Проблема в том, что я не должен иметь мастер-пароль БД в виде открытого текста в файле .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 Я сталкивался с этим решением, но не уверен, как восстановить пароль, чтобы использовать его на сервере. Ну, я тоже еще не развернул это.

1 Ответ

0 голосов
/ 15 июня 2019

Как вы упомянули в своем вопросе, существует обходной путь , который вы еще не пробовали.

Я советую сначала попробовать, и, если он пройдет успешно, восстановить парольиспользуйте output ресурс terraform.

output "db_password" {
  value = ${random_string.db_master_pass.result}
  description = "db password"
}

После завершения запуска terraform вы можете получить это значение, используя terraform output db_password или если вы хотите сослаться на этот пароль где-то в самом коде terraform, то сразу же обратитесь кэта переменная ${db_password}

...