2013-02-15 3 views
1

Я хочу использовать домен: aaaa.com, чтобы иметь форму для входа на сайт в домене: cccc.com.Использование «кросс-домена» для входа в систему для другого домена

Примечание. У меня есть полный контроль над сервером на cccc.com и у вас есть установка CORS на сервере cccc.com. Я, по сути, полностью контролирую сервер на aaaa.com.

Я использую jQuery $ .ajax для отправки POST на сервер asp.net mvc 3 cccc.com. Похоже, я верну ответ, и в ответ вижу cookie ASP.NET_SessionId и .ASPXAUTH. Когда я получаю правильный ответ в javascript без ошибок входа, я хочу перенаправить на cccc.com/Home/Index, используя window.location. Кажется, что все работает до этого момента. Аутентификация, получение правильного ответа и т. Д. Однако при переадресации javascript cccc.com все еще хочет, чтобы я снова заходил в систему. Почему это происходит?

Это потому, что cookie аутентификации принадлежит aaa.com? Как я могу обойти это?

Благодаря

ответ

1

Да, печенье аутентификации будет принадлежать другой сайт, и не являются общими.

Если у вас был поддомен cccc.com, а не полностью отдельный домен, он будет работать, если вы установите общий файл cookie домена.

Как бы то ни было, вам придется скопировать файл cookie при входе в систему, выходе и других методах проверки подлинности, которые изменяют способ хранения файлов cookie. Если вы работаете на другом сервере, вы также потеряете возможность выполнять сеансы, если у вас нет сервера состояния сеанса.

Вы можете попробовать скопировать файлы cookie с помощью javascript после завершения процедуры POST для входа в систему.