为了账号安全,请及时绑定邮箱和手机立即绑定

Flask、Django的 secret key 设置有什么用?

Flask、Django的 secret key 设置有什么用?

SMILET 2018-10-13 22:17:26
我在flask、与Django的文档中都发现需要配置 secret_key。这种 secret_key 有什么用吗?如果暴露他会带啦哪些安全风险?
查看完整描述

2 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

有用的.

引用一段 Flask Web Development 中的内容:

SECRET_KEY 配置变量是通用密钥, 可在 Flask 和多个第三方扩展中使用. 如其名所示, 加密的强度取决于变量值的机密度. 不同的程序要使用不同的密钥, 而且要保证其他人不知道你所用的字符串.

SECRET_KEY 的作用主要是提供一个值做各种 HASH, 我没有实际研究过源码, 不同框架和第三方库的功能也不尽相同, 我不能给出准确的答案, 但是主要的作用应该是在其加密过程中作为算法的一个参数(salt 或其他). 所以这个值的复杂度也就影响到了数据传输和存储时的复杂度.

另外, 考虑到安全性, 这个密钥是不建议存储在你的程序中的. 最好的方法是存储在你的系统环境变量中, 通过 os.getenv(key, default=None) 获得.


查看完整回答
反对 回复 2018-10-21
  • 2 回答
  • 0 关注
  • 2701 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信