niainalens.gcp_secret_manager
GCP 秘密管理器的 ANSIBLE 角色
从 GCP 秘密管理器获取秘密并将其放入指定文件中
要求
- 对你的 GCP 账户在正确项目上进行身份验证
- 在 GCP 秘密管理器中存储你的秘密
- 启用 API:
秘密管理器 (secretmanager.googleapis.com)
$ gcloud services list --available | grep Secret
secretmanager.googleapis.com
$ gcloud services enable secretmanager.googleapis.com
角色变量
# var "gcp_secrets" 必须定义为字典
gcp_secrets:
SECRET_NAME_1: # 给它一个任意名称,可以与 'name' 相同
name: SECRET_NAME_1 # 在 GCP 秘密管理器中的确切名称
file_path: "/路径/到/目标文件/SECRET_NAME"
file_owner: 用户 # 也许 root 是你的秘密管理用户
file_group: 用户 # 如果未指定,默认为 "file_owner"
file_mode: '0400' # 确保保持安全
SECRET_NAME_2:
name: SECRET_NAME_2
file_path: "/路径/到/目标文件/SECRET_NAME"
file_owner: 用户
file_mode: '0644'
SECRET_NAME_N:
name: SECRET_NAME_N
file_path: "/路径/到/目标文件/SECRET_NAME"
file_owner: 用户
file_mode: '0600'
依赖
无。
示例剧本
- hosts: web-servers
vars:
gcp_secrets:
database:
name: MYSQL_PASSWORD
file_path: "/srv/mysql_pwd"
file_owner: root
file_group: root
file_mode: '0400'
nexus:
name: NEXUS_PASSWORD
file_path: "/srv/nexus_pwd"
file_owner: root
file_mode: '0400'
roles:
- gcp_secret_manager
改进建议
- 管理秘密:添加、编辑、删除
- 编辑秘密属性(版本、复制、位置、标签、IAM)
许可证
Apache
作者信息
由 Niaina Lens 创建
2022年9月
安装
ansible-galaxy install niainalens.gcp_secret_manager
许可证
apache-2.0
下载
2.3k
拥有者
Lead DevOps Advocate | Cloud | SRE