У меня есть базовый веб-сайт ( Asp.net WebForms приложение), работающий под ie.
http://localhost:90/
Затем я создал новое (на этот раз Asp.net MVC ) приложение и добавил его в
http://localhost:90/mvc/
но не просто как простая виртуальная папка, а как папка приложения путем определения другого пула приложений для его запуска по сравнению с родительским приложением .
Поскольку браузеры не могут знать, что в одном и том же домене есть два разных приложения, оно будет работать следующим образом:
- доступ пользователей
http://localhost:90/
- родительское приложение перенаправляет пользователя на экран проверки подлинности форм
- пользователь успешно авторизуется
- родительский веб добавляет cookie для аутентификации
- доступ пользователей
http://localhost:90/mvc
- браузер присоединяет тот же файл cookie от родительского приложения
Возможно ли, чтобы я аутентифицировал пользователя на основе этого же файла cookie? Я бы настроил свое приложение MVC для перенаправления входа в родительское приложение, чтобы иметь общий экран аутентификации. Но я хотел бы знать, кто прошел проверку подлинности и работает с этого момента.
Я читал кое-что об использовании одних и тех же значений system.web/machineKey
, чтобы обеспечить такую функциональность, но я хотел бы привести примеры из реальной жизни.
Мне известно, что эти два приложения не смогут совместно использовать состояние сеанса, и это не проблема, потому что я не хочу, чтобы они это делали. Все, что я хочу, это своего рода единый вход (SSO / SSS)
Возможно ли это? Как?
Важно
Я читал другие вопросы / ответы по этому поводу, но они либо спрашивают о междоменном / межсерверном и т. Д. Этот вопрос находится на том же веб-сайте IIS.