Я настраиваю сервер авторизации, который использует Kerberos (SSO) для аутентификации пользователей в сети Windows. И он использует базовую аутентификацию для аутентификации пользователей вне сети.
Когда я пытаюсь получить доступ к конечной точке /oauth/authorize
с машиной внутри сети, единый вход Kerberos работает идеально, не запрашивая у меня имя пользователя и пароль. НО, когда я пытаюсь получить доступ к той же конечной точке с помощью машины за пределами сети, появляется всплывающее окно входа в систему браузера и скрывает мою пользовательскую страницу входа, пока я не нажму на кнопку отмены.
Я хочу отключить всплывающее окно при входе в конечную точку /oauth/authorize
.
Моя конфигурация:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.exceptionHandling()
.authenticationEntryPoint(spnegoEntryPoint())
.and()
.authorizeRequests()
.antMatchers("/", "/home", "/check", "/favicon.ico").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login").permitAll()
.and()
.logout()
.permitAll()
.and()
.addFilterBefore(
spnegoAuthenticationProcessingFilter(authenticationManagerBean()),
BasicAuthenticationFilter.class);
}
@Bean
public SpnegoEntryPoint spnegoEntryPoint() {
return new SpnegoEntryPoint("/login");
}