0

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

在此处输入图像描述

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

我心中的结: 第三台服务器也应该被授予使用tomcat_app rest api。是否有可能

  • 在 django 中设置一个新用户externalapp_user/externalapp_password
  • tomcat_app通过将新用户凭据发送到 django 来获取密钥

我感到困惑的是,如何正确发送凭据以及如何处理重定向 url。我正在寻找类似于client type: public和的东西Authorization grant type: Resource ownder password-based

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

1 回答 1

0

我从 django-oauth-toolkit 文档中了解到的是:如果您想使用“基于资源所有者密码”的授权授予类型,您需要让用户在您的 tomcat_app 上注册。

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

您可以查看文档以更好地理解“客户凭证”流程。

于 2021-03-02T05:49:16.310 回答