Как вручную указать, какая роль претендует на добавление к пользователю в ASP.NET Core Identity 2.0

#c# #asp.net-core #permissions #roles #asp.net-core-identity

#c# #asp.net-core #разрешения #роли #asp.net-core-identity

Вопрос:

Мне нужно создать систему авторизации для организационного приложения. Они просят меня использовать концепцию роли / разрешения для их приложения…

Я хочу, чтобы пользователь заявлял о роли как о каком-то разрешении, и когда я добавляю пользователя к роли, я хочу, чтобы пользователь получал все требования к роли; но в некоторых случаях я хочу иметь возможность удалять roleClaim / permission из списка требований пользователя…

Что ж, позвольте мне объяснить это, я хочу иметь что-то вроде этого :

 Role                RoleClaim ( I intend to use it as Role Permission ) 
-----------------------------------------------------------------------
WelfareDep          IssueNewRequest
WelfareDep          AcceptRequest
WelfareDep          RejectRequest
  

и иметь что-то подобное для пользователей:

 User          Role             UserClaim ( User Permission )
--------------------------------------------------------------------------
Jhon          WelfareDep       IssueNewRequest/AcceptRequest/RejectRequest
Mark          WelfareDep       IssueNewRequest/AcceptRequest/RejectRequest
Rose          WelfareDep       IssueNewRequest
Joe           WelfareDep       AcceptRequest/RejectRequest
  

но, насколько я искал, утверждения о роли автоматически добавляются к userClaim, у которых есть роль….

Я хочу иметь представление пользовательского интерфейса и контроллер, на роль которого претендует добавление к пользователю (user claim)…

Что мне делать?

Комментарии:

1. Суть утверждений о роли заключается в добавлении всех ит-утверждений в список утверждений пользователей. Если вы хотите, чтобы пользователю было назначено только определенное утверждение, используйте UserClaims вместо RoleClaims для его назначения

2. в моем проекте роль может иметь n roleClaim (разрешение роли)… и вся роль и ее утверждение о роли должны быть добавлены к пользователю в качестве разрешения …. но в некоторых случаях администратор хочет удалить только одно конкретное разрешение от пользователя, не удаляя его роль …. поэтому я должен справиться с этой ситуацией…. Я могу сделать что-то вроде PermissionGroupTable-> PermissionTable и UserTable -> UserPermissionTable без каких-либо проблем, но я действительно не хочу связываться с default Asp.net Объекты идентификации….