Web服务请求身份验证django token-api

时间:2014-05-05 14:37:28

标签: python django web-services access-token

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

我唯一不理解的是,我如何确保一个经过身份验证的用户无法为另一个用户执行操作。

例如,如果我有一个具有@admand-required的视图,那只承诺已经发送了一个有效的令牌,但是有人可以只更改请求本身的PK并为另一个用户进行更改。

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

1 个答案:

答案 0 :(得分:0)

在很广泛的层面上,您需要区分身份验证授权。您可以阅读this page作为示例,或者将其谷歌搜索更多,但基本的区别是身份验证确定用户是他所说的人,而授权确定某个用户能够看到或做的事情。

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

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