我在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)
获得.
- 2 回答
- 0 关注
- 2701 浏览
添加回答
举报
0/150
提交
取消