Нужно ли использовать инструмент «Конфигурация ASP.net» для управления пользователями? - PullRequest
0 голосов
/ 04 марта 2011

Я только что изучал новый учебник MVC Music Store на asp.net. Одним из последних шагов является добавление «Членство и авторизация». В этом руководстве я запустил инструмент настройки, который, похоже, не имеет никакого отношения к моему сайту.

2 вещи:

  1. Где хранятся пользователи, которых я создаю с помощью этого инструмента?
  2. Могу ли я обойти этот инструмент и реализовать свою собственную вещь?
  3. Если я могу сделать 2 выше и обойти инструмент, могу ли я использовать аннотации, такие как:

    [Авторизироваться (Roles = "Администратор")]

Инструмент может быть неоднозначным. Я имею в виду инструмент администрирования веб-приложений ASP.Net. Это сине-белая веб-страница с несколькими вкладками в верхней части (Домашняя страница, Безопасность, Приложение, Поставщик).

Ответы [ 3 ]

2 голосов
/ 04 марта 2011

Он работает так же, как членство в ASP.NET и роли, которые всегда работали, и фактически использует одну и ту же систему.Здесь уже есть тонны вопросов по этой теме, и быстрый Google также найдет тонны статей.

Если говорить точнее, инструмент asp.net сохраняет пользователей в базе данных в таблицах aspnet_ *.Да, вы можете обойти это и реализовать свой собственный, хотя это обычно не требуется.Инструмент asp.net - это простой и быстрый инструмент для управления этим процессом, и вам, вероятно, придется реализовать свой собственный.

Да, вы все еще можете использовать AuthorizeAttribute .. опять же, все это частьобщая система членства и ролей, предоставляемая asp.net (о которой имеется масса информации).

1 голос
/ 04 марта 2011

Вам не нужно его использовать, и вы не захотите, если у ваших пользователей будет больше, чем просто имя и адрес электронной почты. Если вы используете его вообще, это отправная точка для добавления ваших начальных ролей или ключевых пользователей. Поскольку существует целый ряд опций провайдера , которые имеют различные значения, вам, вероятно, придется выполнять множество пользовательских программ. Например, ваши настройки для enablePasswordRetrieval, enablePasswordReset или requiresQuestionAndAnswer начнут определять, какие действия вам нужно выполнить.

Поиск членства в ASP.NET в сочетании с MVC должен привести вас к тому, что будет работать лучше всего в вашем проекте. Недавно я прошел через добавление и изменение базовых действий ASP.NET MVC Account Controller, чтобы пользователи могли управлять своей учетной записью (включая проверку электронной почты, сброс забытых паролей и изменение секретных вопросов / ответов) и, что не менее важно, создание пользователей. Контроллер с действиями, которые помогают администраторам выполнять обслуживание пользователей (назначение ролей, разблокировка учетных записей или сброс паролей).

Я бы порекомендовал посмотреть Web Profile Builder , чтобы получить строго типизированный доступ к данным профиля, если вы собираетесь хранить больше информации о ваших пользователях (например, фамилию и , фамилию и т. Д.). ). Немного удивительно, сколько разработчик может реализовать в этом конкретном случае.

1 голос
/ 04 марта 2011

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

...