【发布时间】:2022-09-22 21:50:50
【问题描述】:
我在 AWS 中生成了一个包含两个键/值对的密钥。我现在想在 CDK 中设置我的 Fargate 任务,并将这两个秘密作为环境变量。我已经阅读了文档并正在关注这两个文档:
Using Secrets Manager to secure sensitive data 和 Get a value from AWS Secrets Manager
我正在设置这样的秘密:
TaskImageOptions = new ApplicationLoadBalancedTaskImageOptions
{
ContainerName = \"Container name\",
Image = (...),
Secrets = new Dictionary<string, Amazon.CDK.AWS.ECS.Secret>
{
{\"ENV_KEY_1\", Amazon.CDK.AWS.ECS.Secret.FromSecretsManagerVersion(Secret.FromSecretCompleteArn(this, \"secret-name-1\", \"full-arn-1\"))},
{\"ENV_KEY_2\", Amazon.CDK.AWS.ECS.Secret.FromSecretsManagerVersion(Secret.FromSecretCompleteArn(this, \"secret-name-2\", \"full-arn-2\"))}
}
}
根据文档(第二个链接),要在秘密上设置特定密钥,我应该使用如下内容:
{
\"containerDefinitions\": [{
\"secrets\": [{
\"name\": \"environment_variable_name\",
\"valueFrom\": \"arn:aws:secretsmanager:region:aws_account_id:secret:appauthexample-AbCdEf:username1::\"
}]
}]
}
但是,那Secret.FromSecretCompleteArn不支持这个。它只需要最多 6 个随机字符的完整 arn,如果我添加密钥(或版本),它会失败。
我发现无法设置此密钥。我试过了:Secret.FromNameV2,Secret.FromSecretPartialArn和Secret.FromAttributes.
标签: .net amazon-web-services aws-cdk