修改 sign/login UI for oidc-client with .net core react template

modify sign/login UI for oidc-client with .net core react template

使用 vscode 或 VS2019 和 .net core 3.1,我创建了带有身份验证个人的新项目

使用这个命令dotnet new react --auth Individual 需要更改登录屏幕 UI 我找不到任何 UI 登录组件 UI

有什么方法可以更改或修改登录、注册或用户配置文件 UI?

我们在 Identity Server 和 OIDC 上遇到了类似的问题,但我不确定设置是否完全相同。对我们来说,生成的 login/auth 个页面位于:

(项目)> 区域 > 身份 > 页面 > 帐户

这里是截图,你也可以尝试在项目中搜索一些文件名。

然而,尽管使用了 React 模板,并且在 React 中完成了所有操作,但身份验证组件是 MVC(或 Razor 或其他东西,不记得了)。所以我们最终构建了自己的客户端页面,设置路由并构建自定义控制器操作以与身份服务器通信。我们最终让它工作了,但老实说,它比应该的要麻烦得多。

该模板使用 ASP.NET 用于验证和存储用户的 Core Identity 与用于实施 Open ID Connect 的 IdentityServer 相结合。这样你就需要Scaffold Identity in ASP.NET Core projects修改UI比如登录,注册用户...

请尝试按照以下步骤操作:

  1. 使用模板创建项目:dotnet new react --auth Individual 并构建项目。

  2. 如果您之前没有安装 ASP.NET 核心脚手架,请在 vs code 的终端中安装它:

    dotnet tool install -g dotnet-aspnet-codegenerator

  3. 向项目添加所需的 NuGet 包引用:

    dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design

    dotnet add package Microsoft.EntityFrameworkCore.SqlServer

  4. 您可以列出可以使用 dotnet aspnet-codegenerator identity --listFiles

  5. 构建的文件
  6. 运行 具有所需选项的身份脚手架,使用 --files 脚手架特定文件,为您的数据库上下文使用正确的完全限定名称:

    dotnet aspnet-codegenerator identity -dc ProjectName.Data.ApplicationDbContext --files "Account.Register;Account.Login"

    如果您 运行 Identity 脚手架没有指定 --files 标志或 --useDefaultUI 标志,所有可用的 Identity UI 页面都将在您的项目中创建。

现在如果要修改登录UI,可以在your project --> Areas-->Identity -->Pages-->Account -->Login.cshtml页面修改相关页面。