Keycloak. Invalid parameter: redirect_uri

Добрый день пытаюсь разобраться с подключением keycloak к spring boot приложению, однако при переходе на страницу с авторизацией появляется ошибка с неверным redirect_uri. Не понимаю где и как его изменить. Приложение работает на 8081, а keycloak на 8080. Заранее спасибо за помощь.

Конфигурация:

@Configuration
@EnableWebSecurity
public class SecurityConfig extends KeycloakWebSecurityConfigurerAdapter {

    @Override
    protected SessionAuthenticationStrategy sessionAuthenticationStrategy() {
        return new NullAuthenticatedSessionStrategy();
    }

    @Autowired
    public void configureGlobal(AuthenticationManagerBuilder authManagerBuilder) {
        KeycloakAuthenticationProvider keycloakAuthenticationProvider = keycloakAuthenticationProvider();
        keycloakAuthenticationProvider.setGrantedAuthoritiesMapper(new SimpleAuthorityMapper());
        authManagerBuilder.authenticationProvider(keycloakAuthenticationProvider);
    }

    @Bean
    public KeycloakConfigResolver keycloakConfigResolver() {
        return new KeycloakSpringBootConfigResolver();
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        super.configure(http);
        http
                .authorizeRequests()
                .antMatchers("/api/anonymous/**").permitAll()
                .anyRequest().fullyAuthenticated();
    }
}

Контроллер:

@RestController
@RequestMapping("/api")
public class KeyCloakController {

    @GetMapping("/user")
    @PreAuthorize("hasRole('USER')")
    public String getUserInfo() {
        return "user info";
    }

    @GetMapping("/admin")
    @PreAuthorize("hasRole('ADMIN')")
    public String getAdminInfo() {
        return "admin info";
    }

    @GetMapping("/service")
    public String getServiceInfo() {
        return "service info";
    }

    @GetMapping("/me")
    public Object getMe() {
        final Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
        return authentication.getName();
    }
}

Properties:

keycloak.auth-server-url=http://localhost:8080
keycloak.realm=my_realm
keycloak.resource=my_client
keycloak.public-client=true

Настройки клиента: введите сюда описание изображения

Неверный redirect_uri выглядит так: redirect_uri=http%3A%2F%2Flocalhost%3A8081%2Fsso%2Flogin


Ответы (0 шт):