Я пытаюсь выяснить, как получить DotNetOpenAuth (http://www.dotnetopenauth.net/), работающий в моем приложении веб-форм
Я не понимаю, где начать. У меня есть OpenIDSelector на моем Login.aspx, который позволяет Вам выбрать Google или Yahoo. Можно выбрать один, затем всплывающее окно подходит и позволяет Вам войти в систему. После того как Вы входите в систему, программа зависает, потому что она пытается сделать что-то с базой данных???
Я не могу только использовать некоторое управление (как OpenIDSelector) и возвратить это, пользователь аутентифицировался, получите их ClaimedID и обработайте остальных сам?
Править: Попытка начать с OpenID в Веб-формах? Пойдите Сюда...
Вам не обязательно использовать шаблон проекта. Вы можете добавить элемент управления OpenIDSelector в любое веб-приложение, и он будет просто работать в минималистичном стиле "дайте мне имя пользователя" из коробки. В библиотеке DotNetOpenAuth нет никаких SQL-зависимостей. Просто обработайте событие OpenIdSelector.LoggedIn
, и вы получите нужное вам имя пользователя.
Шаблон проекта, каким бы раздутым он вам ни показался, предполагает, что у вас действительно есть данные пользователей, которые нужно хранить, и что вы хотите обеспечить разумный вход в систему и управление учетными записями. Он также работает в веб-фермах и облачных средах. Если вы начинаете с нуля, это отличный способ начать работу, хотя, естественно, некоторые коды, с которыми он поставляется, будут применяться меньше, чем другие, именно поэтому у вас есть исходный текст - чтобы вы могли его изменить.
Да, шаблон проекта включает зависимость от базы данных. Он использует Linq-to-Entities, поэтому работает любая база данных с провайдером Entities - не только SQL Server. И он поставляется со встроенной схемой для этой базы данных. Просто запустите setup.aspx, и он создаст для вас базу данных в вашей локальной установке SQLExpress.
1 - заявленный идентификатор - это то, что вы ищете. проблема в том, что google и подобные сервисы используют "направленную идентификацию", что означает, что заявленный идентификатор будет связан с регионом, из которого вы пришли. чистый результат для вас - один и тот же пользователь может зайти под несколькими разными заявленными идентификаторами.
2 и 3 я не знаю - я предполагаю, что это некая встроенная функциональность DNOA, но я с ней не играл.
4 - не нашел. dnoa покрывает все случаи, о которых вам нужно беспокоиться.
вот шаг за шагом, ссылка на который есть на их веб-сайте. http: //www.plaxo .com / api / openid_recipe