【问题标题】:Django, the user model, profiles, and securityDjango、用户模型、配置文件和安全性
【发布时间】:2017-01-21 21:40:39
【问题描述】:

我刚开始摆弄用户模型,我可能错了,但我只是有一个想法,我没有足够的知识来说服自己这确实是错误的。

我有一个用户模型,我通过一对一模型使用配置文件对其进行了扩展。 (我能找到的大多数资料都建议将此作为最佳做法)。

现在,我的应用上的普通用户可以访问个人资料数据的一部分,例如某人的用户名(用户模型的一部分)或国籍(个人资料模型的一部分)。

我在通过 objects.get 创建的视图中获取这些数据并将结果传递给模板。但这不是也传递(散列)密码吗?如果是这样,这不是不安全吗?

【问题讨论】:

    标签: django security profile


    【解决方案1】:

    没有。为什么将用户模型传递给模板是不安全的?最终用户无法控制模板,只有您的代码可以。如果您不在任何地方使用模板中的密码,则最终用户将无权访问它。

    在任何情况下,即使您确实使用了它,正如您指出的那样,仅存在散列密码;但是哈希本身是无用的。为了让用户登录,Django 需要一个原始密码,该密码散列到相同的值;但是哈希值不容易可逆,这就是使用它们的重点。

    【讨论】:

      猜你喜欢
      • 2020-06-01
      • 2011-03-26
      • 1970-01-01
      • 2014-12-17
      • 1970-01-01
      • 1970-01-01
      • 2016-06-03
      • 2011-10-09
      • 2017-11-07
      相关资源
      最近更新 更多