我想在 Web 应用程序上对用户进行身份验证。用户已经登录到他们的 Windows 网络。 注意,这不是 Internet Information Server。我在另一边有一个 Java 应用程序服务器。 有没有办法使用 Javascript 或其他东西,以便可以进行 Windows 身份验证,然后将其发送到服务器,并在服务器上验证该 token (假设服务器在同一网络上)。 我发现你可以 convert a token into a Windows Principal 所以我需要客户端部分。一种将该 token 发送到服务器的方法。
有什么想法吗?
最佳答案
如果您将 Java 网络应用程序设置为支持 NTLM 身份验证,例如通过使用 Samba Java 库中的 HttpServletFilter,这应该可以在不实现任何客户端 JavaScript 的情况下工作。
根据客户端使用的浏览器,您可能必须配置浏览器以启用针对您的服务器的 NTLM 身份验证。如果我没记错的话,IE 默认配置为允许对本地网络上的服务器进行透明的 NTLM 身份验证,但在 Firefox 中,您必须为每个特定的服务器地址启用 NTLM。
关于javascript - 使用 Javascript 获取 Windows 身份验证 token 以具有集成安全性(不使用 IIS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1510442/