1

在我们当前的设置中,我们有大约十几个 Web 应用程序部署到单个 Tomcat 服务器。这些应用程序之一是用于所有授权的 CAS。

这工作得很好,在我们的 jRuby Web 应用程序中,我们使用 ruby​​cas-client gem,指向 CAS,我们就完成了。

现在我们有一个需求,在 Java 组件中,我们需要能够通过驻留在同一服务器上的 rest 服务调用另一个 Web 应用程序。我的第一个想法是使用 CAS 代理票证,但我们目前必须访问的 Web 应用程序没有启用此功能,并且由于环境的性质,这无法更改。

因此,据我所知,我们试图通过在我们的 Web 应用程序中使用 iframe 来模拟用户,该 iframe 指向另一个(我们都在同一个域和服务器上)并抓取其 sessionid 以进行模拟并通过它一直到 Java 层。但我真的,真的不想这样做。

我错过了什么吗?有没有更好的方法来做到这一点?有没有办法在没有 iframe 的情况下获取 sessionid?

谢谢!

4

1 回答 1

1

如果您想使用 CAS 身份从 Web 应用程序调用 Web 服务,您当然应该使用 CAS 代理功能。如果您不能对您的 Web 服务进行 cassify,那么您还有另一个选择:您可以将 Apache 模块用于 CAS:https ://wiki.jasig.org/display/CASC/mod_auth_cas 。

于 2013-03-11T09:08:16.093 回答