【发布时间】:2023-03-08 17:55:01
【问题描述】:
我想在使用 Django Rest Framework 和 Android 客户端的应用程序中实现基于令牌的身份验证。
as far as I understand 的工作方式是我需要将 client ID 和 client secret 与 access token 一起发送到 API 端点。
access tokenis gotten from the Django Rest Framework 是这样的:
Token.objects.create(user=instance)
我有几个问题想澄清一下,以便将所有这些结合在一起。
如何处理 Django Rest Framework 中的
client ID和client secret?如何在 Android 中存储
client ID和client secret?我不能简单地将它们存储为字符串。有人可以在 APK 中找到字符串文字。
【问题讨论】:
-
如果你坚持使用 oauth2 - 你最好的选择是在服务器端使用这个应用程序 - django-oauth-toolkit.readthedocs.io/en/latest/rest-framework/…
-
@mariodev。谢谢,但我不打算使用密码。我打算简单地使用服务器生成的唯一令牌:django-rest-framework.org/api-guide/authentication/… 但在您建议的库中,它似乎需要密码,用户名没有?
-
你不必 - 请阅读更多关于 oauth2 的工作原理(你可以简单地选择不同的授权类型,示例假定它是密码)
-
@mariodev,我读过这个explanantion,特别是这个diagram。因此,在我的情况下,我在 Android 客户端、REST 端点上有一个 AccountManager,并且没有密码,即 only token authentication,前两个步骤被删除(见图)?
-
你听说过 djangorestframework-jwt 吗?
标签: android django rest authentication django-rest-framework