Django oauth2 工具包提供者,授予第三个应用程序访问权限

Django oauth2 toolkit provider, grant third application access

Django 站点充当 oauth2 提供程序。应用 tomcat_app 的设置如下所示:

每当有人尝试登录 tomcat_app 时,用户将被重定向到 Django。如果用户可以提供有效凭据,他们将被重定向到 tomcat_app。到目前为止,一切都很好。 Tomcat_app 进一步提供了一个 REST API,它了解 oauth2 工作流程。如果请求提供有效的令牌请求将被接受。

我脑子里的结: 第三台服务器也应该被授予使用 tomcat_app 其余 api 的权限。是否可以

令我困惑的是如何正确发送凭据以及如何处理重定向 url。我正在寻找类似于 client type: publicAuthorization grant type: Resource ownder password-based

的东西
curl -X POST -d "grant_type=password&username=admin&password=admin" http://client:secret@localhost/o/token/

我从 django-oauth-toolkit 文档中了解到:如果您想使用 'Resource owner password-based' 授权类型,您需要让用户在您的 tomcat_app.[=11 上注册=]

但是如果您不想让用户在您的应用程序上注册并仍然向他提供 api 端点,最好使用 'Client credentials' 授权授予类型。这将使第三方应用能够在他们登录用户后访问您的 api 端点。

您可以查看 documentation 以更好地了解 'Client credential' 流程。