Проблема при импорте секретного значения в aws-cdk

#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. Затем взгляните на ссылку и на то, как вы должны отправлять / использовать секреты в определениях задач