通过Window登录进行Java / J2ee身份验证

时间:2014-05-14 13:14:15

标签: java windows authentication authorization

任何人都可以告诉我如何通过Windows公司域登录ID和密码进行用户身份验证...因此,如果用户已经登录,则应用程序不应该要求输入用户名和密码。

整个场景:我们有一个任何人都可以访问的Web应用程序..如果您在公司网络之外 - 通过saml进行SSO。

如果用户在公司场所,请通过机器的用户名和密码进行身份验证。

我希望你明白我的意思..如果你有任何疑问,请告诉我。 注意:Web应用程序是用Java开发的......所以解决方案应该在java中。

3 个答案:

答案 0 :(得分:1)

此Oracle tutorial解释了使用哪些API以及如何使用这些API。基本上,您需要一个Java Kerberos集成点。 Apache Tomcat有一个(如果你想看看他们是怎么做的,那就去here)。

Google还引导我了解project这可能会对您有所帮助。

最后看看Java SSO: Kerberos authentication against Active Directory

答案 1 :(得分:0)

我认为身份验证无法通过。您必须以programaticaly方式进行,而不是要求用户输入身份验证详细信息。

首先获取当前用户的Windows登录用户名称。必须有像LDAP这样的登录机制来验证用户,以允许他在Windows中登录。检查此用户是否存在于LDAP中,然后通过Web应用程序验证machenism。

答案 2 :(得分:0)

您可以在网址中传递网络用户名和密码,如下所示

http://username:password@example.com/yourpath/etc