Аутентификация БД через 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, так и 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).
Политика доверия (замените {ClickHouse_IAM_ARN} на ARN роли IAM, принадлежащей вашему экземпляру ClickHouse):
Политика IAM (замените {RDS_RESOURCE_ID} на идентификатор ресурса вашего экземпляра RDS). Убедитесь, что вы также заменили {RDS_REGION} на регион вашего экземпляра RDS/Aurora и {AWS_ACCOUNT} на идентификатор вашей учетной записи AWS:
4 - Скопируйте новый IAM Role Arn после создания. Он необходим для безопасного доступа к вашей базе данных AWS из ClickPipes. Давайте назовём его {RDS_ACCESS_IAM_ROLE_ARN}.
Теперь вы можете использовать эту роль IAM для аутентификации при подключении к вашему экземпляру RDS/Aurora из ClickPipes.