Personalizaciones de Identity

Completado

En la unidad anterior, ha agregado la funcionalidad Identity de ASP.NET  Core predeterminada a una aplicación web de ASP.NET Core. En esta unidad, se obtiene información sobre cómo personalizar y extender Identity de ASP.NET Core.

Extensión del modelo de datos de Identity

De forma predeterminada, Identity representa un usuario con una clase IdentityUser. En la unidad anterior, al ejecutar la herramienta de andamiaje, creó una clase denominada RazorPagesPizzaUser que hereda de IdentityUser. En la unidad siguiente, modificará la clase derivada para incluir propiedades para almacenar el nombre y el apellido del usuario.

Captura de pantalla de la clase RazorPagesPizzaUser derivada de IdentityUser.

La extensión del modelo de datos necesita cambios en la base de datos subyacente. Afortunadamente, Entity Framework Core simplifica esta tarea con las migraciones.

Personalización de la interfaz de usuario de Identity

Los componentes predeterminados de la interfaz de usuario de Identity se empaquetan en una biblioteca de clases Razor (RCL) de .NET Standard. Como se utiliza una biblioteca de clases Razor, al usar la interfaz de usuario predeterminada se agregan pocos archivos al proyecto. No es necesario que los archivos .cshtml físicos en el proyecto porque RCL proporciona los componentes de la interfaz de usuario.

Al personalizar la interfaz de usuario, primero debe usar la herramienta de aspnet-codegenerator nuevo para crear archivos .cshtml que se usarán en lugar de la RCL. La herramienta permite seleccionar explícitamente qué archivos se crean. Se usan los componentes de la interfaz de usuario de la RCL si los archivos correspondientes no están presentes.

Resumen

En esta unidad, ha obtenido información sobre cómo personalizar y extender Identity de ASP.NET Core. En la unidad siguiente, puede personalizar la interfaz de usuario de Identity.