Resources: {...}
TaskDefinition: {...}
Properties:
ContainerDefinitions:
- Name: !Ref ServiceName
Image: {...}
Environment:
-
Name: AWS_S3_SECRET_KEY
Value:
Fn::Join:
- ''
- - '{{resolve:secretsmanager:'
- Fn::ImportValue: !Ref S3CredentialsId
- ':SecretString:aws_s3_secret}}'
到目前为止,我已经用“肮脏”的方法实现了这种传播--通过向TaskDefinition添加一些不存在的环境变量,并将此更改应用到集群(我已经上传了服务的更新的CloudFormation模板)。只有在此操作之后,才创建了TaskDefinition的新修订,其中包含更新的secrets值,正如Fargate提到的TaskDefinition描述中的差异。
因此,我的问题是:如何实现将秘密更改自动传播到TaskDefinition中?
这并不能直接回答您的问题,因为据我所知,不可能通过CloudFormation强制传播秘密更改。
也就是说,您不应该使用Secrets Manager来管理用于访问S3的AWS凭据。相反,应该将IAM角色用于任务(https://docs.aws.amazon.com/amazonecs/latest/userguide/task-iam-roles.html)。这将一个IAM角色附加到任务定义中,如果您需要在S3 bucket上承担具有权限的不同角色,则可以使用该角色调用S3或甚至STS PassureLole。
如果需要访问其他机密,请查看以下教程:https://docs.aws.amazon.com/amazonecs/latest/userguide/specification-sensition-data-tutorial.html。通过遵循它,您应该能够在CloudFormation容器定义中指定秘密。下面是一个使用秘密容器定义指定秘密的示例。我还没有时间测试它是否有效,但根据AWS文档,它应该有效。
Resources: {...}
TaskDefinition: {...}
Properties:
ContainerDefinitions:
- Name: !Ref ServiceName
Image: {...}
Secrets:
-
Name: AWS_S3_SECRET_KEY
ValueFrom: arn:aws:secretsmanager:region:aws_account_id:secret:username_value-u9bH6K
是否有一种方法可以在不更改秘密标识符的情况下更改密钥库的秘密值?我在azure portal中尝试了new version按钮,但秘密标识符改变了。 谢了,亚当。
我有一个秘密存储在使用Terraform模块部署的AWS秘密管理器中,该模块支持秘密循环。我没有访问那个模块的源代码,所以我不能修改它。我想使用Terraform禁用秘密旋转。我应该使用哪种资源?需要如下所示的所有3个参数,并且没有任何参数来禁用循环。属性接受1到365之间的值,因此传递0也不是一个选项。
将来自Google secret Manager的秘密注入Kubernetes部署的最佳实践是什么?我已将Grafana实例的管理员密码存储到Google Secret Manager中。Grafana实例是使用Google Kubernetes引擎上的helm图表部署的。我确实尝试过使用kube secrets init,这是一个Kubernetes变异的网络钩子,它变异了任何引用秘密Googl
我想知道如何让它在Java中工作。 谢谢,德里克
问题内容: 当前,我使用Visual Studio数据库项目,因此我可以一键将更改部署到数据库并将数据保留在数据库中。 现在,我希望能够在Entity Framework中创建模型并一键部署。 所以我得到了sql脚本来从Entity Framework创建数据库。我可以运行此脚本来创建数据库,但是我想将数据保留在数据库中。 有什么办法吗?有什么工具可以做到这一点?我应该用T4自己生成吗? 我使用C
问题内容: 连接类别: 进行连接的方法,此方法附加了一个鼠标lostfocus事件,并从数据库中返回我想要的项目: 但是由于某种原因,在第二次尝试中,它将org.mysql更改为org.sqlite.JDBC java.sql.SQLException:无效的数据库地址: org.sqlite.JDBC.createConnection(JDBC.java:110)处的* jdbc:mysql:/