Spring Security getCredentials является нулевым по erase-credentials = false - PullRequest
0 голосов
/ 14 ноября 2018

Я использую

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-core</artifactId>
    <version>4.2.4.RELEASE</version>
</dependency>

После аутентификации мне нужен пароль, чтобы иметь возможность войти в какой-либо другой сервис.Для этого подхода я настраиваю свою аутентификацию следующим образом:

 <sec:authentication-manager alias="authenticationManager" erase-credentials="false">       
        <sec:authentication-provider>
            <sec:password-encoder ref="defaultPasswordEncoder" />
            <sec:jdbc-user-service data-source-ref="dataSource"
                users-by-username-query="SELECT .."
                authorities-by-username-query="SELECT .." />
            </sec:authentication-provider>
    </sec:authentication-manager>

Но когда я получаю учетные данные, я все равно получаю ноль:

SecurityContextHolder.getContext().getAuthentication().getCredentials();
...