在cdk中使用AWS SecretManager时仅按名称获取机密

时间:2020-05-14 23:03:29

标签: amazon-web-services aws-cdk aws-secrets-manager

我正在尝试从CDK上的aws-secretsmanager模块中获取预先存在的机密,并从文档here中获取建议

如果您需要使用预先存在的机密,建议的方法是 在AWS SecretsManager中手动设置密钥并使用 使用Secret.fromSecretArn或Secret.fromSecretAttributes方法 在您的CDK应用程序中可用

但是,这两种方法都要求使用arn来获取机密。我不确定对arns进行硬编码并将其检入git repo是否是个好主意。相反,有一种方法可以仅使用名称来获取机密,因为我们已经在cdk的配置文件中提供了帐户详细信息。

2 个答案:

答案 0 :(得分:0)

至少在当前版本(1.38.0)之前,这是不可能的。一种替代方法是将秘密arn保存在SSM参数存储中,并在代码中使用ssm密钥。

答案 1 :(得分:0)

将完整的ARN放入CFN不必担心。由于您是提前创建这些秘密的,因此将知道它们的名称,帐户和区域。但是,如果您愿意,仍可以将CFN伪参数用于分区,区域和帐户(AWS :: Partition,AWS :: Region,AWS :: AccountId或CDK等价物)。