2009-11-25 5 views
0

Мы запускаем новый веб-сайт с использованием поддомена и должны гарантировать, что пользователи, входящие в исходный (основной домен) сайт, также проходят аутентификацию на новом сайте.Совместное использование аутентификации ASP.NET между сайтами

Я считаю, что мне нужно обеспечить, чтобы все связанные настройки web.config (аутентификация форм, имена файлов cookie и т. Д.) Одинаковы в обоих приложениях, а также вручную устанавливают проверку подлинностиKey/decryptionKeys machineKey (опять же, то же самое в обоих приложениях).

Мой вопрос: если я сейчас вручную настрою эти ключи в главном приложении, это приведет к поломке существующих логинов?

Мы используем «хэшированный» формат для паролей.

ответ

2

Зависит от того, что вы подразумеваете под словом «break». Если вы измените ключи machineKeys/encryptiong, пользователям, возможно, придется зайти в систему, но функциональность входа в систему будет работать по-прежнему.

Вам также необходимо убедиться, что домен для вашего файла cookie установлен в domain.com в обоих местах (без www), или файлы cookie аутентификации не будут корректно отображаться между сайтами.

+0

, чтобы дополнить этот ответ, домен cookie установлен на элементе

в файле web.config: http://msdn.microsoft.com/en-us/library/1d3t3c61.aspx. Обратите внимание, что это не сработает, если у вас есть другие сайты, для которых требуется другая аутентификация в том же домене, который также запущен asp.net. – zcrar70

+0

Моя первоначальная проблема заключалась в том, что изменение ключей проверки/дешифрования могло каким-то образом испортить (или сделать непригодным) хешированные пароли, хранящиеся в базе данных. Это (к счастью) не так, и упомянутый выше подход работает отлично. Благодарю. –

Смежные вопросы