Identity‘s grain of authorize is role-based , Three tables (AspNetRoles , AspNetUserRoles , AspNetUsers) in the database is related .
dbo.AspNetRoles
Id(PK, nvarchar(128), not null)
Name(nvarchar(256), not null)
dbo.AspNetUserRoles
UserId(PK,FK,nvarchar(128), not null)
RoleId(PK,FK,nvarchar(128), not null)
dbo.AspNetUsers
Id(PK,nvarchar(128), not null)
Email(nvarchar(256), null)
......
UserName(nvarchar(256), not null)
So, I can only control authorization from role such as [Authorize(Roles = "Admin")].
Now, I want the authorization be more flexible , I want to add two tables (Powers, RolesPowers) into the database.
dbo.RolesPowers
RoleId(PK,FK,nvarchar(128), not null)
PowerId(PK,FK,nvarchar(128), not null)
dbo.Powers
Id(PK, nvarchar(128), not null)
PowerNa ...
Go to the complete details ...