).permitAll() .anyRequest().authenticated() .and() .oauth2ResourceServer
"/public/**").permitAll() .anyRequest().authenticated() ) .oauth2ResourceServer (oauth2ResourceServer -> oauth2ResourceServer .jwt(jwt ->
项目可以继续使用spring security oauth 2.x版本或者升级到spring security 5.x 官方迁移指引 差异 废弃@EnableResourceServer注解,改为使用oauth2ResourceServer .hasAnyAuthority("SCOPE_scope") .anyRequest().permitAll() ).oauth2ResourceServer
PostMapping("/api/hi") public String say(String name) { return "hi , " + name; } } OAuth2ResourceServer /** * 资源服务器 */ @Configuration @EnableResourceServer public class OAuth2ResourceServer extends ResourceServerConfigurerAdapter
PostMapping("/api/hi") public String say(String name) { return "hi , " + name; } } OAuth2ResourceServer /** * 资源服务器 */ @Configuration @EnableResourceServer public class OAuth2ResourceServer extends ResourceServerConfigurerAdapter
.mvcMatchers("/userinfo/**").hasAuthority("SCOPE_userinfo") .and() .oauth2ResourceServer .mvcMatchers("/userinfo/**").hasAuthority("SCOPE_userinfo")匹配/userinfo/**地址,允许访问范围是SCOPE_userinfo oauth2ResourceServer
*").permitAll() .anyExchange().authenticated() .and() .oauth2ResourceServer 我们使用了oauth2ResourceServer().jwt()来配置JWT令牌的验证,然后添加了一个JwtAuthenticationFilter,该过滤器用于解析JWT令牌并将其转换为Spring
authenticated() .and() .oauth2Login() .and() .oauth2ResourceServer
HttpSecurity http) throws Exception { http.authorizeRequests().anyRequest().authenticated().and().oauth2ResourceServer
http.authorizeRequests() .antMatchers("/api/**").authenticated() .and() .oauth2ResourceServer http.authorizeRequests() .antMatchers("/api/**").authenticated() .and() .oauth2ResourceServer
authenticated() .and() .oauth2Login() .and() .oauth2ResourceServer
http.authorizeRequests() .antMatchers("/api/**").authenticated() .and() .oauth2ResourceServer http.authorizeRequests() .antMatchers("/api/**").authenticated() .and() .oauth2ResourceServer
SYS_ADMIN") .anyRequest().authenticated() ) .oauth2ResourceServer
-> auth .requestMatchers("/api/ai/").hasRole("AI_USER") ) .oauth2ResourceServer
(假如同一个微服务资源部署多份,resourceId相同) @Configuration @EnableResourceServer public class OAuth2ResourceServer
auth/**").permitAll().requestMatchers("/api/admin/**").hasRole("ADMIN").anyRequest().authenticated()).oauth2ResourceServer
http.authorizeRequests() .anyRequest().authenticated() .and() .oauth2ResourceServer - `oauth2ResourceServer().jwt()` 表示使用JWT进行身份验证。 ## 结束语 通过这次面试,可以看出李明在Java全栈开发方面有着丰富的经验和扎实的技术功底。
public/**").permitAll() .anyRequest().authenticated() .and() .oauth2ResourceServer
http.authorizeRequests() .antMatchers("/api/**").authenticated() .and().oauth2ResourceServer
则将生成默认登录页面 oauth2Login() 根据外部OAuth 2.0或OpenID Connect 1.0提供程序配置身份验证 oauth2Client() OAuth2.0 客户端相关的配置 oauth2ResourceServer