2013-03-05 69 views
0

我遇到了一个问题,而且由于我是新手登录/身份验证的东西,我对于在哪里可以找到答案没有清晰的认识。我该如何检查用户是否已经登录到Windows Active Directory中

这里是问题:

我要创建Web应用程序(与primefaces + EJB3 JSF),它允许用户登录到它,而不登录对话框 - 这意味着,所有的身份验证信息,对用户的角色,组等必须从Active Directory收集。我怎么弄到的?如果用户没有提供至少他或她的用户名,我如何获得用户信息?我必须问Active Directory域呢?

有人可以提供,如果不工作至少伪代码?

+0

看看这个问题:http://stackoverflow.com/questions/3118799/java-sso-kerberos-authentication-against-active-directory – 2013-03-05 08:21:15

+0

有趣的问题,但我的一点是避免使用jcifs的东西 - 它看起来没有吸引力。任何方式 - 非常感谢您的时间! – SergeZ 2013-03-05 12:24:36

回答

0

如果您在谈论Windows系统,Microsoft提供了两种能够执行SSO(单点登录)的协议,您正在寻找的是:NTLM和SPNEGO(Kerberos的一种变体)。

您的问题的答案取决于您的应用程序将运行在操作系统上。如果这是Windows,那么有几个使用Windows API的选项使它更容易。 (mod-auth-sspiWaffle

如果您正在运行其他系统,你必须使用提供整个堆叠像Jespamodauthkerb或其他库。

+0

我试过使用奶蛋烘饼,它似乎很好地满足我的要求!非常感谢!) – SergeZ 2013-03-05 12:22:51

相关问题