我有一个带有 JWT 身份验证的 Django Rest API,它是 Angular 前端的后端。有许多客户在我们的前端使用该服务。现在一些企业客户希望从他们的系统后端集成 API。我不想从当前的 API 中删除 JWT。我计划在同一后端为这些用户创建带有 OAuth 令牌的新 API。
我想知道在这种情况下实现 OAuth 的最佳方法是什么。
我认为客户凭证授予类型是最好的方法。
问题 1:我认为客户端凭据是正确的方法是对的吗?
对于那些企业用户来说,他们只需通过 UI 界面获得访问令牌,这样他们就可以访问我们所有的 API。但这里的问题是首先获取客户端 ID 和客户端密码并使用它来获取访问令牌的额外步骤。
问题2:客户端ID和客户端密码有什么用?
问题3:我的后端是否应该隐藏生成客户端 ID 和客户端密码的过程,只提供访问令牌(或)给他们客户端 ID 和客户端密码,然后要求生成访问令牌?
问题 4:如果我给他们没有客户 ID 和秘密的访问令牌,是否可以无限期到期?和
TLDR;资源服务器和认证服务器相同时如何实现OAuth ?