【问题标题】:Passing sensitive information in custom JSON stack在自定义 JSON 堆栈中传递敏感信息
【发布时间】:2020-01-11 02:42:06
【问题描述】:

我在堆栈中使用 Opsworks 自定义 JSON 来定义环境变量。其中包括我不想以纯文本形式出现的敏感数据库详细信息。另外,如果堆栈被删除,所有变量集都会丢失。

有没有办法在 S3 存储桶中定义它?

我所拥有的示例:

{
  "database": [
      {
         "name": "db_name",
         "username": "user_name",
         "password": "password"
      }
]
}

如何使用 S3 存储桶而不是 opsworks 堆栈提供的自定义 JSON?

【问题讨论】:

  • 不像其他方法那样安全,但是您将文件存储在 s3 中并在需要的地方拉取文件

标签: amazon-web-services chef-infra aws-opsworks


【解决方案1】:

chef 有一个内置机制,用于使用 encrypted data bag item 以加密形式存储敏感信息

使用类似于以下的刀命令对数据包项进行加密:

$ knife data bag create passwords mysql --secret-file /tmp/my_data_bag_key

可以使用类似于以下的刀命令来验证加密:

$ knife data bag show passwords mysql

加密的数据包项使用类似于以下的刀命令解密:

$ knife data bag show --secret-file /tmp/my_data_bag_key passwords mysql

您也可以在类似于以下的配方中使用它:

data_bag_item('mysql', 'passwords')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-15
    • 2018-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-30
    相关资源
    最近更新 更多