我面临一个困难的设置,我必须根据我的 tomcat 应用程序上使用的登录配置单点登录。我已经采取了一些步骤,允许我使用 waffle 直接在我的 tomcat 应用程序上通过单点登录登录。
我有 1 台服务器,其中运行着一个 tomcat 和一个 IIS(但此 IIS 将来会移动到同一域中的另一台服务器)。我在端口 8205 上运行 Tomcat,并且 IIS 配置为接受来自 authpoc.company.com 的 url。IIS 通过 URL 重写重定向到 localhost:8025。我来自 IIS 的 web.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="ReverseProxyInboundRule1">
<match url="(.*)" />
<action type="Rewrite" url="http://localhost:8205/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
什么有效
- 直接在服务器上的 localhost:8205 打开应用程序时。根据我的域用户,我得到了一个很好的单点登录。
- 直接在服务器的ip上打开应用程序时。192.168.1.1:8205。我可以登录,但单点登录不再起作用。这个我不明白。(编辑:已解决,这是 Internet Explorer 中的设置,请参阅SSO waffle 询问用户名和密码以获取更多信息)
什么不起作用
- 从 IIS 重定向时,我无法登录到我的 tomcat 应用程序。我启用了 Windows 身份验证,启用了协商和 NTML(按此顺序)。
我在互联网上阅读了很多内容,但找不到任何具有这种特殊设置的人。我真的没有印象我在做一些异国情调的事情。一种可能性是我应该通过 AJP 连接 IIS,而不是更简单的 URL 重写。
欢迎任何帮助!谢谢