JBoss Seam一起使用LDAP Identity Store和JPA Identity Store

时间:2009-12-29 18:18:23

标签: hibernate jboss seam identity

我最近一直致力于JBoss Seam项目(v2.1.1),我希望在自定义数据库模式中对LDAP / AD进行验证并存储预先提交。

文档声明这是可能的,我看到了一个对我不起作用的教科书示例,因为数据库模式由Hibernate管理。有没有人做过类似的事情?任何人都可以提供一个很好的例子吗?

提前致谢。 --ctopete

1 个答案:

答案 0 :(得分:0)

我亲自开发了这样的解决方案。我已经使用jCifs通过NTLM对所有用户进行身份验证,然后使用用户名/域对从自定义数据库加载角色和权限。

jCifs非常容易配置,只需在web.xml中设置这些过滤器:http://jcifs.samba.org/src/docs/ntlmhttpauth.html

然后在您的Authenticator类中,在authenticate()方法中使用这些来读取用户名和域名:

@Name("authenticator")
public class Authenticator {

    @In
    Context sessionContext;

    ...

    public boolean authenticate() {

        String username = ((NtlmPasswordAuthentication) sessionContext.get("NtlmHttpAuth")).getUsername();
        String domain = ((NtlmPasswordAuthentication) sessionContext.get("NtlmHttpAuth")).getDomain();

    ...

    }