Лучший способ использовать аутентификацию OpenID с Azure? - PullRequest
5 голосов
/ 03 июня 2009

Я пытаюсь заставить OpenID работать с приложением Windows Azure. В настоящее время я использую DotNetOpenAuth (раньше это был DotNetOpenID), и сначала у меня возникла проблема с шагом ретрансляции, поскольку Azure использует порт 20000 для внутреннего использования, и он передавался туда и обратно. Я нашел обходной путь для этого (я напишу для этого пост в блоге).

Следующая проблема - при запуске приложения в веб-ферме (несколько экземпляров) вам необходимо написать собственное «пользовательское хранилище» для DotNetOpenAuth и сохранить данные в базе данных. Это боль писать.

Должен быть более легкий путь. Возможно, одна из служб Azure? Кто-нибудь успешно запустил веб-приложение, которое проходит проверку подлинности с помощью OpenID и работает в Azure? Какой лучший или рекомендуемый способ?

1 Ответ

3 голосов
/ 04 июня 2009

Самый простой способ начать работу - вообще не использовать магазин. Вы можете установить Stateless = true на одном из элементов управления входом в систему, если вы их используете, или передать null в конструктор OpenIdRelyingParty. Это переводит ваш веб-сайт в режим OpenID без состояния или «тупой» режим. Пользователи немного медленнее входят в систему (если вы даже заметили), и вам не нужно писать этот класс хранилища базы данных.

Кроме того, вы можете голосовать за большее количество предварительно записанных хранилищ данных, в том числе за Azure на UserVoice.

Кстати, проблема с портом Azure должна была быть исправлена ​​ в DotNetOpenAuth v3.1. Если это не так, пожалуйста, активируйте этот билет.

...