一组django字段,内部使用cryptography.io本机python加密库加密。

django-cryptographic-fields的Python项目详细描述


django加密字段image::https://circleci.com/gh/foundertherapy/django cryptographic fields.png
:target:https://circleci.com/gh/foundertherapy/django cryptographic fields

about
----

``django cryptographic fields``是一组用python密码库提供的加密将标准django
字段包装起来的字段。这些
字段与12因子设计的兼容性更高,因为它们从设置文件中获取
加密密钥,而不是从
``keychar``使用的磁盘文件。

您要么将密钥文件签入git存储库进行部署,或者执行手动
部署后处理,将存储在环境变量
中的密钥写入keyczar可以读取的文件中。


入门
----


$pip install django cryptographic fields

将“cryptographic\u fields”添加到已安装的应用程序设置中,如下所示:

=(

“加密字段”,


“django加密字段”要求在项目的“settings.py”文件中使用“字段加密密钥”指定加密密钥。对于
示例,要从本地环境加载它,请执行以下操作:


import os


field_encryption_key=os.environ.get('field_encryption_key','')

使用
``cryptographic\u fields``模块中的一个字段:


from cryptographic\u fields import encrypted char field


class encrypted field model(models.model):
encryptedcharu field=encryptedcharfield(max\u length=100)

这些字段的``encrypted`
变体将自动增加数据库的大小
字段以保存内容的加密形式。例如,当指定“encrypted charfield(max_length=3)”时,3个字符
charfield将自动指定100个字符的数据库字段大小
。由于加密数据的性质,按
加密字段中包含的值筛选将无法正常工作。也不支持排序。

使用此命令生成一个新的
加密密钥,将其设置为“settings.field_encryption_key`”。

./manage.py generate_encryption_key


运行此命令将向终端打印一个加密密钥,该密钥可以在您的环境或设置文件中配置。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java GridLayout超出了它的大小   java为什么SSHJ的最大写入大小是32KB?   部署后,java无法查看网站。war文件到tomcat   java如何使用gradle将javafx应用程序部署为可执行jar或exe?   java比较HashMap中的键和值   使用注入java和spring boot的RestTemplate类进行单元测试   java如何在eclipse中找到maven项目的原型?   java继承和实用程序方法及变量   java在Joptionpane中显示多行?   当location==null时,java会更改按钮的可见性   java为什么Google Drive getExportLinks返回空值?   java在使用自定义消息完成for循环后引发异常   curl如何使用docker运行undertow java应用程序