#python #amazon-web-services #amazon-cloudformation #aws-cdk #aws-fargate
#python #amazon-веб-сервисы #amazon-cloudformation #aws-cdk #aws-fargate
Вопрос:
В AWS-CDK,
В stack-A
я экспортировал секретное значение, используя приведенный ниже код
core.CfnOutput(
self,
"db-secret",
value=secret_arn,
export_name= "db-secret",
)
приведенный выше код успешно экспортирован secret arn
В stack-B
я хочу импортировать secret-arn
и хочу извлечь secret value
Я использую приведенный ниже код для достижения поставленной задачи
secret = sm.Secret.from_secret_attributes(self, "ImportedSecret",
secret_complete_arn=db_secret
)
когда я пытаюсь использовать это secret
в качестве переменной среды в fargate task_definition
, я сталкиваюсь с приведенной ниже ошибкой.
raise JSIIError(resp.error) from JavaScriptError(resp.stack)
jsii.errors.JSIIError: Expected a string, got {"$jsii.byref":"@aws-cdk/core.SecretValue@10330"}
Кто-нибудь может сказать мне, как импортировать значение секрета
Комментарии:
1. Как именно вы пытаетесь использовать его для определения задачи? Обратите внимание, что определение задачи может обрабатывать секреты напрямую, так что определение задачи не содержит открытого текстового секрета, а только ссылку, а затем ecs позаботится о разрешении этого секрета при запуске контейнера. Посмотрите на
secrets
раздел docs.aws.amazon.com/cdk/api/latest/docs/aws-ecs-readme.html .2. в принципе, у меня есть приложение spring boot, которое развертывается как
ECS-Fargate cluster
. приложению spring boot необходимо подключиться кRDS-DB
. По этой причине я хочу указать пароль RDS_DB в качестве переменной среды.3. Затем взгляните на ссылку и на то, как вы должны отправлять / использовать секреты в определениях задач