Add security-7-migration module: Spring Security 6.5.11 vs 7.1.2 jar diff, compile checks and runtime probes
Co-Authored-By: Claude Sonnet 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01YPgGH6aMbSLANL3E2HHmS6
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
import org.springframework.security.access.annotation.Secured;
|
||||
import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
|
||||
import org.springframework.security.authorization.AuthorizationDecision;
|
||||
import org.springframework.security.authorization.AuthorizationManager;
|
||||
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
|
||||
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
||||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.security.core.userdetails.UserDetailsService;
|
||||
import org.springframework.security.oauth2.core.AuthorizationGrantType;
|
||||
import org.springframework.security.web.access.intercept.RequestAuthorizationContext;
|
||||
import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
|
||||
/** Security 6 style code. Compiled by scripts/compile-old-apis.sh against 6.5.11 and 7.1.2; not part of a Maven build. */
|
||||
@EnableGlobalMethodSecurity(prePostEnabled = true)
|
||||
class OldSecurity {
|
||||
|
||||
void chain(HttpSecurity http) throws Exception {
|
||||
http.authorizeRequests(a -> a.anyRequest().authenticated());
|
||||
}
|
||||
|
||||
void chainWithAnd(HttpSecurity http) throws Exception {
|
||||
http.csrf().disable().headers().frameOptions().sameOrigin();
|
||||
}
|
||||
|
||||
Object matcher() {
|
||||
return new AntPathRequestMatcher("/api/**");
|
||||
}
|
||||
|
||||
DaoAuthenticationProvider provider(UserDetailsService users) {
|
||||
DaoAuthenticationProvider p = new DaoAuthenticationProvider();
|
||||
p.setUserDetailsService(users);
|
||||
return p;
|
||||
}
|
||||
|
||||
Object grant() {
|
||||
return AuthorizationGrantType.PASSWORD;
|
||||
}
|
||||
|
||||
static class CustomManager implements AuthorizationManager<RequestAuthorizationContext> {
|
||||
@Override
|
||||
public AuthorizationDecision check(Supplier<Authentication> authentication, RequestAuthorizationContext ctx) {
|
||||
return new AuthorizationDecision(authentication.get().isAuthenticated());
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user