我想在我的Web应用程序中实现oAuth2.0协议,以便在服务器和移动应用程序之间进行通信(资源服务器和移动客户端都归同一家公司所有)。 鉴于服务器和客户端之间的高度信任,我决定实施资源所有者密码凭据流,这是我的问题:一些资源没有保留(例如产品列表,产品详细信息),因此他们不需要访问令牌资源所有者;但其他资源是私有的(用户的产品愿望清单等)。 因此,对于非私有资源,我只需要对客户端(移动应用程序)进行身份验证,而对于私有资源,我需要对客户端和资源所有者进行身份验证。 考虑到用户可以导航应用程序并在第二时刻登录,我是否必须分两步拆分协议流程?如果是这样,如何处理令牌存储?
我希望我足够清楚。 提前致谢
答案 0 :(得分:0)
请注意,OAuth 2.0资源所有者密码凭据授予(或流)不是关于客户端和资源服务器之间的信任,而是关于授权服务器和客户端之间的高度信任,因为客户端“看到”了密码它发送到授权服务器(它从不将它发送到资源服务器)。
在您的情况下,您可以获得并使用通过不同流程获得的2个访问令牌:
这就是假设你想要保护你的“公共”资源。如果他们真的是公开的,你甚至不会保护它,也不必发送任何访问令牌,所以1.甚至不需要。