当前位置: 首页 > news >正文

ASP.NET Zero--前端应用程序

前端应用程序

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)已知。

忘记密码

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

忘记密码

转载于:https://www.cnblogs.com/liyongke/p/6820232.html

相关文章:

  • CountDownLatch源码解析以及使用方法
  • CyclicBarrier源码解析以及示例
  • python生成式的send()
  • JUC之限流利器 Semaphore
  • 日程管理APP测试用例
  • volatile 底层原理以及特性详解
  • js---05 自定义属性
  • 深入解析JMM原理
  • 为Redmine的项目加上起止时间
  • 详尽Netty(一):初探netty
  • Php基础知识测试题
  • 设计模式(四):建造者模式的详细解析
  • [swust1745] 餐巾计划问题(费用流)
  • 详尽Netty(二):源码环境搭建
  • AssetBundle管理机制(上)
  • [数据结构]链表的实现在PHP中
  • [微信小程序] 使用ES6特性Class后出现编译异常
  • 【划重点】MySQL技术内幕:InnoDB存储引擎
  • Java 网络编程(2):UDP 的使用
  • Linux学习笔记6-使用fdisk进行磁盘管理
  • nginx 配置多 域名 + 多 https
  • Python爬虫--- 1.3 BS4库的解析器
  • Python学习笔记 字符串拼接
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 干货 | 以太坊Mist负责人教你建立无服务器应用
  • 判断客户端类型,Android,iOS,PC
  • 学习HTTP相关知识笔记
  • 一文看透浏览器架构
  • 异常机制详解
  • 运行时添加log4j2的appender
  • 在weex里面使用chart图表
  • 正则学习笔记
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • ​Base64转换成图片,android studio build乱码,找不到okio.ByteString接腾讯人脸识别
  • #gStore-weekly | gStore最新版本1.0之三角形计数函数的使用
  • #mysql 8.0 踩坑日记
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • $.proxy和$.extend
  • (04)odoo视图操作
  • (42)STM32——LCD显示屏实验笔记
  • (初研) Sentence-embedding fine-tune notebook
  • (分布式缓存)Redis哨兵
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (附源码)计算机毕业设计SSM智慧停车系统
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (四) 虚拟摄像头vivi体验
  • .Net FrameWork总结
  • /ThinkPHP/Library/Think/Storage/Driver/File.class.php  LINE: 48
  • ??eclipse的安装配置问题!??
  • [20150707]外部表与rowid.txt
  • [AIGC] 如何建立和优化你的工作流?
  • [Android Pro] AndroidX重构和映射