CAS代理配置

时间:2012-06-21 20:00:34

标签: url single-sign-on reverse-proxy cas

我有以下设置:

  1. 代理服务器:https://proxy-server.com
  2. 应用程序服务器:https://app-server.com
  3. 和CAS(sso)服务器:https://sso-server.com
  4. 我可以得到以下工作:

    https://proxy-server.com/cas/login?service=https://app-server.com/app

    但是这个URL的问题在于它暴露了代理服务器后面的实际app-server。

    理想情况下,我想要以下内容:

    https://proxy-server.com/cas/login?service=https://proxy-server.com/app

    我的问题是: 有没有办法隐藏(使用post,加密targetService部分,代理端回调,或...)URL中的app-server.com?因为我前面有一个代理服务器,所以我不想公开实际的应用服务器名称。

    感谢

1 个答案:

答案 0 :(得分:2)

如果您在https://proxy-server.com上运行类似Apache mod_proxy的内容,那么您应该可以在其后面隐藏您的应用。根据您的示例,您似乎已经使用cas服务器执行此操作,因为您已将您的cas登录网址声明为https://proxy-server.com/cas/login

根据相同的想法,您可以使用https://proxy-server.com/app

访问您的应用
ProxyPass          /cas   https://sso-server.com/cas 
ProxyPassReverse   /cas   https://sso-server.com/cas
ProxyPass          /app   https://app-server.com/app  
ProxyPassReverse   /app   https://app-server.com/app 

您可能需要修改serviceUrls,以便它们与proxy-server.com

相关