Если вы хотите хранить информацию о типе профиля, например, имя, фамилию, должность и т. Д., Для каждого пользователя, вы сможете использовать систему Profile
, встроенную в членство ASP.NET.Если вы хотите хранить больше информации, связанной с идентичностью, то да, вам нужно будет создать своего рода провайдера членства.На веб-сайте ASP.NET есть хорошее видео о создании собственного провайдера: http://www.asp.net/general/videos/how-do-i-create-a-custom-membership-provider
Что касается того, что разные типы пользователей могут выполнять различные действия, вы можете использовать систему Roles
, встроенную в членство ASP.NET.,Вы можете указать свои методы действий, чтобы разрешать вызовы только пользователям с определенными ролями.Например, если у вас есть метод действия PostArticle, и вы хотите, чтобы игроки могли только получить к нему доступ, у вас будет что-то вроде этого:
[Authorize(Roles="Player")]
public ActionResult PostArtcile(){
return View();
}
Атрибут Authorize
говорит MVC разрешать только аутентифицированным пользователям вРоль «Player» для вызова метода действия.Вам по-прежнему нужно будет ограничить доступность ссылки на статью в своем интерфейсе, но есть несколько способов сделать это.
Скотт Митчелл (Scott Mitchell) предлагает большую серию статей, охватывающих все аспекты членства:http://www.4guysfromrolla.com/articles/120705-1.aspx