Аутентификация БД с помощью AWS IAM (RDS/Aurora)
В этой статье показано, как клиенты ClickPipes могут использовать ролевой доступ для аутентификации в Amazon Aurora и RDS и безопасного доступа к своим базам данных.
Для AWS RDS Postgres и Aurora Postgres вы можете запускать только ClickPipes в режиме Initial Load Only из-за ограничений механизма AWS IAM DB Authentication.
Для MySQL и MariaDB это ограничение не применяется, и вы можете запускать как ClickPipes в режиме Initial Load Only, так и ClickPipes в режиме CDC.
Настройка
Получение ARN роли IAM сервиса ClickHouse
1 - Войдите в свою учётную запись ClickHouse Cloud.
2 - Выберите сервис ClickHouse, для которого вы хотите создать интеграцию.
3 - Перейдите на вкладку Settings.
4 - Пролистайте вниз до раздела Network security information в нижней части страницы.
5 - Скопируйте значение Service role ID (IAM), соответствующее сервису, как показано ниже.

Назовём это значение {ClickHouse_IAM_ARN}. Это роль IAM, которая будет использоваться для доступа к вашему экземпляру RDS/Aurora.
Настройка экземпляра RDS/Aurora
Включение IAM DB Authentication
- Войдите в свою учётную запись AWS и перейдите к экземпляру RDS, который вы хотите настроить.
- Нажмите кнопку Modify.
- Пролистайте вниз до раздела Database authentication.
- Включите опцию Password and IAM database authentication.
- Нажмите кнопку Continue.
- Проверьте изменения и включите опцию Apply immediately.
Получение идентификатора ресурса RDS/Aurora
- Войдите в свою учётную запись AWS и перейдите к экземпляру RDS или кластеру Aurora, который вы хотите настроить.
- Перейдите на вкладку Configuration.
- Обратите внимание на значение Resource ID. Для RDS оно должно выглядеть как
db-xxxxxxxxxxxxxx, а для кластера Aurora — какcluster-xxxxxxxxxxxxxx. Назовём это значение{RDS_RESOURCE_ID}. Это идентификатор ресурса, который будет использоваться в политике IAM для предоставления доступа к экземпляру RDS.
Настройка пользователя базы данных
PostgreSQL
- Подключитесь к вашему экземпляру RDS/Aurora и создайте нового пользователя базы данных с помощью следующей команды:
- Выполните остальные шаги из руководства по настройке источника PostgreSQL, чтобы настроить ваш экземпляр RDS для ClickPipes.
MySQL / MariaDB
- Подключитесь к вашему экземпляру RDS/Aurora и создайте нового пользователя базы данных с помощью следующей команды:
- Выполните остальные шаги из руководства по настройке источника MySQL, чтобы настроить ваш экземпляр RDS/Aurora для ClickPipes.
Настройка роли IAM
Ручное создание роли IAM.
1 - Войдите в свою учётную запись AWS в веб-браузере под пользователем IAM, который имеет права на создание и управление ролями IAM.
2 - Перейдите в консоль сервиса IAM.
3 - Создайте новую роль IAM со следующей политикой IAM и политикой доверия (Trust policy).
Trust policy (замените, пожалуйста, {ClickHouse_IAM_ARN} на ARN роли IAM, соответствующей вашему экземпляру ClickHouse):
Политика IAM (пожалуйста, замените {RDS_RESOURCE_ID} на идентификатор ресурса (Resource ID) вашего экземпляра RDS). Обязательно замените {RDS_REGION} на регион вашего экземпляра RDS/Aurora и {AWS_ACCOUNT} на идентификатор вашей учетной записи AWS:
4 - После создания скопируйте новый ARN роли IAM. Он понадобится для безопасного доступа к вашей базе данных AWS из ClickPipes. Назовём его {RDS_ACCESS_IAM_ROLE_ARN}.
Теперь вы можете использовать эту роль IAM для аутентификации при подключении к вашему экземпляру RDS/Aurora из ClickPipes.