повторное использование токена SAML на стороне клиента для веб-службы JSON - после входа на веб-сайт - PullRequest
6 голосов
/ 04 февраля 2012

Я создаю веб-сайт, который защищен токеном SAML для единого входа.Одна из форм имеет много полей ввода, которые должны запускать обновления и проверку для тех же или других полей ввода и содержимого таблицы.

Проверка и обновления выполняются на стороне сервера.Обновление значения в форме запускает JavaScript, который уведомляет сервер, используя веб-службу JSON WCF.Затем служба возвращает новые значения и сообщения проверки.

Проблема заключается в том, что веб-служба должна быть защищена и доступ должен быть предоставлен с использованием токена SAML, выданного пользователю при входе на веб-сайт.

[Редактировать: проведено больше исследований] После аутентификации токен SAML всегда передается на сервер в виде файла cookie FedAuth.Добавление токена в JSON (или ajax) заголовок Get не требуется.Проблема в том, что я не могу позволить WIF обрабатывать проверку cookie.Поэтому я удалил аутентификацию fedarated из службы JSON и постараюсь прочитать cookie из HttpContext.Что работает, но я не могу расшифровать его.

Есть ли кто-то с этим опытом?Есть кто-нибудь с опытом в этом?

1 Ответ

1 голос
/ 10 февраля 2012

Маркер не передается в виде файла cookie FedAuth. Это генерируется самим сайтом (действительно WIF). Маркер обычно передается как POST при успешной аутентификации в IdP.

Если веб-сервисы размещаются на одном и том же веб-сайте, то все это «просто работает» благодаря волшебству WIF. Звонки в сервисы будут включать cookie, и WIF с радостью проанализирует / проверит его и предоставит вам IPrincipal (IClaimsPrincipal).

...