c# - Almacén de cuentas de usuario local para API web en ASP.NET Core 2.0
entity-framework asp.net-core-mvc (2)
Estoy usando ASP.Net Core 2.0, quiero crear un proyecto de API web con el tipo de Autorización de Cuentas de Usuario Individual, pero la única opción es Connect to an existing user store in the cloud
.
¿Cómo puedo agregar una plantilla para la API web con cuentas de usuario individuales con Store user accounts in-app
?
Esta opción está disponible para la aplicación web pero no para la API web.
Intenta iniciar tu proyecto en la consola con el comando
dotnet new webapi -au Individual
Puedes abrir tu proyecto en VS después de eso. (para trabajar alrededor del diálogo). A continuación, puede utilizar, por ejemplo, el atributo de autorización. Pero el proyecto todavía está configurado para usar la autenticación del portador de Azure. Tienes que decidir de dónde obtener la identidad. Puede tomar identityserver4 o crear sus propios "proveedores de almacenamiento personalizados para ASP.NET Core Identity" ( MS-Docs )
La diferencia con la aplicación web de MVC: aquí tiene un controlador de cuenta con vistas para manejar los registros y obtener un nombre de usuario y contraseña, etc.
Me sorprendió lo mismo y terminé seleccionando la Web Application
lugar de la Web API
. Probablemente exista una lógica en la eliminación de "cuentas dentro de la aplicación" de MS: con la API web, probablemente esté escribiendo SPA, y las "vistas" (inicio de sesión, contraseña olvidada, etc.) deben estar en su código de cliente; No hay vistas de Razor en el servidor.
Tenga en cuenta que si va con IdentityServer 4, las vistas se generan en la aplicación IS4; no en la aplicación Business API.
Así que creo que Microsoft está tratando de darte una pista aquí ...