Разрешения на использование команды COPY redshift из лямбды - PullRequest
0 голосов
/ 07 октября 2019

У меня есть лямбда, написанная в ядре .net. Он вызовет команду COPY из красного смещения. Моя лямбда-функция выполняется под ролью, которая имеет доступ к красному смещению и s3.

Моя COPY команда, которая выглядит следующим образом:

COPY my_table_name FROM 's3://my_bucket/my_file.csv' CREDENTIALS 'aws_access_key_id=x;aws_secret_access_key=y' DELIMITER ',' CSV;

Это прекрасно работает. Моя проблема в том, что CREDENTIALS, который я использую для COPY, полностью не зависит от роли, под которой работает lambda.

Есть ли способ выполнить команду COPY, используя роль, которуюЛямбда выполняется под?

1 Ответ

0 голосов
/ 07 октября 2019

Я определенно рекомендую использовать аутентификацию на основе ролей, а не на основе ключей, но я полагаю, что вам нужно будет назначить роль непосредственно вашему кластеру Redshift, а не пытаться передать роль, назначенную вашей функции Lambda. Команда COPY запускается из кластера Redshift, ваша лямбда-функция сообщает только Redshift о запуске команды, поэтому она не может реально использовать роль функции Lambda.

Пожалуйста, ознакомьтесь с подробной документацией по Redshift Аутентификация на основе ролей .

...