[英]How to create an AWS secret of type other using cdk
我正在使用 python 和 cdk。 我有一個堆棧在一個帳戶中創建一個隨機名稱的 dynamo 數據庫表,並且在其他帳戶中運行多個堆棧需要獲取隨機生成的表名。 由於 SSM 參數的限制不允許跨賬戶訪問,我改用 secrets manager
這是我的代碼
secretsmanager.Secret(self, "cdk-generated-secret",
secret_name="cdk-generated-secret-name",
secret_string_value="{'db-name': str_table_name }"
)
這是我得到的錯誤
type of argument secret_string_value must be one of (aws_cdk.SecretValue, NoneType); got str instead
這是一個純文本字符串,不需要加密。 如何將這樣的鍵值字符串寫入secret,然后再讀取呢? 有沒有辦法在不使用隨機生成的后綴的情況下讀取秘密值?
Secrets manager API 一切都是加密的,它不像 SSM Param store 那樣支持未加密的數據。
關於跨賬戶共享機密的 AWS Support 文章: https://aws.amazon.com/premiumsupport/knowledge-center/secrets-manager-share-between-accounts/
仔細查看成本,因為秘密管理器可能不是您想要的。
使用SecretValue.unsafe_plain_text
設置 CDK Secret 的明文值。 table_name
屬性將在部署時解析為 DynamoDB 表的實際名稱。 可以使用secret_object_value
參數設置鍵值對:
secretsmanager.Secret(
self,
"PlaintextKeyValueTableNameSecret",
secret_object_value={
"db-name": SecretValue.unsafe_plain_text(table.table_name)
},
)
注意:Secrets Manager 是一種相對昂貴的共享非機密配置的方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.