保险库异步
aiovault的Python项目详细描述
aiovault 1.1.1版本
小错误修复
aiovault 1.0.0版本
第一个主要版本。应该很稳定…所有的测试都通过了,所以不会太糟。
这个库主要是aiohttp周围的一个美化的包装器,它调用许多vault url。最后,我想添加一些助手方法,使使用带有微服务的vault更加容易,比如 进行一次联程,只需坐在那里更新代币/秘密等。
示例
使用保险库进行身份验证,然后编写并读取密码的简单示例
importaiovaultwithaiovault.VaultClient(token='6c84fb90-12c4-11e1-840d-7b25c5ee775a')asclient:is_authed=awaitclient.is_authenticated()print(is_authed)# Trueawaitclient.secrets.generic.create('some_secret',key1='value1',key2='value2')secret=awaitclient.secrets.generic.read('some_secret')print(secret['key1'])# value1print(secret['key2'])# value2
文档
https://pyaiovault.readthedocs.io/en/latest/
功能
- token、github、approle、ldap、radius和用户/密码身份验证后端
- 通用机密、领事馆、托普和过境后端
- 文件和系统日志审核后端
- 政策管理
- 后端重命名
- 初始化、密封和健康管理
待办事项(近期)
- 提高代码覆盖率
- 秘密后端:数据库、rabbitmq、cubbyhole
- 认证后端:Okta、AWS(希望)
TOdo(长期)
- 更多文档,更多示例
- 可能的实用程序功能类似于一个协同程序,用于不断更新令牌/机密
- 使用HCL库进行策略验证?
- 套接字审核后端
- TLS身份验证支持
- pki、ssh机密支持
测试
尽可能多的单元测试可以直接与vault/consun/ldap/radius交互,而无需模拟。目前我的推理是这样的,如果我们改变变量 在rest接口中引入了确定vault版本和不兼容项,它们会立即出现在大量失败的单元测试中。
学分
我使用cookiecutter包来设置初始项目。很好。
大部分的功劳都归功于美妙的aiohttp库,这个库基本上就是一个包装器。
许可证
- 自由软件:GNU通用公共许可v3
- 文档:https://aiovault.readthedocs.io。
历史记录
1.1.1(2017-11-16)
- 更新了自述文件
1.1.0(2017-11-16)
- 修复verify=false错误
1.0.0(2017-07-29)
- 首次稳定释放
0.2.0(2017-07-20)
- 切换为使用Python2.6的开发版本
- 自述文件中的固定链接目标
- 修复了自述代码示例中的输入错误
- 添加了Approve身份验证后端
- 添加传输机密后端
- 为在非开发模式下运行保险库创建了测试线束
- 添加密封/解封、初始化和运行状况方法
0.1.3(2017-07-17)
- 修复了在pypi上呈现自述文件的问题
0.1.2(2017-07-17)
- 主要是存储库维护。
- 更新了requirements_dev.txt和setup.py
- 修正了tox不传递环境变量的问题
- 仅限于库而非测试套件的覆盖范围
0.1.1(2017-07-17)
- pypi上的第一个版本。