OAuth2实施

问题描述 投票:0回答:1

这是一个理论问题,但我会尽量详细说明。我已经阅读了一些关于oath2 / SSO实现的文档(我知道它们不一样) - 所以我需要超越手工波浪到实际的系统设计。所以我认为Oauth2实现应该是这样的。核心设计涉及一堆微服务(我在这里称之为app),它们都使用相同的授权服务器。

据我所知,这些是auth服务器应该提供的端点。

授权服务器

  1. 应用程序注册的终点 - >一旦注册,应用程序将提供客户端ID和客户端机密(这些基本上是永久性的,不会更改。
  2. 用户注册的端点 - >此请求应附带客户端ID和客户端密钥,以便授权服务器可以将用户与应用关联。
  3. 用户登录的端点 - >如果用户是授权用户,则向他/她提供访问令牌。
  4. 具有用户详细信息的端点 - >如果授权的应用程序(正确的客户端ID和密码)向授权用户发出请求(正确的访问令牌),则返回用户blob。

资源服务器(App)

现在资源服务器具有此基本用户数据,它可以将JSON对象反序列化为其自己的用户类,然后与user_address / user_location等进行一对一映射。

这是我对Oauth2-SSO的理解。我非常感谢粗糙边缘的一些帮助。 TIA !!!

oauth oauth-2.0
1个回答
1
投票

我自己没有实现oauth2,但我工作的系统确实使用它,你所描述的似乎与我们使用的相同;

我们使用端点和客户端密钥和ID初始化客户端,然后使用我们用户的凭据获取令牌(如果用户/客户端凭据无效,则使用错误消息)。从那里我们使用应用程序的端点来调用我们的应用程序。从我可以看到我们的Oauth2方法似乎做你在你的问题中描述的,它应该是正确的。

© www.soinside.com 2019 - 2024. All rights reserved.