用于管理机密(密码、api密钥等)的python cli
python-secrets的Python项目详细描述
功能
- 使用 openstack/cliff 命令行框架实现健壮的 全功能cli。很容易添加新的命令和功能!
- 支持以模块化方式定义变量的"插入"模型 (类似于python update dotdee程序 根据需要批量设置或生成变量。
- 类似于python update dotdee,为 由Ansible等程序使用(例如 ansible playbook playbook.yml -e @"$(psec secrets path)" )
- 支持多个同时设置的机密(环境) 在多环境部署中的灵活性和可扩展性 支持不同的用例或不同的秘密组合。
- 列出变量组(以及每组有多少个秘密)。
- 通过变量名、类型(例如, 密码 , uuid4 )来描述秘密, random_base64 )和将使用的可选描述 在设置 字符串 变量时提示输入值。
- 允许手动输入值或自动生成机密 根据他们的类型。
- 根据simple的输出手动设置 字符串 变量 命令。这允许与外部程序接口 获取秘密,例如通过hashicorp获取vault
- 为变量生成唯一值,或使用单个值 在服务访问控制中简化机密使用的类型 同时支持"打破玻璃"的过程以快速再生 需要时的秘密。
- 显示变量及其未修改的值(或对其进行修改 在演示或文档中保密。
- 导出变量(可以选择使用特定的前缀字符串) 运行一个继承它们的命令(例如, 将变量传递到 terraform 以提供云 实例)。
- 以多种不同格式输出变量和值(CSV, json,yaml)用于shell脚本等,使用 cliff 功能。
- 使用gpg加密电子邮件按需将机密发送给其他用户 在传输和用户休息时保护机密 电子邮件收件箱。
- 便于存储临时文件(例如E输出自 Jinja模板渲染) 可能包含源repo目录外部的机密 在特定于环境的 tmp/ 目录中。
由于使用了python secrets 模块 在python 3.6中,只能使用python版本>;=3.6。