2009-12-29 67 views
1

我最近一直在研究一個JBoss Seam項目(v2.1.1),在那裏我想要對LDAP/AD進行身份驗證並將自定義數據庫架構存儲。JBoss Seam使用LDAP Indetity Store和JPA Identity Store一起

該文檔聲明,這是可能的,我看到一個文本書的例子,因爲數據庫模式是由Hibernate管理的,所以不適用於我。有沒有人在那裏做過類似的事情?任何人都可以提供一個好例子嗎

在此先感謝。 --ctopete

回答

0

我個人開發過這樣的解決方案。我使用jCif來通過NTLM驗證所有用戶,然後使用用戶名/域對從自定義數據庫加載角色和權限。

JCIFS是超級容易配置,只需設置在你的web.xml的過濾器:在你的鑑定者類http://jcifs.samba.org/src/docs/ntlmhttpauth.html

然後,在認證()方法,用這些來讀取用戶名和域名:

@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(); 

    ... 

    }