IdentityRole和IdentityUser之间的净核心差异

时间:2019-06-18 04:55:34

标签: c# .net-core asp.net-core-mvc asp.net-identity

在Net Core Identity Management中,IdentityRole和IdentityUser有什么区别?

public class AppIdentityRole : IdentityRole  
 { }  

 public class AppIdentityUser : IdentityUser  
 {  
     public int Age { get; set; }  
 }  


 public class AppIdentityDbContext   
   : IdentityDbContext<AppIdentityUser, AppIdentityRole, string>  
 {  
     public AppIdentityDbContext(DbContextOptions<AppIdentityDbContext> options)  
         : base(options)  
     { }  
 }  

2 个答案:

答案 0 :(得分:0)

身份用户:用于身份验证 例如:登录用户

身份角色:用于身份验证 例如:管理员(以上用户属于管理员角色)

用户具有角色,角色具有权限。喜欢创建应用

https://social.technet.microsoft.com/wiki/contents/articles/51333.asp-net-core-2-0-getting-started-with-identity-and-role-management.aspx

https://docs.microsoft.com/en-us/aspnet/core/security/authentication/identity?view=aspnetcore-2.2&tabs=visual-studio

答案 1 :(得分:0)

IdentityUser是ASP.NET Core MVC类,其中包含有关在应用程序中注册的用户的信息。它包含默认属性,例如用户名,电子邮件,密码等。可以继承此类,并提供更多属性。

IdentityRole是ASP.NET Core MVC类,其中包含有关您的应用程序中定义的IdentityUsers的用户角色(使用域)的信息。

IdentityUser可以包含许多IdentityRoles,而IdentityRole可以包含许多IdentityUsers。因此,在您的应用程序中,IdentityRoles可用作身份验证的筛选器,其中只有属于某个IdentityRole / s的IdentityUsers可以访问该类或方法。