Мы разрабатываем решение SAAS для крупной компании, в которой врачи могут просматривать пациентов и делать мутации, заказывать продукты, предоставлять лицензии. Этот проект предназначен для 4 отдельных компаний под одной зонтичной компанией. Для каждой компании мы разработали портал. Все порталы используют один и тот же код, но имеют строгую разделенную базу данных, поскольку база данных содержит всю информацию о пациенте. Мы используем Sitecore в качестве CMS.Обмен рисками безопасности cookie ASP.NET_SessionId и .ASPXAUTH
Клиент решил использовать виртуальные папки вместо поддоменов для производственной среды. Например, наш URL-адрес для развертывания: acc-portal1.umbrella.com. Для производственной среды им нужен URL-адрес, например: acc.umbrella.com/portal1. Один сертификат SSL используется для всех порталов и запросов.
Для аутентификации пользователей используется поставщик членства (проверка подлинности форм). Пользователи не могут входить в систему с той же учетной записью, например, в Portal1 и Portal3 из-за использования разделенных баз данных. Поскольку мы используем проверку форм, используется cookie «.ASPXAUTH». Конечно, также используется cookie «ASP.NET_SessionId».
Поскольку клиент хочет использовать виртуальные папки вместо поддоменов, куки-файлы разделяются на всех порталах. Можно установить «путь» на узле в web.config, но этот путь динамически читается Sitecore и разрешен в конвейере. Я не нашел способ переопределить этот путь после его загрузки в web.config. Также я не нашел способ изменить путь к файлу cookie ASP.NET_SessionId.
Мой вопрос: является ли (безопасностью) риск поделиться этими кукисами на нескольких порталах (помните, что они должны быть полностью разделены)? Есть ли другие проблемы, которые может вызвать эта установка?
Надеюсь, кто-то может помочь!
Я согласен - совместное использование вещей в одном домене - плохая идея (так как SOP обычно защищает другие сайты от уязвимости, например XSS, на одном сайте). – SilverlightFox