当社のWebサーバーは、シングルサインオンにCASを使用しています。CASサーバーはhttps://portal.ourdomain.comでJASIGCASサーバーを実行しており、Webサーバーはhttp://service.ourdomain.comでRailsを実行しています。
Railsサーバーでは、シングルサインアウトのバックアップ手段として、およびその他の理由で、セッションタイムアウトがかなり低く設定されています。そのため、ユーザーは再認証のためにportal.ourdomain.comにリダイレクトされることがあります。CASセッションの有効期限が切れていない限り、portal.ourdomain.comは更新されたチケットCookieを使用してすぐにservice.ourdomain.comにリダイレクトするため、通常、これはシームレスです。
ただし、これはAJAXでは機能しません。ドメインが同じであっても、WebブラウザーはXHR要求のリダイレクトに従いません。
明らかな解決策の1つは、https://ourdomain.comからすべてを提供し、サブドメインのナンセンスで停止することです。これは大規模な操作であり、httpsを介してすべてを提供する必要があります。
もう1つの解決策は、サーバーがタイムアウトしないように定期的にサーバーにpingを実行することです。サーバーの負荷が増加することに加えて、タイムアウトしないページがあると、そもそもタイムアウトするという目的が無効になります。
これは、3番目のくだらない解決策につながります。タイムアウトを削除するだけです。
CASで保護されたリソースへのAjax呼び出しのクロスドメインの問題を克服する方法は?は答えられていない同様の質問ですが、その質問はより広いように見えるので、私たちの質問に対する答えがあることを願っています。
誰かがこの問題の解決策を持っていますか?