Универсальные поставщики ASP.NET и Azure - пользователи, созданные с помощью конфигурации ASP.NET, не работают - PullRequest
0 голосов
/ 19 марта 2012

Подробно описать это будет сложно, но здесь идет речь:

Конфигурация


  • Проект веб-сайта ASP.NET MVC 3.0
  • Visual Studio 2010 с пакетом обновления 1
  • Развертывание Windows Azure, включая вычисления, хранилище и SQL
  • SQL Azure имеет два набора БД; Разработка и производство

Задача


Использование универсальных поставщиков ASP.NET Я настроил базу данных Development_ApplicationServices в моей учетной записи SQL Azure. Затем я зашел на веб-сайт конфигурации ASP.NET, создал пользователей для разработки и назначил их на роли. Поскольку над этим проектом работают несколько разработчиков, это работает хорошо, поэтому у нас всегда есть одинаковые учетные записи по умолчанию, доступные для тестирования вариантов использования, связанных с ролями. Разработка шла гладко, без проблем с поставщиками.

Сегодня я впервые опубликовал приложение в вычислительном экземпляре Azure и попытался войти в систему. Внезапно учетные записи, которые мы использовали, несмотря на указание на одну и ту же базу данных, не работают. Если я зарегистрирую новую учетную запись, она будет работать нормально, пока я нахожусь в среде Azure, однако, если я запускаю в среде разработки, а затем учетная запись, которую я создал в экземпляре Azure, используя функцию регистрации MVC по умолчанию в контроллере учетных записей, не доступно, хотя я могу видеть это в БД, если я запрашиваю напрямую.

Вопрос


  1. Встраивает ли универсальный поставщик что-то о контексте сайта (из-за отсутствия лучшего термина) в хэш для идентификатора пользователя или пароля?
  2. Есть ли рекомендация по настройке среды Dev / Prod, связанной с SQL Azure и службами членства, которую я могу использовать для справки?

Рад ответить на вопросы, чтобы прояснить это, но я довольно озадачен на этом этапе и не знаю, что будет уместно включить, поскольку это кажется странным, по крайней мере, мне.

Спасибо заранее, K

1 Ответ

0 голосов
/ 13 июля 2012

У меня тоже было такое же поведение.Я разместил вопрос на официальных форумах Azure (http://social.msdn.microsoft.com/Forums/en-US/windowsazuredevelopment/thread/e8944c4d-5e22-4844-82fc-2e6863f0901a) и был направлен на ответ в другом посте здесь на stackoverflow, который я не нашел во время первоначального поиска.

Вы найдетеответ здесь:

Членство в ASP.NET - вход в систему работает локально, происходит сбой в Azure

Подводя итог, можно сказать, что тип хэширования, используемый в Azure, отличается от того, который сейчас используется.по умолчанию для .NET 4.0.Вы должны явно переопределить элемент machineKey по умолчанию и атрибут hashAlgorithmType элемента членства в Web.config, чтобы указать используемый метод хеширования.

Это сработало для меня!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...