Безопасность Spring с весенней загрузкой и фундукацией для репликации сеанса: почему набор cook ie не совпадает с идентификатором сеанса? - PullRequest
0 голосов
/ 14 апреля 2020

В моем примере приложения после входа в систему повар ie, который идентифицировал сеанс, содержит значение, которое не соответствует идентификатору сеанса в серверной части. Почему? Все работает, но кажется, что есть внутреннее скрытое отображение между значением cook ie и сессией. Есть возможность установить значение повара ie для идентификатора сеанса?

    @EnableHazelcastHttpSession 
@Configuration
public class HazelcastHttpSessionConfig {

    @Bean
    public HazelcastInstance hazelcastInstance() {
        Config config = new Config();
        MapAttributeConfig attributeConfig = new MapAttributeConfig()
                .setName(HazelcastIndexedSessionRepository.PRINCIPAL_NAME_ATTRIBUTE)
                .setExtractor(PrincipalNameExtractor.class.getName());
        config.getMapConfig(HazelcastIndexedSessionRepository.DEFAULT_SESSION_MAP_NAME) 
                .addMapAttributeConfig(attributeConfig).addMapIndexConfig(
                        new MapIndexConfig(HazelcastIndexedSessionRepository.PRINCIPAL_NAME_ATTRIBUTE, false));
        return Hazelcast.newHazelcastInstance(config); 
    }

    @Bean
    public Config config() {

        Config config = new Config();

        JoinConfig joinConfig = config.getNetworkConfig().getJoin();

        joinConfig.getMulticastConfig().setEnabled(false);
        joinConfig.getTcpIpConfig().setEnabled(true).setMembers(singletonList("127.0.0.1"));

        return config;
    }
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/", "/haz").permitAll()
                .anyRequest().authenticated()
                .and()
            .formLogin()
                .loginPage("/login")
                .permitAll()
                .and()
            .logout()
                .permitAll();
    }
...