一组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第三方库


热门话题
javascript问题:通过URL用网站数据填充Textview   java TabLayout Android,如何用几个标签填充整个屏幕宽度,并用大量标签滚动?   Eclipse Java运行的文件不再存在于我的工作区中   安装两个Java版本时,使用Java的windows链接不起作用   java将多个图形添加到单个JPanel   java Kafka ConsumerFactory,带有两个Desiarizer   使用反射更改java类超类   当一致性测试失败时,java有没有办法让堆栈跟踪显示在控制台中   java映射到基元类型的HashMap的快速替代方案是什么?   java关闭一个jframe所有剩余的打开jframe都将关闭。   java为什么不推荐“使用getString()获取设备标识符”?   java值比较和值赋值之间有什么性能差异吗?   Java实体数组到JavaScript数组   java使用流将一个列表转换为另一个列表   在JTree中保存对象,但更改显示的名称(java swing)?   java“Hello world”Android应用程序,文件尽可能少,没有IDE,只有文本编辑器   java在方法之间传递值   java如何为项目数组创建ParseQuery?