Python应用的配置和密钥
项目描述
Configure-Tron
Configuretron允许为Python启用类型提示的配置文件和密钥。轻松将密钥添加到配置中,客户端可以对其进行加密,受信任的开发者和运行的服务可以对其进行解密。
功能
类型提示配置
简单、易读的YAML配置
配置在源控制中
密钥在源控制中安全存储
轻松切换环境
控制谁可以加密和解密
安装
$ python -m pip install configuretron
使用
config.yml
config:
api_url: https://apitopia.com/api/v1
api_timeout: 20
config.py
@dataclass
class Config:
api_url: str
api_timeout: int = 30
config = configuretron.from_yaml(Config, "config.yml")
添加密钥
添加加密只需几个控制台命令
$ python -m configuretron --yaml=config.yml setup_encryption
将生成的base64私钥复制到环境变量中(在本例中为PRIVATE_KEY)
加密配置中的变量(在本例中为api_token)
$ python -m configuretron --yaml=config.yml encrypt --key api_token
然后将密钥传递给配置
private_key = configuretron.env_base64_value('PRIVATE_KEY')
config = configuretron.from_yaml(Config, "config.yml", private_key=private_key)
环境覆盖
要按环境覆盖值,请按如下方式将它们添加到配置中
config:
api_url: http://localhost:8080/api/v1
api_timeout: 20
env:
prod:
config:
api_url: https://apitopia.com/api/v1
然后只需在初始化配置时传递env
config = configuretron.from_yaml(Config, "config.yml", env="prod")
待办功能
配置层次结构
类型验证
多层配置
历史
0.1.0 (2022-12-22)
首次在PyPI上发布。
项目详情
关闭
configuretron-0.3.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 183390aed14af72fe23516c9bf48a892cd0793c3edc64adefe2b9f04bdd96b04 |
|
MD5 | fa9a3efea0e2525058ee6280a47076b2 |
|
BLAKE2b-256 | e2f130549d5857b0a8655ab24522ce8f9aafc6f67c6a9d733df050019c1f22d8 |
关闭
configuretron-0.3.0-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 71a90714371b91c0b7f2d62d32ccfba9cf3a58f7fec6c42aedb86bc0f3b12de7 |
|
MD5 | b8507080e2296e97e033ef351675ee93 |
|
BLAKE2b-256 | 29cc5b451cf5f54e9e7ee3a91a2edd7f1539ed4af4f1aa4307ccdb8cf061d950 |