Настройка членства в ASP .NET - PullRequest
1 голос
/ 29 ноября 2011

После того, как я узнал о встроенной среде ASP .NET Membership, я решил, что этот материал почти подходит для меня. Но есть пара особенностей и правок, которые я хотел бы получить:

  1. Двухэтапная регистрация: после того, как пользователь введет всю информацию об учетной записи, письмо с подтверждением должно быть отправлено на напечатанное электронное письмо. Перед проверкой адреса электронной почты невозможно войти в систему (должно появиться какое-то сообщение, сообщающее пользователю, что проверка электронной почты необходима, прежде чем разрешено использовать учетную запись).

  2. Схема членства в БД:

    • Нет необходимости хранить вопрос пользователя для восстановления пароля.
    • Незаконные попытки входа в систему неэффективны.
    • По умолчанию aspnet_ Префикс, вероятно, будет изменен.
    • ... и т. Д.

Для первого элемента я знаю, что могу использовать собственный класс, полученный из SqlMembershipProvider. Я прав насчет этого? Не могли бы вы указать мне на хороший пост, где я мог бы научиться.

Для второго улучшения это похоже на проблему. В этой книге я прочитал, что это не так просто:

• Поставщикам встроенного хранилища SQL необходим прямой доступ к вашей базе данных, что чувствует себя немного грязным, если у вас есть четкое представление о модели предметной области или использовать определенный Технология ORM в других местах.

• Встроенные поставщики хранилищ SQL требуют определенной схемы данных этим нелегко поделиться с остальными данными вашего приложения схема.

Ответы [ 2 ]

1 голос
/ 29 ноября 2011

Самая большая проблема, с которой я столкнулся при создании подкласса SqlMembershipProvider, заключается в том, что он не дает вам строку подключения для работы.Вы должны разбить класс на части, чтобы получить что-нибудь полезное для работы большинства современных систем входа в систему.

Я не уверен насчет имен таблиц базы данных - я не думаю, что это контролируется SqlMembershipProviderно на самом деле он находится внутри класса установщика ASP.NET.

Мой совет - создать свой собственный с нуля и использовать встроенные помощники FormsAuthentication.Это действительно не большая задача по сравнению с часами раздражения, необходимыми для соответствия провайдерам.Я сделал это с Roadkill после перехода по маршруту поставщика членства и обнаружения его в тупике, особенно для поддержки Active Directory.

0 голосов
/ 29 ноября 2011
  1. Вы можете полностью контролировать свою схему БД членства с помощью Реализация пользовательского членства (конечно, вам также нужно реализовать Провайдер членства для пользователя ).
  2. Настройка шагов создания пользователя с помощью настройка элемента управления CreateUserWizard .Вы будете менять его шаблон и обрабатывать события, я не думаю, что вам нужно его переопределять.
...