繁体   English   中英

从春季项目到非春季项目的会话“ user_id”

[英]Session “user_id” from spring project to non-spring project

我正在做一个小型Java EE项目,该项目将加入一个更大的项目。 主要项目是使用Maven和Spring框架设计的。 我的不是,因为它确实是基本的。

这是我的问题:

主项目已经使用公司的Active Directory登录了用户,并将其存储到spring中。 代码如下:

@Configuration
@EnableWebMvcSecurity
public class WebSecurityConfiguration extends WebSecurityConfigurerAdapter {

    private final String URL = "blablablabla";
    private final int PORT = 389;
    private final String MANAGER_DN = "CN=blablablabla,OU=blablablabla,OU=blablablabla,OU=blablablabla,OU=blablablablaFund,OU=EBS,DC=blablablabla,DC=blablablabla,DC=blablablabla";
    private final String MANAGER_PASSWORD = "blablablabla";
    private final String GROUP_BASE = "OU=blablablabla,OU=blablablabla,OU=blablablabla,OU=blablablabla,DC=blablablabla,DC=blablablabla,DC=blablablabla";
    private final String USER_SEARCH_BASE = "DC=blablablabla,DC=blablablabla,DC=blablablabla";
    private final String USER_SEARCH_FILTER = "(sAMAccountName={0})";
    private final String GROUP_ROLE_ATTR = "blablablabla";
    private final String GROUP_SEARCH_FILTER = "(member={0})";
    private final String ROLE_LDIG_ALPHA = "blablablabla";

    @Override
    @Autowired
    protected void configure(AuthenticationManagerBuilder authManagerBuilder) throws Exception {
        authManagerBuilder
            .ldapAuthentication()
                .userSearchBase(USER_SEARCH_BASE)
                .userSearchFilter(USER_SEARCH_FILTER)
                .groupRoleAttribute(GROUP_ROLE_ATTR)
                .groupSearchFilter(GROUP_SEARCH_FILTER)
                .groupSearchBase(GROUP_BASE)
                .contextSource().url(URL).port(PORT).managerDn(MANAGER_DN).managerPassword(MANAGER_PASSWORD);
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/**").hasRole(ROLE_LDIG_ALPHA)
                .anyRequest().authenticated()
                .and()
            .formLogin()
            .and()
            .httpBasic();
    }
}

现在,我需要从servlet中检索用户会话信息,例如,而无需再次登录用户(我重复:我不使用spring框架)

那可能吗?

一个简单的实现是在身份验证处理项目中创建一个cookie,并在其中存储相关的非敏感信息,然后在另一个项目中读取该cookie。

另一种实现是使用jndi注册您的对象,然后在其他需要的位置读取。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM