【问题标题】:web service requests authentication django token-apiWeb 服务请求身份验证 django token-api
【发布时间】:2014-06-21 21:56:20
【问题描述】:

我想在 django 中为 iOS 应用程序实现 Web 服务。 我需要某种身份验证,我在 Google 上搜索并听说了有关 django token-api 的好消息。

我唯一不明白的是,我如何确保一个经过身份验证的用户不能为另一个用户执行操作。

例如,如果我有一个需要 @token 的视图,它只承诺已发送有效令牌,但是有人可以更改请求本身中的 PK 并为其他用户进行更改。

如何确保拥有令牌的用户只能为自己执行操作?

【问题讨论】:

  • 您使用的是 Web 服务框架,例如 Tastypie 或 Django REST Framework 吗?这些使身份验证/授权变得轻而易举,并提供了许多您最终可能需要的功能。

标签: python django web-services access-token


【解决方案1】:

在非常广泛的层面上,您需要区分身份验证授权。您可以阅读 this page 作为示例,或者通过 google 搜索更多信息,但基本区别在于 authentication 确定用户是他所说的那个人,而 authorization确定特定用户能够看到或执行的操作。

如上所述,您可以使用django-token-api 来帮助解决身份验证问题。但是一旦您确定了这一点,您就需要转到授权。这更像是permissions 的问题,您可以在每个用户(或每个组)的基础上查看单个对象、视图等。

正如 Ambroise 在 cmets 中指出的那样,使用 API 框架可以使这更容易。 Heredjango-rest-framework 文档,用于在您对用户进行身份验证后设置权限。

【讨论】:

    猜你喜欢
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 2017-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-10
    • 2013-06-11
    相关资源
    最近更新 更多