前端应用程序

ASP.NET Zero包含可以作为您的公共网站或应用程序着陆页的起点的前端页面。首次运行项目时,您会看到主页如下所示:

这里有两页:主页和关于。这些页面的内容只是占位符和演示目的。您可以根据需要完全删除内容并构建页面。此外,你应该改变的标志与贵公司的标志。

请参阅 metronic前端主题,为所有可能性和组件构建一个更丰富的网站。

菜单在 FrontEndNavigationProvider 类中定义。当您在此添加新菜单项时,将自动显示在菜单中。 右上角有一个登录链接。此链接将使我们进入登录页面 以进入后端应用程序。

布局

前端页面的布局位于.Web项目的“ 视图/布局”文件夹下 :

_Layout是包含脚本和样式的主要布局文件。语言标志和菜单在 位于共享/组件下的标题组件中呈现。_PreFooter不使用,但如果需要,您可以将其添加到_Layout。

租户注册

当您点击前端应用程序中的“新租户”链接时,您可以注册成为新的租户:

在这里,您可以创建一个新的租户。TenantRegistration控制器是用来注册一个新的租户。可以启用/禁用租户注册,并可以在后端应用程序的设置页面中更改某些设置。

Account控制器

AccountController提供登录,注册, 忘记密码和电子邮件激活页面。

布局

帐户管理页面在Views / Account文件夹下有一个分隔的_Layout视图 :

位于view-resources / Views / Account文件夹下的 相关脚本和样式资源 :

类似地,应用程序的所有视图都具有wwwroot / view-resources文件夹下的对应样式和脚本文件。

登录

AccountController的主视图是“登录”页面:

登录部分上方的租户选择部分仅显示在 多租户应用程序中,并且“子域名租赁户名称检测” 不可用(请参阅主机设置部分)。当我们单击更改链接时,出现租户更改对话框,我们可以更改租户。 在初始数据库中有一个名为Default的租户(请参阅初始种子数据的实体框架部分)。将租户名称输入留为空,用host登录。

我们可以先使用admin用户名和123qwe 密码来运行应用程序。首先登录后,我们应该更改管理员密码,因为123qwe不是很安全:

更改密码后,我们将重定向到后端应用程序。

社交登录

ASP.NET Zero支持社交媒体登录。要启用它,我们应该改变如下设置一个ppsettings.json文件。

  “Authentication”:{
“Facebook”:{
“IsEnabled”:“false”,
“AppId”:“”,
“AppSecret”:“”
},
“Google”:{
“IsEnabled”:“false”,
“ClientId”:“”,
“ClientSecret”:“”
},
“Twitter”:{
“IsEnabled”:“false”,
“ConsumerKey”:“”,
“ConsumerSecret”:“”
},
“Microsoft”:{
“IsEnabled”:“false”,
“ConsumerKey”:“”,
“ConsumerSecret”:“”
}
},

您可以在网络上找到许多文档,以了解如何获取社交平台的身份验证密钥。因此,我们不会详细介绍在社交媒体上制作应用程序的细节。一旦你得到你的key,你可以把它们写入appsettings.json。启用它后,社交媒体标志会自动显示在登录页面上,如下所示:

OPENID连接登录

除了社交登录,ASP.NET Zero还包括OpenId Connect Login集成。它的配置可以在 appsettings.json中更改:

“OpenId”:{
“IsEnabled”:“false”,
“Authority”:“”,
“ClientId”:“”,
“ClientSecret”:“”
}

启用后,登录页面会显示一个徽标(与上述社交徽标相似)。

双因素登录

ASP.NET Zero可以提供两个因素登录,但是默认情况下禁用。您可以在主机设置页面(安全选项卡)中轻松启用它:

注意:在多租户应用程序中,只有在主机设置中启用了双重身份验证才可以向租户提供。此外,电子邮件验证和短信验证设置仅在主机端可用。这仅是设计。

启用后,输入用户名和密码后,系统会要求用户选择验证方式:

然后将确认码发送到所选提供商,用户在下一页中输入代码:

电子邮件验证

如果用户具有确认的电子邮件地址,则可用。由于电子邮件发送在调试模式下被禁用,您可以在日志中看到代码。在发布模式下,电子邮件将被发送(您可以更改此信息并使电子邮件可用于调试,请参阅发送电子邮件部分)。

短信验证

如果用户具有确认的电话号码,则可以使用此功能。SMS发送实际上没有实现(因为它需要与SMS供应商集成)。当前的实现只是将安全代码写入日志。您应该在解决方案中完成 IdentitySmsMessageService类,使其可用。否则,在设置中禁用短信验证。

用户锁定

如上一节所述,您可以配置用户锁定设置。用户在指定的计数和持续时间输入错误的密码时锁定。

注册

当我们点击登录页面中的“ 创建帐户 ”链接时,会显示一个注册表单:

用户可以注册租户,而不是Host,如果这是一个多租户应用程序。如果是单租户,这里就不会有租户名称。

Recaptcha(安全问题)是可选的。它使用Google的recaptcha服务。每个域名Recaptcha服务工作。因此,为了使其正常工作,您应该在https://www.google.com/recaptcha上为您的域创建自己的私钥和公钥, 并在appsettings.json文件中替换密钥。

电子邮件激活

当用户如上所示注册时,电子邮件确认码将发送到他的电子邮件地址。如果用户因某些原因未收到此电子邮件,可以点击电子邮件激活并重新发送确认码。

再次,租户名称输入未显示为单租户应用程序,或租户名称通过子域名(如tenancyname.mydomain.com)已知。

忘记密码

如果用户忘了他的密码,他可以点击“忘记密码”链接获取电子邮件重置密码。

ASP.NET Zero--前端应用程序的更多相关文章

  1. ASP.NET Core Web 应用程序系列(五)- 在ASP.NET Core中使用AutoMapper进行实体映射

    本章主要简单介绍下在ASP.NET Core中如何使用AutoMapper进行实体映射.在正式进入主题之前我们来看下几个概念: 1.数据库持久化对象PO(Persistent Object):顾名思义 ...

  2. 从实体框架核心开始:构建一个ASP。NET Core应用程序与Web API和代码优先开发

    下载StudentApplication.Web.zip - 599.5 KB 下载StudentApplication.API.zip - 11.5 KB 介绍 在上一篇文章中,我们了解了实体框架的 ...

  3. 创建ASP.NET Core MVC应用程序(6)-添加验证

    创建ASP.NET Core MVC应用程序(6)-添加验证 DRY原则 DRY("Don't Repeat Yourself")是MVC的设计原则之一.ASP.NET MVC鼓励 ...

  4. 创建ASP.NET Core MVC应用程序(5)-添加查询功能 & 新字段

    创建ASP.NET Core MVC应用程序(5)-添加查询功能 & 新字段 添加查询功能 本文将实现通过Name查询用户信息. 首先更新GetAll方法以启用查询: public async ...

  5. 创建ASP.NET Core MVC应用程序(4)-添加CRUD动作方法和视图

    创建ASP.NET Core MVC应用程序(4)-添加CRUD动作方法和视图 创建CRUD动作方法及视图 参照VS自带的基架(Scaffold)系统-MVC Controller with view ...

  6. 创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表

    创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表 创建数据模型类(POCO类) 在Models文件夹下添 ...

  7. 创建ASP.NET Core MVC应用程序(2)-利用MySQL Connector NET连接到MySQL

    创建ASP.NET Core MVC应用程序(2)-利用MySQL Connector NET连接到MySQL 用惯.NET的研发人员都习惯性地使用SQLServer作为数据库.然而.NET Core ...

  8. 创建ASP.NET Core MVC应用程序(1)-添加Controller和View

    创建ASP.NET Core MVC应用程序(1)-添加Controller和View 参考文档:Getting started with ASP.NET Core MVC and Visual St ...

  9. 不懂前端的程序员不是好美工——UI框架metronic使用教程——程序员视角

    本着不懂前端的程序员不是好美工的观点,所以作为一个仅懂一点前端的程序员,为了成为一个好美工,所以只能用些取巧的方法伪装一下. metronic一个基于bootstrap的响应式的后台管理平台的UI框架 ...

随机推荐

  1. [Swift]LeetCode956. 最高的广告牌 | Tallest Billboard

    You are installing a billboard and want it to have the largest height.  The billboard will have two ...

  2. [Swift]LeetCode975. 奇偶跳 | Odd Even Jump

    You are given an integer array A.  From some starting index, you can make a series of jumps.  The (1 ...

  3. [Swift]LeetCode984. 不含 AAA 或 BBB 的字符串 | String Without AAA or BBB

    Given two integers A and B, return any string S such that: S has length A + B and contains exactly A ...

  4. 关于QT下资源使用和资源占用…

    原文地址:关于QT下资源使用和资源占用内存过多的问题作者:技术成就梦想     最近研究了一下如何从外部动态调用图片的问题,从而研究了图片资源的使用方法.网上最常见的帖子是这个,感觉总结的还不错. h ...

  5. .net core在Ocelot网关中统一配置Swagger

    最近在做微服务的时候,由于我们是采用前后端分离来开发的,提供给前端的直接是Swagger,如果Swagger分布在各个API中,前端查看Swagger的时候非常不便,因此,我们试着将Swagger集中 ...

  6. asp.net core系列 32 EF查询数据 必备知识(1)

    一.查询的工作原理 Entity Framework Core 使用语言集成查询 (LINQ) 来查询数据库中的数据. 通过 LINQ 可使用 C#(或你选择的其他 .NET 语言)基于派生上下文和实 ...

  7. asp.net core 系列 22 EF(连接字符串,连接复原,DbContext)

    一.连接字符串 在上二篇中,ASP.NET Core 应用程序连接字符串是写死在ConfigureServices代码中,下面介绍通过配置来实现.连接字符串可以存储在 appsettings.json ...

  8. asp.net core 系列 3 依赖注入服务

    一. 依赖注入概述 在软件设计的通用原则中,SOLID是非常流行的缩略语,它由5个设计原则的首字母构成:单一原则(S).开放封闭原则(O).里氏替换原则(L).接口分离原则(I).依赖反转原则(D). ...

  9. 《HelloGitHub月刊》第 08 期

    <HelloGitHub>第 08 期 兴趣是最好的老师,<HelloGitHub>就是帮你找到兴趣! 简介 最开始我只是想把自己在浏览GitHub过程中,发现的有意思.高质量 ...

  10. 版本管理工具Git(一)简要介绍

    版本管理工具不但可以备份而且还能记录版本,也就是同一个东西不同时期的状态同时可以跟踪追溯.版本管理工具由CVS.SVN.Git.GitHub. 最早的版本管理工具CVS,因为多人开发项目导致工作很难协 ...