У меня есть два участка: www.forums.mysite.com и www.mysite.comАутентификация пользователя в поддомене и его вход в родительский домен?
форумах уже установлена проверка подлинности, и я хотел бы использовать его.
Я использую C# MVC .NET 4.5
я создал два сайта в IIS 8.5: MySITE и форумы
MySITE привязок:
- Тип: HTTP
- IP адрес: Все Unnasigned
- Порт: 80
- Имя хоста: www.mysite.com
форумы привязок:
- Тип: HTTP
- IP адрес: Все Unnasigned
- Порт: 80
- Имя хоста: WWW .forums.mysite.com
Я также добавил е домены в мой файл хозяина:
- MyIP www.mysite.com
- MyIP www.forums.mysite.com
Я добавил MachineKey в обоих приложениях файлы Web.config и ключи идентичны:
<machineKey validationKey="C50B3C89CB21F4F1422FF158A5B42D0E8DB8CB5CDA1742572A487D9401E3400267682B202B746511891C1BAF47F8D25C07F6C39A104696DB51F17C529AD3CABE" decryptionKey="8A9BE8FD67AF6979E7D20198CFEA50DD3D3799C77AF2B72F" validation="SHA1" />
В контроллере субдомена (Форум), пользователь входит в систему, и я изменил куки следующим образом:
FormsAuthentication.SetAuthCookie(username, model.RememberMe);
var cookie = FormsAuthentication.GetAuthCookie(username, model.RememberMe);
cookie.Domain = "mysite.com"; //this is the parent domain
//I've also tried with .mysite.com
Response.AppendCookie(cookie);
Я могу войти через форум, но потом, когда я иду на основной сайт (mysite.com), я не вошли в систему ... Я не понимаю, почему нет.
В качестве теста в mysite.com/home/index.cshtml (домашняя страница), я добавил это:
<h1>
Logged in: @User.Identity.IsAuthenticated
</h1>
но результат всегда ложно, даже если оба сайта имеют то же самое. ASPXAUTH cookie ...
Любые идеи?
Я попытался, что тоже не повезло,.. ( – pookie
@pookie, см обновить – ankhzet
просто попытался это, но до сих пор не работает Удален куки, чтобы быть безопасным, слишком – pookie