我正在尝试使用 Spring Security OAuth2 配置 Spring Boot 1.5.0 应用程序,而我的 userInfo服务器是基于表单的。我必须以form-urlencoded方式发送 access_token (不是像“授权:承载......”这样的标题)。
在我的IDE中进行调试,我在 UserInfoRestTemplate 上将 authorizationScheme 更改为“form”,就像下面的示例一样:
DefaultUserInfoRestTemplateFactory
它按照我的预期工作。 RestTemplate生成了一个“www-form-urlencoded”,服务器响应了我预期的用户信息。
但是现在我无法确定如何在 application.yaml 上进行更改以产生相同的行为。我尝试了一些变化,但没有成功(如下面的例子)
有人知道如何设置它的正确方法吗?
提前致谢
答案 0 :(得分:0)
以下是一个例子:
security:
oauth2:
client:
client-id: acme
client-secret: acmesecret
scope: read,write
auto-approve-scopes: '.*'
facebook:
client:
clientId: 233668646673605
clientSecret: 33b17e044ee6a4fa383f46ec6e28ea1d
accessTokenUri: https://graph.facebook.com/oauth/access_token
userAuthorizationUri: https://www.facebook.com/dialog/oauth
tokenName: oauth_token
authenticationScheme: form
clientAuthenticationScheme: form
resource:
userInfoUri: https://graph.facebook.com