情况:
password
grant_type
ATM(查找数据库中的凭据)。问题/目标:
根据this draft和this Blog Post,似乎可以使用authorization_code
授权类型。
所以做这样的请求:
POST /token.oauth2 HTTP/1.1
Host: as.example.com
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code&
code=vAZEIHjQTHuGgaSvyW9hO0RpusLzkvTOww3trZBxZpo&
client_assertion_type=urn%3Aietf%3Aparams%3Aoauth
%3Aclient-assertion-type%3Asaml2-bearer&
client_assertion=PHNhbW...[omitted for brevity]...ZT
哪个可以返回包含OAuth访问令牌的JWT令牌。这没关系,但我很难弄清楚如何使用Spring Security OAuth2和现有的Spring Security SAML 2扩展/库实现这一点。
这是我的具体问题:
AuthorizationCodeServices
接口,该接口可以实现和配置以使用grant_type=authorization_code
处理OAuth Authenticait请求。我不确定如何创建OAuth2Authentication
实例以便在consumeAuthorizationCode(String)
中返回,因为在调用createAuthorizationCode
时我无法坚持它(如在InMemoryAuthorizationCodeServices
中)因为据我所知,SAML / OAuth2 /授权令牌流程永远不会被调用consumeAuthorizationCode(String)
。也许AuthorizationCodeServices
也不是正确的做法?