Система аутентификации для веб-приложений ASP.NET? - PullRequest
0 голосов
/ 08 ноября 2008

У меня есть вопрос:

Как сделать ролевое веб-приложение? Например, на сайтах форумов существует много типов пользователей, администратор, модератор и т. Д. Роли этих типов пользователей хранятся в базе данных или web.config? И когда пользователь входит на наш сайт, как контролировать роли этого пользователя? Короче хочу узнать про авторизацию и аутентификацию.

Спасибо ..

Ответы [ 3 ]

0 голосов
/ 08 ноября 2008

@ Mavera:

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

TblUsers:
-----------------------------------------------------------------
| UserID (PK) | UserName | HashedPassword | PermissionLevel (FK)|
|---------------------------------------------------------------|
|     1       | BobTables| adfafs2312     |         2           |
-----------------------------------------------------------------

TblPermissions
-------------------------------------
|  PermissionID (PK) | Description   |
--------------------------------------
|         1          |     User      |
|         2          |   SuperUser   |
|         3          |     Admin     |
--------------------------------------

Вы можете добавить 3-ю таблицу, которая содержит отношение «один ко многим» между разрешениями TblPermissions и предоставляет реальные возможности, которые может быть разрешено пользователю.

Запросить пользователя будет так же просто, как:

SELECT TblUser.Username, TblPermissions.Description 
    FROM TblUsers, TblPermissions 
    WHERE TblUser.UserID = @UserID 
    AND TblUser.PermissionLevel = TblPermission.PermissionID;

Создайте пользовательский класс для инкапсуляции этой информации и сохраните ее в сеансе ASP.NET, когда они вошли в систему.

0 голосов
/ 08 ноября 2008

Я обнаружил, что встроенные схемы авторизации прекрасно подходят для простых ситуаций, когда вам нужно только в основном аутентифицировать, кто может входить, а кто выходить, но не хватает пользовательских ситуаций, таких как наличие специальных учетных записей администратора и т. Д. *

В этих ситуациях я создал собственную схему аутентификации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...