Как преодолеть междоменные проблемы для Ajax-вызовов ресурсов, защищенных CAS?

Каковы потенциальные решения проблемы перенаправления, возникающей при попытке выполнить вызовы AJAX к ресурсу, защищенному CAS и зашифрованному SSL, расположенному на сервере, отличном от сервера CAS?

Сервер CAS используется для аутентификации и ведет себя так, как задумано. Эта проблема, по-видимому, связана с ajax.

Аналогичный вопрос здесь, но мы не можем использовать тот же домен /server/port для сервера клиентского доступа и внутреннего ресурса.

В списках рассылки JASIG CAS упоминается использование JSESSIONID.

Другой возможный подход — изменить фильтр CAS, чтобы изменить поведение просроченных билетов по умолчанию на что-то более надежное.

Какой шаблон проектирования вы бы использовали для решения этой проблемы?


person Jon Jaroker    schedule 08.04.2011    source источник


Ответы (2)


У меня есть 2 предложения:

  • можете ли вы настроить прокси-скрипт в том же домене, что и тот, который содержит код JS? Таким образом, прокси-скрипт будет запрашивать CAS и возвращать желаемые результаты.
  • Вы можете включить JSONP? этот тип запроса не ограничен политикой безопасности (но тогда любой мог бы воспользоваться услугой)
person Lucian2k    schedule 09.04.2013

Я никогда не слышал о CAS, но в целом: Javascript имеет некоторое ограничение, называемое «политикой одного и того же происхождения». Видимый ресурс также автоматически не виден для Javascript. Вы пытались получить доступ к ресурсу с помощью обратного прокси-сервера, чтобы сделать его доступным в том же домене? Вы также можете рассмотреть возможность размещения своего домена на отдельном веб-сервере и включить оба сервера в качестве обратных прокси-серверов (для Tomacat предпочтительны JKmounts).

person Matthias Ronge    schedule 08.04.2013