единый вход на многих доменах без файлов cookie - PullRequest
2 голосов
/ 16 февраля 2011

Я использую Visual Studio 2008.

Мое требование - реализовать единый вход во многие домены без использования файлов cookie. это возможно?

например, у меня есть 3 домена (размещены в 3 разных системах). www.domain1.com www.domain2.com www.domain3.com

и cookie отключены.

Я внедрил единый вход с помощью файлов cookie, если сайты размещены в одной системе, значит, она работает но он не работает, если куки отключены.

Я попробовал все возможные поиски в Google, но не смог найти ничего полезного. пожалуйста помогите?

Ответы [ 2 ]

3 голосов
/ 16 февраля 2011

Я считаю, что у Microsoft есть хитрость в их едином входе, которая может сработать для этого.Я предполагаю, что вместо файлов cookie вы устанавливаете переменную сеанса, поэтому теория (из памяти) выглядит примерно так:

1 - вы указываете один домен в качестве точки аутентификации, т.е. независимо от того, где вы входите, вы должны убедиться, чтоУ www.domain1.com есть переменная сеанса, указывающая, что пользователь прошел аутентификацию (я думаю, в идеале вы могли бы просто разместить страницу входа в этом домене, но если нет, то вы можете обойти это, используя запросы http для установки начального знакав аутентификации на domain1).

2 - тогда уловка заключается в том, чтобы иметь общий заголовок на всех других страницах вашего домена (1,2,3,4), который сначала проверяет, является ли переменная сеансаустанавливается на соответствующем домене и, если нет, выполняет перенаправление на домен1, определяет, вошел ли пользователь в систему - если это так, получите данные для входа - перенаправьте обратно в домен, из которого вы пришли (передавая данные для входа), а затем настройте переменную входа в системукак только вы вернетесь на домен, с которого вы начали.

У нас есть междоменная аутентификация насистема, с которой я работаю - она ​​работает с cookie-файлами и является кошмаром для работы - мы рассмотрели возможные варианты ее повторного проектирования, и это по памяти решение, которое казалось наиболее распространенным - учтите, что это по-прежнему cookieЯ думаю, что это должно работать и с сессиями.

2 голосов
/ 16 февраля 2011

Вам следует взглянуть на Windows Identity Foundation и Службы федерации Active Directory в эту эпоху. Он основан на метасистеме Identity и модели идентификации на основе утверждений; упрощение этих типов сценариев идентификации / аутентификации и единого входа.

Руководство по идентификации и управлению доступом на основе утверждений

В вашем случае все три сайта будут передавать услуги аутентификации на аутсорсинг доверенной службе маркеров безопасности (STS). Этот STS может быть ADFS, если вы выставляете доменные имена AD в Интернет, в противном случае - настраиваемую реализацию WIF. Ваши веб-сайты перенаправляют неаутентифицированных посетителей на ваш STS, который передает им токены безопасности (обычно в форме SAML), которые веб-сайты могут принимать в качестве заявлений о личности.

...