AWS клей - Python Работа в Shell Работа с секретным менеджером Проблемы с подключением - PullRequest
0 голосов
/ 09 апреля 2020

Я использую Python Shell Jobs под AWS Glue, в котором есть boto3 и несколько других встроенных библиотек. Я сталкиваюсь с проблемами, пытаясь получить доступ к диспетчеру секретов, чтобы получить учетные данные для моего экземпляра RDS, работающего Mysql, задание работает вечно без каких-либо сообщений (ошибка / успех), а также не по истечении времени ожидания.

Ниже приведен простой код, который запускается даже из моего локального или лямбда-кода для Python3 .7, но не в Python Shell GLUE,

import boto3
import base64
from botocore.exceptions import ClientError

secret_name = "secret_name"
region_name = "eu-west-1"

session = boto3.session.Session()

client = session.client(
    service_name='secretsmanager',
    region_name=region_name
)

get_secret_value_response = client.get_secret_value(SecretId=secret_name)
print(get_secret_value_response)

Было бы очень полезно, если кто-то может указать, нужно ли что-либо делать дополнительно в Python заданиях оболочки под AWS Glue для доступа к учетным данным секретного менеджера.

Ответы [ 2 ]

0 голосов
/ 15 апреля 2020

Когда вы создаете задание без какой-либо конфигурации VP C, то клей пытается связаться с секретным менеджером через inte rnet, если политика позволяет иметь маршрут inte rnet, тогда мы можем подключиться к секретному менеджеру

Но когда склеенное задание создается с конфигурацией / подключением VP C, тогда весь запрос делается из вашего VPC / su bnet, на который указывает соединение, если это так, убедитесь, что у вас есть секрет конечная точка менеджера присутствует в вашей таблице маршрутов su bnet, где клей запускает ресурсы.

https://docs.aws.amazon.com/glue/latest/dg/setup-vpc-for-glue-access.html

https://docs.aws.amazon.com/secretsmanager/latest/userguide/vpc-endpoint-overview.html

0 голосов
/ 13 апреля 2020

Убедитесь, что роль IAM, используемая заданием на клей, имеет политику SecretsManagerReadWrite

Также AWSGlueServiceRole и AmazonS3FullAccess Согласно документации

...