Я работаю над веб-приложением ASP.NET. У меня есть эта хорошо известная проблема: каждый пользователь может принадлежать одной или нескольким ролям (администратор, публичные пользователи), и каждая роль может иметь один или несколько разрешений (может редактировать, удалять, загружать и т. Д.) И наоборот. Я хочу сделать что-л. Следующим образом: [http://demo.sitefinity.com/Sitefinity/Admin/Modules.aspx?route=GenericControlPanel.PermissionsView `1].В ASP.NET, что использовать для управления ролями и разрешениями, назначенными ролям?
Я нашел эти варианты реализации этого:
- используя NetSqlAzMan (но я не уверен, что он будет работать с нашим приложением, так как наши пользователи не хранятся в одной и той же БД, чем приложения, и, как мы использования форм аутентификации)
- реализует свои собственные классы, которые позволяют мне делать: User.HasPermission/AddPermissionToUser/и т.д.
- с использованием 2 роли поставщиков: один для управления ролями, один для управления разрешениями, зная, что эти провайдеры быть «связаны» из-за отношения m: n между ролями и разрешениями.
- Я использую сейчас пользовательский поставщик роли, поэтому другим вариантом было бы добавить методы для управления разрешениями для этого провайдера.
Я хочу также кэшировать роли и разрешения для данного пользователя. Думаю, мне понадобится время, чтобы сделать это самостоятельно, так что вы мне предлагаете?
Спасибо заранее
Первая пуля - вы можете использовать пользователей БД. –