Выбор БД RDS для вновь созданных секретов в AWS CLI - PullRequest
0 голосов
/ 04 августа 2020

Пока я пытаюсь создать новые секреты для RDS с помощью AWS CLI, я не смог найти способ связать свои секреты с БД RDS при самом создании. Я прошел через AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/create-secret.html) и не смог найти способ для его ассоциации.

Нужно ли мне делать этот шаг вручную, войдя в консоль, или это можно каким-то образом автоматизировать? Может ли кто-нибудь помочь.

Спасибо.

1 Ответ

1 голос
/ 04 августа 2020

Связь основана только на форме секретной строки . Для RDS формы перечислены здесь .

Например, для mysql форма secret-string выглядит следующим образом:

{
  "engine": "mysql",
  "host": "<required: instance host name/resolvable DNS name>",
  "username": "<required: username>",
  "password": "<required: password>",
  "dbname": "<optional: database name. If not specified, defaults to None>",
  "port": "<optional: TCP port number. If not specified, defaults to 3306>"
}

Таким образом, чтобы создать секрет для mysql с помощью CLI:

  1. Создайте файл с именем mydb.json (пример):
{
  "username": "admin",
  "password": "asdf435325gfdg",
  "engine": "mysql",
  "host": "database-2.cba4sasaubqv.us-east-1.rds.amazonaws.com",
  "port": 3306,
  "dbInstanceIdentifier": "database-2"
}
Выполнить:
aws secretsmanager create-secret --name mysql-info  --secret-string file://mydb.json

Более запутанная часть интерфейса командной строки начинается, когда вы хотите включить автоматическое c ротацию секретов. Я просто оставлю ссылку для этого (в нем также есть информация CLI), если вас это тоже интересует:

...