AWS Secrets Manager — boto3 не может получить секретное значениеPython

Программы на Python
Anonymous
AWS Secrets Manager — boto3 не может получить секретное значение

Сообщение Anonymous »

Я не могу получить секретное значение SecretsManager для задачи Python celery

Я вызываю конечную точку в моем REST API, которая запускает представление, которое вызывает задачу, а затем возвращает подтверждение

Код: Выделить всё

def authenticate_view(authCode):
get_token.delay(authCode)
return HttpResponse('New Token created')
После этого я настроил клиент boto3 с помощью:

Код: Выделить всё

client_secrets = boto3.client('secretsmanager')
Затем я пытаюсь получить секретное значение с помощью следующего кода:

Код: Выделить всё

@shared_task(name="get_token")
def get_token():
try:
get_secret_value_response = client_secrets.get_secret_value(
SecretId=secret_name
)
database_secrets = json.loads(response['SecretString'])

print(database_secrets['password'])
except ClientError as e:
# For a list of exceptions thrown, see
# https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html
raise e
Выдает ошибку. Регион не указан

Я попробовал:

Код: Выделить всё

client_secrets = boto3.client('secretsmanager', region_name="us-east-1")
Это дает мне бесконечную загрузку, когда я достигаю конечной точки, которая запускает задачу get_token.

Я также выполнил пример кода AWS python3 для SecretsManager, который также дает мне бесконечную загрузку

Код: Выделить всё

def get_secret():

secret_name = "secret_name"
region_name = "us-east-1"

# Create a Secrets Manager client
session = boto3.session.Session()
client = session.client(
service_name='secretsmanager',
region_name=region_name
)

try:
get_secret_value_response = client.get_secret_value(
SecretId=secret_name
)
except ClientError as e:
# For a list of exceptions thrown, see
# https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html
raise e

# Decrypts secret using the associated KMS key.
secret = get_secret_value_response['SecretString']

# Your code goes here.
Я настроил свои данные aws с помощью aws configure
Пользователь IAM имеет следующие разрешения:

Код: Выделить всё

AdministratorAccess, SecretsManagerReadWrite
Что может произойти?

Вернуться в «Python»