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

ASP.net网站的注册、登录和密码修改的操作详解

一、进入注册、登录和密码修改操作详解

         ASP.net网站为用户提供不同权限状态下的操作界面。根据用户登录状态,页面会显示不同的选项。

已登录用户的操作

 

图1 登录后操作界面

          当用户已登录系统时,会显示以下内容和功能:

1. 欢迎信息

页面顶部显示欢迎语句:
“你好, 用户名!”
其中 用户名 是当前登录的用户名称。

2. 注销操作

页面提供一个 注销按钮

  • 操作步骤
    1. 点击 “注销” 按钮。
    2. 系统将调用 Identity/Account/LogOut 地址的后端接口,注销当前用户。
    3. 用户注销成功后,页面会重定向到登录页面。
3. 修改密码

页面提供一个 密码修改按钮

  • 操作步骤
    1. 点击 “密码修改” 按钮。
    2. 系统跳转到密码修改页面(passwordchange 地址)。
    3. 在新页面输入相关信息以完成密码修改。
4. 当前用户初始化

如果系统未检测到当前用户信息,则会执行以下逻辑:

  • 初始化当前登录用户信息。
  • 使用 ProtectedSessionStore 将用户身份名称存储在会话中。

未登录用户的操作

 

图2 登录前操作界面

        当用户未登录系统时,会显示以下内容和功能:

1. 登录操作

页面提供一个 登录按钮

  • 操作步骤
    1. 点击 “登录” 按钮。
    2. 系统跳转到登录页面(login 地址)。
    3. 输入登录凭据后完成登录。
2. 注册功能(可选)

如果系统配置允许用户注册,则页面会显示一个 注册按钮

  • 操作步骤
    1. 点击 “注册” 按钮。
    2. 系统跳转到注册页面(register 地址)。
    3. 按照注册页面的提示填写信息,完成注册。
注意事项
  1. 按钮操作的结果

    • 注销:清除当前用户会话并重定向到登录页面。
    • 密码修改:仅针对已登录用户,未登录用户无权访问该页面。
    • 注册:功能显示与否由允许用户注册的系统功能参数设置决定。
  2. 用户初始化的自动化处理

    • 系统会检查当前登录用户是否已存在于当前登录用户集合中。如果不存在,则自动初始化用户信息并存储到会话中。
  3. 权限管理

    • 仅登录用户能看到 欢迎语句、注销按钮和密码修改按钮
    • 未登录用户仅能看到 登录和注册按钮(若允许注册)
  4. UI友好性

    • 所有按钮均为蓝色,风格一致,易于识别。
    • 功能之间的逻辑分离清晰,操作简单直观。

二、ASP.net网站的注册操作详解

图3   注册界面

1. 进入注册页面

  • 用户打开注册页面,会看到一个清晰分为两部分的界面:
    • 左侧显示一张注册相关的图片(仅在大屏设备上可见)。
    • 右侧为注册表单,用于输入注册信息。
2. 填写注册信息

在表单中依次填写以下信息:

  1. 用户名

    • 输入你的用户名,通常为有效的邮箱地址。
    • 用户名必须唯一,如果已被注册,会收到“注册失败,用户名已经存在!”的提示。
  2. 密码

    • 输入你的账户密码,建议使用复杂密码(字母、数字、特殊字符的组合)。
    • 确保密码符合系统要求,否则会注册失败。
  3. 确认密码

    • 再次输入与你密码相同的内容,用于确认密码输入无误。
    • 如果密码和确认密码不一致,系统将提示“注册失败,密码和确认密码不同!”。
  4. 注册口令

    • 输入系统管理员提供的注册口令。此口令用于限制注册权限,防止未经授权的用户注册。
    • 如果注册口令错误,系统将提示“注册失败,注册口令错误!”。
3. 提交注册信息
  • 确认所有信息填写无误后,点击 “注册” 按钮。
  • 系统会自动验证注册信息并尝试创建账户:
    • 如果注册成功,系统会自动登录,并跳转到登录成功页面。
    • 如果注册失败,页面会显示具体错误原因,例如密码复杂度不足或注册口令错误。
4. 取消操作
  • 如果用户不想继续注册,可以点击 “取消” 按钮。
  • 系统会清除当前操作,并导航回主页或基地址。
5. 完成注册与登录
  • 注册成功后,用户的账户信息会自动保存到系统中,无需再次注册。
  • 此外,系统会自动登录,用户可以立即开始使用系统提供的功能。

6. 常见问题及解决办法

  1. 用户名已被占用

    • 尝试更换用户名,建议使用不同的邮箱地址。
  2. 密码和确认密码不一致

    • 仔细检查两次输入是否完全一致。
  3. 注册口令错误

    • 确保输入的是管理员提供的正确口令。
    • 若不确定,请联系系统管理员。
  4. 登录失败

    • 如果注册成功但无法登录,请检查用户名和密码是否正确。
    • 如果提示账户被阻止,可能是账户被禁用,请联系管理员解决。
。三、ASP.net网站的登录操作详解

 图4 登录界面

1. 登录界面

       用户首次访问登录页面时,会看到一个包含用户名和密码输入框的表单。页面包括以下内容:

  • 用户名:请输入注册时使用的电子邮件地址。
  • 密码:请输入您的账户密码。
  • 记住我(可选):如果您希望在下次访问时自动登录,可以勾选此选项。此选项仅在系统允许的情况下显示。
2. 登录过程
  • 管理员账户:如果系统中不存在名为 admin 的账户,系统会自动创建一个默认的管理员账户,用户名为 admin,密码为 123456。此账户在单机模式下必需使用。
  • 其他用户:如果您输入的账户信息与系统中的注册用户匹配,系统会验证您的登录信息。如果信息正确,将允许您登录。
  • 登录失败
    • 如果用户名或密码错误,系统会提示 "登录失败,请检查你的用户名和密码!"。
    • 如果您的账户被禁用,系统会提示 "您的帐户已被阻止!"。
    • 在单机模式下,必须使用 admin 账户登录,非管理员账户将被拒绝登录。
3. 登录成功

       成功登录后,系统会生成一个唯一的登录标识符(Key),并将该标识符传递到会话中。然后,系统会重定向到主页面,用户可以继续使用系统功能。

4. 取消操作

       如果用户决定取消登录操作,可以点击“取消”按钮,页面将返回到首页或其他指定页面。

5. 注册新账户

        如果系统允许注册新用户,您可以通过点击 "立即注册" 链接进入注册页面并创建新账户。

注意事项

  • 系统单机模式:在系统的单机模式下,只允许使用 admin 用户登录。普通用户将无法登录。
  • 账户管理:管理员可以管理所有用户账户,包括创建、删除和禁用账户。

四、ASP.net网站的密码修改操作详解

       图5 密码修改界面

         以下是使用此密码修改页面的说明:

页面概览

该页面用于用户修改密码,由两部分组成:

  1. 左侧图片区域:仅在大屏幕设备上显示,展示一张与修改密码相关的图片。
  2. 右侧表单区域:用于用户填写信息并提交修改密码请求。

使用步骤

1. 确认用户名
  • 页面顶部会显示当前登录的用户名,供用户确认。
2. 填写密码信息
  • 原密码:输入您的当前密码以验证身份。
  • 新密码:输入一个您希望使用的新密码。
  • 确认新密码:再次输入新密码以确认其正确性。
3. 提交修改
  • 点击 “保存修改” 按钮提交表单。
    • 系统会验证输入的新密码与确认密码是否一致。
    • 如果一致,系统将尝试更新您的密码。
    • 如果更新成功,页面会自动跳转至主页面。
    • 如果更新失败,会显示相应的错误信息。
4. 取消操作
  • 如果您不想修改密码,可点击 “取消” 按钮,页面将返回主页面。

注意事项

  1. 密码验证

    • 原密码必须正确,否则无法进行修改。
    • 新密码与确认密码必须一致,否则会提示“新密码和确认密码不同!”。
  2. 账户状态

    • 如果您的账户被阻止,将无法进行密码修改,并会提示“您的帐户已被阻止!”。
  3. 错误提示

    • 若用户名或原密码输入错误,会提示“登录失败,请检查你的用户名和密码!”。

其他功能

  • 表单防止多次提交:表单设置了防止默认提交行为,确保功能运行稳定。
  • 自动跳转:修改成功后,页面会跳转到主页面。

        如果想看实际操作效果可以点击下面网站【信管通文件流转网站】,注意:仅能在台式机电脑的浏览器中浏览。 

相关文章:

ASP.net网站的注册、登录和密码修改的操作详解

一、进入注册、登录和密码修改操作详解 ASP.net网站为用户提供不同权限状态下的操作界面。根据用户登录状态,页面会显示不同的选项。 已登录用户的操作 图1 登录后操作界面 当用户已登录系统时,会显示以下内容和功能: 1. 欢迎信息 页面顶部…...

2024.12.29(进程线程实现并发服务器)

作业 多进程多线程并发服务器实现一遍提交。 服务器 #include <myhead.h> #define PORT 12345 #define IP "192.168.124.123"void *fun(void *fd) {int newfd *(int *)fd;char buff[1024];while(1){int res recv(newfd,buff,sizeof(buff),0);if(res 0){p…...

如何在 Ubuntu 上安装 PyTorch

简介 PyTorch 因其易用性、动态计算图和高效性而日益流行&#xff0c;成为实现深度学习模型的首选。如果你想探索这个工具并学习如何在 Ubuntu 上安装 PyTorch&#xff0c;本指南将对你有所帮助&#xff01; 在本教程中&#xff0c;我们将引导你完成在 Ubuntu 系统上使用 Pip…...

8-Gin 中间件 --[Gin 框架入门精讲与实战案例] 【文末有测试代码】

路由中间件 Gin 是一个用 Go (Golang) 编写的 HTTP web 框架。它以性能好、中间件支持灵活著称&#xff0c;非常适合用来构建微服务或 RESTful API 服务。下面我将提供三个使用 Gin 的路由中间件的完整示例。 示例 1: 简单的日志记录中间件 这个中间件会在每个请求处理前后打…...

【潜意识Java】深入详细理解分析Java中的toString()方法重写完整笔记总结,超级详细。

目录 一、toString() 方法是啥&#xff1f; &#xff08;一&#xff09;默认的 toString() 方法 &#xff08;二&#xff09;toString() 方法的作用 二、为啥要重写 toString() 方法&#xff1f; &#xff08;一&#xff09;提高代码的可读性 &#xff08;二&#xff09;…...

【论文笔记】Contrastive Learning for Sign Language Recognition and Translation

&#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&#xff0c;为生民立命&#xff0c;为往圣继绝学&#xff0c;为万世开太平。 基本信息 标题: Contrastive Learning for…...

Gitlab17.7+Jenkins2.4.91实现Fastapi/Django项目持续发布版本详细操作(亲测可用)

一、gitlab设置&#xff1a; 1、进入gitlab选择主页在左侧菜单的下面点击管理员按钮。 2、选择左侧菜单的设置&#xff0c;选择网络&#xff0c;在右侧选择出站请求后选择允许来自webhooks和集成对本地网络的请求 3、webhook设置 进入你自己的项目选择左侧菜单的设置&#xff…...

一起来看--红黑树

【欢迎关注编码小哥&#xff0c;学习更多实用的编程方法和技巧】 红黑树是一种自平衡的二叉搜索树&#xff0c;广泛应用于计算机科学中&#xff0c;尤其是在实现关联数组和集合时。它的设计旨在确保在最坏情况下&#xff0c;基本动态集合操作&#xff08;如插入、删除和查找&am…...

SpringBoot整合篇 05、Springboot整合Redission

文章目录 前言Redission详细配置步骤pom依赖application.yaml配置类CacheConfigEnvironmentContext RedissionController单测 前言 本篇博客是SpringBoot整合Redission&#xff0c;若文章中出现相关问题&#xff0c;请指出&#xff01; 所有博客文件目录索引&#xff1a;博客…...

供应链系统设计-供应链中台系统设计(六)- 商品中心概念篇

概述 我们在供应链系统设计-中台系统设计系列&#xff08;五&#xff09;- 供应链中台实践概述 中描述了什么是供应链中台&#xff0c;供应链中台主要包含了那些组成部门。包括业务中台、通用中台等概念。为了后续方便大家对于中台有更深入的理解&#xff0c;我会逐一针对中台…...

胡闹厨房练习(三)

ScriptableObject 一、初步了解 1、实质:是一种特殊类型的Unity对象, 2、作用:用于存储大量数据,而不必依附于游戏场景中的某个GameObject。 3、特点: 可以在不增加场景中对象数量的情况下,管理和存储复杂的数据结构、配置信息、游戏状态等。 4、适用:非常适合用来…...

关于ESD(静电放电)等级的划分

关于ESD&#xff08;静电放电&#xff09;等级的划分&#xff0c;主要依据不同的测试模型和测试标准。以下是对HBM&#xff08;人体模型&#xff09;和CDM&#xff08;充电器件模型&#xff09;两种测试模型下ESD等级划分的详细解释&#xff1a; HBM ESD等级划分 HBM ESD等级…...

探究步进电机与输入脉冲的关系

深入了解步进电机 前言一、 步进电机原理二、 细分三、脉冲数总结 前言 主要是探究以下内容&#xff1a; 1、步进电机的步进角。 2、什么是细分。 3、脉冲的计算。 最后再扩展以下STM32定时器的计算方法。 一、 步进电机原理 其实语言描述怎么样都不直观&#xff0c;我更建议…...

基于YOLOV5+Flask安全帽RTSP视频流实时目标检测

1、背景 在现代工业和建筑行业中&#xff0c;安全始终是首要考虑的因素之一。特别是在施工现场&#xff0c;工人佩戴安全帽是确保人身安全的基本要求。然而&#xff0c;人工监督难免会有疏漏&#xff0c;尤其是在大型工地或复杂环境中&#xff0c;确保每个人都佩戴安全帽变得非…...

Windows内置的服务器IIS(Internet Information Services)托管网站

一. 安装IIS 打开控制面板&#xff1a;在开始菜单搜索“控制面板”并打开它。程序和功能&#xff1a;点击“程序”然后选择“程序和功能”。启用或关闭Windows功能&#xff1a;在左侧菜单中选择“启用或关闭Windows功能”。查找并勾选IIS&#xff1a;在弹出的窗口中&#xff0c…...

虚幻引擎结构之UObject

一. UObject 的介绍 UObject 是虚幻引擎中的核心基础类,所有其他游戏对象和资源类都直接或间接地继承自它。作为虚幻引擎的基石,UObject 提供了多项关键功能,包括内存管理、序列化、反射(introspection)、垃圾回收以及元数据支持。在虚幻引擎中,UObject 类的实例通常被称…...

js的Reflect对象

Reflect 对象是 JavaScript ES6 中引入的一个内建对象&#xff0c;它提供了一系列与对象操作相关的方法。这些方法与 Object 对象上的方法类似&#xff0c;但在行为上有一些差异&#xff0c;并且更加规范和统一。Reflect 对象并不是一个构造函数&#xff0c;不能被 new 操作符调…...

this指向了谁?

看函数在执行的时候是如何调用的&#xff0c; 1 如果这个函数是用普通函数调用模式来进行调用&#xff0c;它内部的this指向了window; 2 如果一个函数在调用的时候是通过对象方法模式来进行调用&#xff0c;则它内部的this就是我们的对象; 3 如果一个函数在调用的时候通过构…...

基于Resnet、LSTM、Shufflenet及CNN网络的Daily_and_Sports_Activities数据集仿真

在深度学习领域&#xff0c;不同的网络结构设计用于解决特定的问题。本文将详细分析四种主流网络结构&#xff1a;卷积神经网络&#xff08;CNN&#xff09;、残差网络&#xff08;ResNet&#xff09;、长短期记忆网络&#xff08;LSTM&#xff09;和洗牌网络&#xff08;Shuff…...

mac系统vsCode中使用Better Comments在.vue文件里失效

问题&#xff1a;关于Better Comments默认在html、TS、JS中有效&#xff0c;在vue中无效,需要单独进行配置 windows系统可以参考友链Better Comments&#xff08;注释高亮&#xff09;在vue文件里失效的问题 关于Better Comments电脑的配置路径&#xff1a; Windows系统&…...

UE5.3 C++ Ceiusm中的POI 制作3DUI 结合坐标转化

一.核心思路WidgetComponent CesiumGloberAnchor 二.先制作POI 创建C Actor来制作&#xff0c;APOI。直接上代码 #pragma once#include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "CesiumGlobeAnchorComponent.h" #includ…...

一起学Git【第六节:查看版本差异】

git diff是 Git 版本控制系统中用于展示差异的强大工具。他可以用于查看文件在工作区、暂存区和版本库之间的差异、任意两个指定版本之间的差异和两个分支之间的差异等,接下来进行详细的介绍。 1.显示工作区与暂存区之间的差异 # 显示工作区和暂存区之间的差异,后面不加参数…...

numpy np.newaxis介绍

np.newaxis 是 NumPy 中用于增加数组维度的关键字。它的作用是为数组插入一个新的维度&#xff0c;从而改变数组的形状&#xff08;shape&#xff09;。 基本用法 np.newaxis 等价于 None&#xff0c;可以作为索引使用&#xff0c;用于在指定位置增加一个维度。增加的维度的大…...

小程序配置文件 —— 16 项目配置文件和配置 sass

目录 项目配置文件配置 sass 项目配置文件 在创建项目的时候&#xff0c;每个项目的根目录生成两个 config.json 文件&#xff08;project.config.json 和 project.private.config.json &#xff09;&#xff0c;用于保存开发者在工具上做的个性化配置&#xff0c;例如和编译有…...

【yolov5】实现FPS游戏人物检测,并定位到矩形框上中部分,实现自瞄

介绍 本人机器学习小白&#xff0c;通过语言大模型百度进行搜索&#xff0c;磕磕绊绊的实现了初步效果&#xff0c;能有一些锁头效果&#xff0c;但识别速度不是非常快&#xff0c;且没有做敌友区分&#xff0c;效果不是非常的理想&#xff0c;但在4399小游戏中爽一下还是可以…...

概率统计与随机过程--作业5

一、推导题 二、计算题 1、某单位为了研究太阳镜销售和广告费用之间的关系&#xff0c;搜集了以下数据&#xff0c;使用回归分析方法得到线性回归模型&#xff1a; 广告费用&#xff08;万元&#xff09;x 2 5 6 7 22 25 28 30 22 18 销售量&#xff08;个&#xf…...

“802.11g”,“802.11n”,“802.11ac”,“802.11ax”

802.11g、802.11n、802.11ac、802.11ax都是IEEE制定的无线局域网&#xff08;WLAN&#xff09;标准&#xff0c;它们各自具有不同的特点和性能。以下是对这四个标准的详细介绍&#xff1a; 1. 802.11g 定义&#xff1a;802.11g是IEEE制定的一种无线局域网标准&#xff0c;它提…...

Kubernetes 常用的网络插件

上篇内容跟大家简单聊了k8s网络模型原理。分别围绕着容器、Pod、Service、网络策略等展开了详细的讲解。这次想跟大家聊聊k8s的CNI网络插件。 CNI 是 Kubernetes 网络模型的核心组件&#xff0c;它是一个插件接口&#xff0c;允许用户选择和配置网络插件来管理 Pod 的网络。CN…...

Retrofit和rxjava 实现窜行请求,并行请求,循环多次请求,递归请求,错误重试

在使用 Retrofit 和 RxJava 时&#xff0c;可以通过多种方式实现多次请求&#xff0c;比如串行请求、并行请求、依赖请求等。以下是一些常见的实现方式&#xff1a; 1. 串行请求&#xff08;依赖关系&#xff09; 一个请求的结果作为另一个请求的输入&#xff0c;可以用 flat…...

2025年度好用便签推荐,电脑桌面便签app分享

在快节奏的现代生活中&#xff0c;高效的时间管理和任务规划变得尤为重要。一款好用的便签软件不仅能帮助我们记录灵感、待办事项&#xff0c;还能极大地提升我们的工作效率。 在众多电脑桌面便签中&#xff0c;好用便签以其出色的桌面便签功能脱颖而出&#xff0c;备受用户青…...