【发布时间】:2014-08-14 16:04:56
【问题描述】:
我是 Web 开发世界、Django 以及需要保护 URL 免受用户更改 foo/bar/pk 以访问其他用户数据的应用程序的新手。
有没有办法防止这种情况发生?或者有没有内置的方法来防止这种情况在 Django 中发生?
例如:
foo/bar/22 可以更改为 foo/bar/14 并公开过去的用户数据。
我已经阅读了有关该主题的几个问题的答案,但我没有得到一个能够清晰连贯地解释这一点以及防止这种情况发生的方法的答案。我对此知之甚少,所以我不知道如何措辞这个问题来正确调查它。请像我 5 岁一样向我解释这一点。
【问题讨论】:
-
你确实说过'ELI5'!这里的关键词是“认证”。您需要确保用户经过身份验证才能访问相关资源 (URL)。您可以使用各种装饰器、视图函数、特殊中间件等执行此操作。下面的答案是具体示例。但是“身份验证”会在 django 文档中为您指明正确的总体方向。
标签: python django model-view-controller