Существуют ли пользовательские поставщики членства ASP.NET для продажи с дополнительной безопасностью? - PullRequest
8 голосов
/ 22 июля 2009

Есть ли в продаже пользовательские поставщики членства ASP.NET с дополнительной безопасностью?

Например, возможность иметь несколько вопросов / ответов, которые случайным образом представляются для сброса пароля, устанавливать количество попыток входа в систему, принудительно сбрасывать пароль каждые 30 дней, предотвращать дублирование паролей для нового пароля в течение определенного периода времени и т. Д.

1 Ответ

0 голосов
/ 17 марта 2011

Я недавно обновил свой пользовательский поставщик с некоторыми из ваших запрошенных функций. К сожалению, это не совсем для продажи, но я хотел сказать вам, что это не будет очень сложно сделать самостоятельно.

Функция множественного вопроса / ответа и принудительный сброс (истечение срока действия пароля) фактически могут быть реализованы с использованием любого поставщика, поскольку они не применяются непосредственно поставщиком. Чтобы включить сброс паролей, вы можете просто определить константу в ваших настройках приложения, то есть «PasswordLifetimeInDays». Затем на странице входа в систему просто переопределите метод Authenticate и проверьте свойство LastPasswordChange для MembershipUser. Если срок действия пароля истек, перенаправьте их на страницу ChangePassword, в противном случае войдите в систему. Ознакомьтесь с этой статьей , чтобы узнать, как реализовать эту функцию.

Сценарий с предварительно сгенерированным вопросом также не подходит для использования в качестве поставщика. Хотя стороннее решение может содержать этот механизм в отдельном API, я полагаю.

SqlMembershipProvider уже предоставляет способ установки количества попыток входа в систему с помощью атрибута MaxInvalidPasswordAttempts.

Действительно, функция дубликатов паролей - единственная часть, которая действительно принадлежит реализации провайдера, поскольку для отслеживания истории паролей требуется дополнительная таблица.

Дайте мне знать, если вы когда-нибудь решите реализовать этот материал самостоятельно, и я мог бы предложить еще несколько советов.

...