是否可以使用oauth2配置spring以接受多种登录可能性?
目前我有它的工作:
@Override
protected void configure(HttpSecurity http) throws Exception { // @formatter:off
http.authorizeRequests(authorizeRequests -> authorizeRequests
.anyRequest()
.authenticated())
.oauth2Login(AbstractAuthenticationFilterConfigurer::permitAll)
.addFilterAfter(new CustomAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class)
.logout(logout -> logout.logoutSuccessHandler(oidcLogoutSuccessHandler()))
.oauth2ResourceServer().jwt();
} // @formatter:on
如果一个人试图访问授权资源,他会被重定向到身份提供者的登录页面,登录,然后在客户端获取会话id。访问令牌和refreh令牌保存在服务器端的内存中。
但现在我也想使用访问令牌来访问资源。
但是当我这样做的时候,安全应用程序上下文就是空的。
我该怎么办?
我在文档中搜索过,但不知道如何实现这一点。
我希望只添加application.properties:spring.security.oauth2.resourceserver.jwt.jwk-set-uri
并添加:.oauth2ResourceServer((.jwt((添加到我的HttpSecurity,但这不起作用。
找到答案,如果在发送令牌时未在Authorization标头中将Bearer设置为前缀,则将无法识别它。有点正常,因为这是标准。。。