gpt4 book ai didi

amazon-web-services - AWS Secret Manager secret 检索到云前端模板 YAML

转载 作者:行者123 更新时间:2023-12-03 07:39:03 28 4
gpt4 key购买 nike

所以我正在尝试检索 secret 以用作全局变量,但到目前为止我没有成功......

Globals:
Function:
Tracing: Active
Timeout: 60
Environment:
Variables:
AES_KEY: !Ref AesKey
AesKey:
Type: String
Default: !Ref 'mysecretarn'

我不知道我做错了什么,我猜这是关于引用和字符串类型,但它给了我一个错误,每个默认成员必须是字符串

如果有帮助, secret 将以纯文本形式存储在 Secrets Manager 中

尝试了不同的方法,在引号(“”)内使用 !Sub 和 ${} 进行构建,等等,到目前为止我还没有找到解决方案

最佳答案

我觉得你提供的例子有点令人困惑......但是从云形成模板的AWS secret 管理器检索 secret ,你可以这样做

说明:

  1. MasterUsernameMasterUserPasswordResources: PostgresRDS将获取存储在 secret manager 中的值
  2. ${EnvType}将从 Parameters 获取值部分,这里的值将是 staging作为默认值。
  3. ${AWS::StackName}将是AWS伪参数。引用链接: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/pseudo-parameter-reference.html
Parameters:
EnvType:
Description: Environment type.
Default: staging
Type: String

Resources:
PostgresRDS:
Type: AWS::RDS::DBInstance
DependsOn: RDSDBSubnetGroup
DeletionPolicy: Delete
Properties:
DBInstanceIdentifier: !Join ['-', [!Ref EnvType, 'rds']]
DBName: !Join ['', [!Ref EnvType, 'Rds']]
Engine: 'postgres'
EngineVersion: 13.4
MasterUsername: !Sub '{{resolve:secretsmanager:${AWS::StackName}-${EnvType}-rs-rds:SecretString:username}}'
MasterUserPassword: !Sub '{{resolve:secretsmanager:${AWS::StackName}-${EnvType}-rs-rds:SecretString:password}}'
DBInstanceClass: db.t3.micro
AllocatedStorage: 20
StorageType: gp2
StorageEncrypted: true
BackupRetentionPeriod: 7
AvailabilityZone: !Select [ 0, !GetAZs '' ]
MultiAZ: false # true
Port: 5432
# DeletionProtection: true
PubliclyAccessible: true
DBParameterGroupName: !Ref Postgres13ParameterGroup
VPCSecurityGroups:
- !GetAtt RdsSecurityGroup.GroupId
DBSubnetGroupName: !Ref RDSDBSubnetGroup
Tags:
- Key: environment
Value: !Ref EnvType

以防万一您想使用 AWS CLI 创建 aws key

StackName=111
EnvType=staging
DB_username=admin
DB_password=xxx
# aws secretsmanager create-secret --name $StackName-$EnvType-rs-rds --description "Example for retrieval secret to CFN" --secret-string "{\"username\":\"$DB_username\",\"password\":\"$DB_password\"}"

关于amazon-web-services - AWS Secret Manager secret 检索到云前端模板 YAML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74729650/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com