由BTHLabs开发的Keep It Secret
项目描述
由BTHLabs开发的Keep It Secret
Keep It Secret 是一个小型Python库,用于声明式管理应用程序的秘密。
安装
$ pip install keep_it_secret
用法
Keep It Secret 为开发人员提供了所需的API,以声明应用程序使用的秘密并以安全、统一的方式访问它们。
考虑以下示例
from secrets_manager import (
AbstractField, EnvField, LiteralField, Secrets, SecretsField,
)
from secrets_manager.ext.aws import AWSSecrets, AWSSecretsManagerField
class AppSecrets(Secrets):
secret_key: str = AbstractField.new()
db_password: str = EnvField.new('APP_DB_PASSWORD', required=True)
pbkdf2_iterations_count: int = EnvField(
'APP_PBKDF2_ITERATIONS_COUNT',
default=16384,
required=False,
as_type=int,
)
class DevelopmentSecrets(AppSecrets):
secret_key: str = LiteralField.new('thisisntsecure')
class ProductionSecrets(AppSecrets):
aws: AWSSecrets = SecretsField.new(AWSSecrets)
secret_key: str = AWSSecretsManagerField(
'app/production/secret_key', required=True,
)
db_password: str = AWSSecretsManagerField(
'app/production/db_password', required=True,
)
AppSecrets
类作为特定环境的基类。特定环境的类可以覆盖任何字段,添加新字段,并扩展基类以提供自定义行为。
DevelopmentSecrets
类使用环境变量和字面值来提供适合开发环境使用的秘密
>>> development_secrets = DevelopmentSecrets()
>>> development_secrets.secret_key
'thisisntsecure'
>>> development_secrets.db_password
'spam'
>>> development_secrets.pbkdf2_iterations_count
1024
ProductionSecrets
类使用环境变量和AWS Secrets Manager来提供适合生产环境使用的秘密
>>> production_secrets = ProductionSecrets()
>>> production_secrets.aws.access_key_id
'anawsaccesskey'
>>> production_secrets.secret_key
'asecuresecretkey'
>>> production_secrets.db_password
'asecuredbpassword'
>>> production_secrets.pbkdf2_iterations_count
16384
作者
Keep It Secret 由 Tomek Wójcik 开发。
许可
Keep It Secret 采用MIT许可。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分发
keep_it_secret-1.2.0.tar.gz (9.1 kB 查看散列值)
构建的发行版
keep_it_secret-1.2.0-py3-none-any.whl (11.7 kB 查看散列值)
关闭
keep_it_secret-1.2.0.tar.gz 的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 2585591d451674e30c08fcdbba95de2180904069da149bca628cc51261720839 |
|
MD5 | fb78a4151d53b51888f37eed258a6910 |
|
BLAKE2b-256 | 6d5fd7064411d8e925de9f642fbc00f34e03e4cfeb3ab366f1c696a36e4e241f |
关闭
keep_it_secret-1.2.0-py3-none-any.whl 的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | aae8f3d3c1db93223ad3afb5c35c2c7202068b082b8bf7d199ed5bc610e63449 |
|
MD5 | 2332fbb16b11a841825f635b7ffb60de |
|
BLAKE2b-256 | fb8a49e2df9e586a19122b5fc12ea097a0452da1ed7e0c24fc254ba726839f92 |