Я знаю, что с Amazon Aurora MySQL мы можем аутентифицироваться в инстансе БД или в кластере БД, используя аутентификацию базы данных AWS IAM. Я выполнил инструкции здесь, и он работает как указано. Однако для этого решения по-прежнему требуются учетные данные AWS для хранения в экземпляре EC2. Я думал, что вся цель этого состоит в том, чтобы использовать роли IAM для управления временными учетными данными для приложений, работающих в экземпляре EC2, чтобы нам не приходилось распространять долгосрочные учетные данные (такие как имя пользователя и пароль или ключи доступа) для экземпляр EC2. Есть ли способ подключиться к Amazon Aurora MySQL с ролью IAM, для которой не требуются учетные данные AWS для непосредственного хранения в инстансе EC2?
Вот несколько скриншотов:
Можно подключиться к экземпляру БД:
Прокомментируйте учетные данные aws:
Теперь невозможно подключиться к экземпляру БД:
Вот политики, прикрепленные к роли EC2:
И вот политика AmazonAuroraDBConnectAccess:
Имя пользователя создается:
create user usuarioiam IDENTIFIED WITH AWSAuthenticationPlugin as 'RDS';
Также запустил aws sts get-caller-identity
. Используется ожидаемая роль IAM EC2:
--password="$TOKEN"
для оболочки, чтобы правильно обрабатывать ваш токен. При ссылке на переменную обычно рекомендуется заключать ее имя в двойное цитаты. - person Michael - sqlbot   schedule 22.07.2018aws sts get-caller-identity
, чтобы убедиться, что aws-cli действительно использует учетные данные, которые вы ожидаете использовать. - person Michael - sqlbot   schedule 22.07.2018...:dbuser:cluster-CO4FHMOYDKJ7CVBEJS2UWDQX7I/jane_doe
, но если у вас только один экземпляр,db-xxxx
в порядке. Я полагаю, вы использовали точно такую же политику для пользователя IAM? Как давно вы настроили эту ролевую политику и прикрепили ее к роли? - person Michael - sqlbot   schedule 23.07.2018...:dbuser:cluster-CO4FHMOYDKJ7CVBEJS2UWDQX7I/jane_doe
, и это было исправлено. Большое спасибо. Вы сделали мой день. - person Malgi   schedule 23.07.2018