一组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 WebSphere ClassNotFoundException在启动后调用WebService时(但不在以后)   java无法通过jpa存储库删除记录   爪哇什么是阿克卡。派遣调度员$$anon$1?   java VLCj:如何设置运动模糊?   使用JavaFX时java If语句不起作用?   mysql java。lang.ExceptionInInitializerRor在Spring+Hibernate+jersey中   Java中的类组织   使用JDom的javaxpath   用于读取UTF8 cvs和excel文件的java字节顺序标记   未设置中的java Jboss配置文件java_OPTS=%java_OPTS%Xms128m Xmx512m XX:PermSize=1024m XX:MaxPermSize=2048m?   java增量变量在循环中,意外结果   PillPool/KellyPool与java数组   java为什么不调用我的ByteBuddy拦截器?   html创建java正则表达式以获取href链接   java服务器发送的事件不工作Spring Boot Webflux