У меня есть базовый веб-сайт (приложение Asp.net WebForms), работающее под тем.
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.