Following are some of the feature of the ASP.NET Identity system
- One ASP.NET Identity system
- ASP.NET Identity can be used with all of the ASP.NET frameworks such as ASP.NET MVC, Web Forms, Web Pages, Web API and SignalR
- Ease of plugging in profile data about the user
- When you create new users in your application, it is now easy to add extra information about the user. For eg.. if you wanted to add a Birthdate option for users when they Register an account in your application.
- ASP.NET Identity uses Entity Framework Code First and it is possible to extend the POCO classes.
- Persistence control
- By default the ASP.NET Identity system will store all the user information in a database. ASP.NET Identity uses Entity Framework Code First to implement all of its persistence mechanism.
- If your application requirements are that this information might be stored in a different storage mechanism such as SharePoint, Azure Table Service, No Sql databases etc. it is now possible to plug in different storage providers.
- Unit testability
- ASP.NET Identity makes the web application more unit testable. You can write Unit Tests for the parts of your application that use ASP.NET Identity
- Simple Role provider
- There is a Simple Role providers which lets you restrict access to parts of your application by Roles. You can easily create Roles such as “Admin” and add Users to Roles.
- Claims Based
- ASP.NET Identity supports claims-based authentication, where the user’s identity is represented as a set of claims. There is a Claims
- External Logins
- You can easily add external logins such as Microsoft Account, Facebook, Twitter and Google to your application store the user specific data in your application using this system.
- You can also add login functionality using Windows Azure Active Directory and store the user specific data in your application using this system.