我目前正在尝试使用Spring Security OAuth实现OAuth2身份验证的Web服务(API)。据我所知,给定用户,客户端应用程序和服务器,身份验证过程如下:
在Spring OAuth中,request an access token有三种授权类型:
授权码,这是我上面描述的方法,刷新令牌和用户凭据。我不知道用户凭据检索是如何工作的,它是否类似于通过刷新令牌检索?
答案 0 :(得分:2)
您在上面做的几个陈述不正确。如果您再次了解OAuth2规范,可能会有一个好主意:https://tools.ietf.org/html/rfc6749
为了专注于你的问题,我只是在这之后参考你问题的最后一段。
OAuth2支持 4 授权类型,即“授权代码”,“隐式”,“资源所有者密码凭据”和“客户端凭据”。您称之为“用户凭据”的那个将是“资源所有者密码凭据”。在此授权类型中,您放弃了OAuth的好处,即无需将资源所有者(也称为用户)凭据移交给客户端。但是,它仍然具有不必将密码存储在客户端上并为每个资源请求发送密码的好处,因为使用了令牌。流程如下:
所以是的,您可以说当客户端已经拥有有效的刷新令牌(从中获得授权)时,资源所有者密码凭据授权的流程与流类似。