Я попытался сделать SSO с веб-сервисами с помощью jasig CAS.WebServices SSO jasig CAS
Я использовал защиту для веб-приложений с использованием фильтров весны, но я не знаю, как это сделать с помощью веб-сервисов на стороне сервера.
Я попытался сделать SSO с веб-сервисами с помощью jasig CAS.WebServices SSO jasig CAS
Я использовал защиту для веб-приложений с использованием фильтров весны, но я не знаю, как это сделать с помощью веб-сервисов на стороне сервера.
Мы делаем это с помощью комбинации клиента (https://wiki.jasig.org/display/CASUM/RESTful+API) и CasLoginModule (https://wiki.jasig.org/display/CASC/CASLoginModule+for+JAAS+applications) через JAAS (https://wiki.jasig.org/display/CASUM/JAAS). Вот как это работает:
Клиент посылает имя пользователя и пароль для вашего веб-сервиса, который проверяет подлинность и проверяет это на сервере CAS. После этого CASLoginModule кэширует результирующий билет на обслуживание, так что для будущих запросов, которые могут предоставить билет на обслуживание, не нужно снова обращаться к CAS.
Это довольно длинный выход из «нормального» использования CAS, потому что по существу он делает билет обслуживания долговечным. Обычно ST должен длиться достаточно долго, чтобы результирующая служба проверила клиента. В моем случае я понял, что это не имеет большого значения, потому что все наше общение находится на стороне сервера за брандмауэром, но это может быть иным для вас.
В моем случае клиент вызывается из веб-приложения, где пользователь уже зарегистрирован. Кас сделал билет. Возможно ли передать билет в веб-службу сервера и подтвердить его? – Wojciech
Да, для этого мы создаем собственный безопасный файл cookie (требуется https) и передаем его клиенту веб-приложения, чтобы он мог вернуться к следующему запросу. CasLoginModule будет кэшировать билет на обслуживание, и поэтому проверка будет успешной. Также можно продлить срок действия сервисного билета в реестре билетов - см. Здесь: https://wiki.jasig.org/display/CASUM/Ticket+Expiration+Policy – bwobbones
Можно передать его в заголовке SAML Assertion в МЫЛО? – Wojciech