我想获得有关潜在设置的反馈,并想确保在开始这条道路之前它可能会起作用。
我想在 Tomcat 中使用 IIS 来进行 NTLM 身份验证。在 tomcat 中运行了一个 Web 服务,它可以让 IIS 将请求转发给它。
该服务需要知道调用该服务的远程 NT 用户。
我的问题是这些信息是从 IIS 传递过来的吗?如果是这样,它以什么形式通过。它是在 HTTP 标头中传递的还是什么?
谢谢
如果您想使用 tomcat 作为 IIS 前端,您可以使用基于 ISAPI 的连接器或使用基于 .net 的连接器 (http://tomcatiis.riaforge.org)。
在这两种情况下,IIS 将自动处理所有身份验证任务,并且连接器将通过 http 标头将经过身份验证的用户转发到 tomcat。这更简单,更灵活,特别是如果您想稍后更改身份验证方案,即使用证书、kerberos、AD、SAML。
在 tomcat 方面,您只担心事情是否成功。将自动为您填充包含用户信息的其他主机标头。根据您使用的 IIS 版本,将填充几个标头。最常见的 http 标头是 AUTH_USER,它将包含经过身份验证的用户的名称。然后,您可以从那里拿走它。
您可以使用Waffle对 Tomcat 执行 NTLM 并完全避免 IIS。