Spring-SAML с пользовательскими пользователями в сервис-провайдере - PullRequest
0 голосов
/ 06 ноября 2019

Я использую vdenotaris Spring SAML2 пример проекта на GitHub и пытаюсь вставить свой собственный UserDetailsService для проверки пользовательских ролей и статусов (например, ACTIVE, DEACTIVATED, LOCKED, ...), которыеIdP не поддерживается.

Я попытался вставить UserCache в AuthenticationManagerBuilder с пользователем, помеченным как DEACTIVATED (я хочу, чтобы это вызвало сбой процесса входа в систему). Код показан ниже.

    @Autowired
    private DataSource dataSource;

    @Autowired
    private UserCache userDetailsService;

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth
                .jdbcAuthentication()
                    .userCache(userDetailsService)
                    .dataSource(dataSource)
            .and()
                .authenticationProvider(samlAuthenticationProvider());
    }

Я использую SSO Circle free IdP. Ожидаемый результат - сбой входа в систему, но кажется, что вход успешный. Может быть, вместо этого я должен расширить класс SAMLAuthenticationProvider, чтобы включить то, что я хочу?

...