【发布时间】:2018-07-13 12:40:07
【问题描述】:
我看到授权码是在AuthorizationEndpoint.java里面的redirectUri里面插入的
private String getSuccessfulRedirect(AuthorizationRequest authorizationRequest, String authorizationCode) {
if (authorizationCode == null) {
throw new IllegalStateException("No authorization code found in the current request scope.");
}
Map<String, String> query = new LinkedHashMap<String, String>();
query.put("code", authorizationCode);
String state = authorizationRequest.getState();
if (state != null) {
query.put("state", state);
}
return append(authorizationRequest.getRedirectUri(), query, false);
}
我希望能够在 query.put() 所在的位置添加一个 sn-p 代码,但我无法成功扩展该类。我不知道在哪里/如何将其配置为我想首先访问的身份验证端点。我还发现我需要扩展整个类有点极端,这样我就可以添加几行代码,以便将另一个查询参数附加到授权代码响应 uri。
谢谢
【问题讨论】:
-
Spring Security OAuth2 只实现了OAuth2 spec,所以你必须使用规范支持的方式。您可以使用
state查询参数或redirect_uri查询参数。
标签: spring-security spring-oauth2