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

技术分享-商城篇-用户中心-注销修改(二十三)

前言

上一篇文章技术分享-商城篇-用户中心(二十二)在构建高效、安全的商城用户中心时,确保用户账户的安全性与便捷性至关重要。本文将重点阐述三大核心功能——修改密码、协议授权及注销账户的业务逻辑、设计思路及注意事项,旨在为用户打造一个既安全又易于操作的在线体验。
在这里插入图片描述

一、修改密码:强化账户安全的第一步

业务逻辑与设计思路

修改密码功能旨在提升用户账户的安全性,防止未授权访问。采用手机号验证码作为验证条件,是因其普及性与即时性,能有效降低被恶意破解的风险。用户发起修改密码请求后,系统首先验证用户身份,通过向注册手机号发送一次性验证码来完成。验证码的验证确保了操作的真实性与用户意愿的确认。
在这里插入图片描述

实现过程

  1. 用户发起请求:用户在用户中心页面选择“修改密码”,输入当前手机号。
  2. 发送验证码:系统调用短信接口服务商(如阿里云、腾讯云等),发送包含验证码的短信至用户手机,同时记录验证码、发送时间及用户信息,以便后续验证。
  3. 安全验证:用户输入收到的验证码,系统验证其正确性、时效性(如设置5分钟内有效)及发送频率(如每日不超过5次),防止短信轰炸。
  4. 设置新密码:验证通过后,用户进入新密码设置页面,按规则(8-16位,包含字母、数字和特殊字符中的至少两种组合)设置新密码。
  5. 密码更新:系统验证新密码的复杂度,通过后更新数据库中的密码信息,并提示用户修改成功。

注意事项

  • 确保短信发送接口的安全性,采用HTTPS等加密方式传输数据。
  • 设定合理的验证码有效期和发送频率限制,防止滥用。
  • 密码复杂度要求需明确告知用户,提高账户安全性。
二、协议授权:透明化信息处理的基石

协议内容概述

  • 注册登录协议:明确用户注册、登录的条件、流程及双方权利义务,如账号所有权、使用权等。
  • 用户信息收集协议:详细阐述收集用户信息的种类、目的、使用范围及保护措施,保障用户隐私权。
  • 注销协议:说明注销账户的流程、后果及平台对用户数据的处理方式,确保用户知情权。

设计思路

协议内容应清晰、易懂,避免法律术语的滥用,确保用户在注册、使用及注销过程中充分理解并同意相关条款。同时,提供便捷的协议查看入口,便于用户随时查阅。

三、注销功能:谨慎处理,尊重用户选择

业务逻辑与实现过程

注销账户是用户放弃平台服务的最终手段,其过程需极为谨慎。系统首先验证用户身份,确认注销意愿后,检查账户体系内是否有未完成的交易(如待发货订单、未结算余额、积分等)。若有,需引导用户处理完毕后再行注销。
在这里插入图片描述

实现步骤

注销账户的详细流程因不同的在线平台和服务而有所差异,但通常可以归纳为以下几个关键步骤:

1、查找注销入口
  • 步骤说明:登录后,用户需要在平台或服务的界面上找到“注销账户”的入口。这通常位于账户设置、安全中心或个人资料等页面。
  • 注意事项:如果找不到注销入口,用户可以尝试查看平台的帮助中心、联系客服或搜索相关的注销指南。
2、阅读注销须知
  • 步骤说明:在提交注销申请之前,平台或服务通常会要求用户阅读注销账户的相关说明和条件。这些说明可能包括注销后的影响、账户内余额的处理方式、未完成的订单或交易的处理等。
  • 注意事项:用户务必仔细阅读这些说明,确保自己了解注销的后果,并按照平台的要求进行操作。
3、满足注销条件
  • 步骤说明:为了满足注销条件,用户可能需要执行一系列操作,如解除绑定的银行卡、手机号、邮箱等,清理账户余额,处理未完成的订单或交易等。
  • 注意事项:不同平台对注销条件的要求可能不同,用户需要根据平台的要求进行操作。
4、身份验证
  • 步骤说明:为了确保是账户所有者本人操作,平台或服务可能会要求用户进行身份验证。身份验证的方式可能包括短信验证码、密码验证、人脸识别等。
  • 注意事项:用户需要按照平台的要求进行身份验证,以确保注销申请的有效性。
5、提交注销申请
  • 步骤说明:在确认满足注销条件并完成身份验证后,用户可以提交注销申请。提交方式可能是在线填写申请表、发送电子邮件或联系客服等。
  • 注意事项:用户需要确保提交的申请信息准确无误,并按照平台的要求进行提交。
6、等待审核
  • 步骤说明:提交注销申请后,平台或服务会对申请进行审核。审核时间的长短因平台而异,用户需要耐心等待。
  • 注意事项:在等待审核期间,用户不要进行任何可能影响注销申请的操作,如登录账户、修改账户信息等。
7、注销完成
  • 步骤说明:如果注销申请通过审核,平台或服务会正式注销用户的账户,并可能发送通知给用户。
  • 注意事项:注销完成后,用户将无法再使用该账户登录平台或服务,且账户内的相关信息和数据可能无法恢复。因此,在注销前,用户需要确保已经备份了重要的个人信息和数据。

注意事项

  • 强调注销账户的风险,如数据不可恢复、失去平台服务等,确保用户知晓后果。
  • 处理过程中需确保数据的安全性与合规性,避免信息泄露。
  • 注销流程中可能遇到的各种问题(如验证码未收到、交易处理障碍等)需提前预设解决方案,并提供用户支持渠道。
  • 重要:账户注销已成为目前软件系统必备功能,尤其是从20年之后法律法规要求,每个收集用户信息的软件系统,都必须有账户注销功能,要保证用户隐私性;且对于落盘数据库的敏感数据都得做加密处理,不能明文落盘,包括但不限于以下数据:用户名、手机号、身份证号(或其他能够证明用户身份信息数据)、身份证图片、收货地址、邮箱等,都需要加密后才能保存,避免因为数据库被爆破,而导致大量数据被泄露,但是在加密的过程中,秘钥一定要保存好,避免遗失或者人为修改。尤其是上市或者待上市公司,要求更为严格。

总结

综上所述,B2B2C商城用户中心的修改密码、协议授权及注销账户功能,是构建安全、透明、便捷用户体验的重要组成部分。通过精细的业务逻辑设计、周到的注意事项考虑,能够有效提升用户满意度与平台信任度。这些功能都属于系统核心敏感基础,一定要做好相关日志记录和后续的保障措施。

相关文章:

技术分享-商城篇-用户中心-注销修改(二十三)

前言 上一篇文章技术分享-商城篇-用户中心(二十二)在构建高效、安全的商城用户中心时,确保用户账户的安全性与便捷性至关重要。本文将重点阐述三大核心功能——修改密码、协议授权及注销账户的业务逻辑、设计思路及注意事项,旨在…...

Linux-实用指令

目录 前言 指定运行级别 基本介绍 切换运行级别 指令类 帮助指令 man 获得帮助信息 help指令 文件目录类 pwd指令 ls指令 cd指令 mkdir命令 rmdir指令删除空目录 touch指令 cp指令 rm指令 mv指令 cat指令 more指令 less指令 echo指令 head指令 tail指令…...

【MySQL00】【 杂七杂八】

文章目录 一、前言二、MySQL 文件1. 参数文件2. 日志文件3. 套接字文件4. pid 文件5. 表结构定义文件6. InnoDB 存储引擎文件 二、BTree 索引排序三、InnoDB 关键特性1. 插入缓冲1.1 Insert Buffer 和 Change Buffer1.1 缓冲合并 2. 两次写2. 自适应哈希索引3. 异步IO4. 刷新邻…...

计算机网络 第2章 物理层

文章目录 通信基础基本概念信道的极限容量编码与调制常用的编码方法常用的调制方法 传输介质双绞线同轴电缆光纤以太网对有限传输介质的命名规则无线传输介质物理层接口的特性 物理层设备中继器集线器一些特性 物理层任务:实现相邻节点之间比特(0或1&…...

解决:Module build failed (from ./node_modules/sass-loader/dist/cjs.js)问题

一、问题 Module build failed (from ./node_modules/sass-loader/dist/cjs.js): Error: Cannot find module sass 二、解决方法 1.清除缓存 npm cache clean --force2.重构项目 npm install 3.更新(获取最新的)node-sass和sass-loader依赖包 npm …...

【 html+css 绚丽Loading 】 000041 三才移形三角

前言:哈喽,大家好,今天给大家分享htmlcss 绚丽Loading!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 &#x1f495…...

ASP.NET Core 入门教学十六 防止常见的Web攻击

在ASP.NET Core中,防止常见的Web攻击是非常重要的,以确保应用程序的安全性。以下是一些常见的Web攻击类型及其防范措施: 1. 跨站脚本攻击(XSS) 跨站脚本攻击(XSS)是一种通过在网页中注入恶意脚…...

单刀直入@ComponentScan之 资源加载

欢迎大家入坑,所谓师傅领进坑爬出去靠个人,首先我要说的是这个是上一篇《单刀直入ComponentScan》的姊妹篇哈,接着把没聊透的事说明白,咱不是虎头蛇尾的人。 资源加载是啥意思 scan ,都认识吧,小学词汇连…...

SAPUI5基础知识25 - 聚合绑定(Aggregation Binding)

1. 背景 Aggregation Binding 是 SAPUI5 中的一种数据绑定方式,用于将数据模型中的集合(如数组)绑定到 UI 控件的聚合(如列表项、表格行等)。 常见的场景包括将一个数组绑定到 sap.m.List 的 items 聚合,…...

【Python 千题 —— 算法篇】寻找两个正序数组的中位数

Python 千题持续更新中 …… 脑图地址 👉:⭐https://twilight-fanyi.gitee.io/mind-map/Python千题.html⭐ 题目背景 在处理大规模数据时,我们经常需要对数据进行排序和分析。一个常见问题是如何高效地从两个正序数组中找出它们的中位数。…...

Autoware 定位之初始姿态输入(九)

0. 简介 这一讲按照《Autoware 技术代码解读(三)》梳理的顺序,我们来说一说Autoware中的初始化操作,这个软件包当中完成了ekf_localizer发送初始姿态的包。它接收来自GNSS/用户的粗略估计的初始姿态。将姿态传递给ndt_scan_match…...

C# 自定义传值窗体-适合多参数传值

将子窗体的值回传到父窗体中,或者最简单的需要一个设置参数的对话框,其作用也就是得到其中的参数。下面我们详细介绍实现的过程。 文章目录 一、定义一个事件类二、在参数窗体中定义事件三、订阅事件消息 一、定义一个事件类 首先,我们必须…...

Ubuntu20.04+ros-noetic配置Cartographer

一、概述 因为要配置激光SLAM,Cartographer属于激光雷达SLAM 中比较经典的一款,在学习之前先将其在Ubuntu20.04首先配置出来并成功运行demo。 二、具体操作 (一)概述 使用平台是Windows的wsl2上的Ubuntu20.04子系统,…...

Visual Studio 2022 下载和安装

文章目录 概述一,下载步骤二,安装过程 概述 Visual Studio 提供 AI 增强功能,例如用于上下文感知代码补全的 IntelliSense 和可利用开源代码中的 AI 模式的 IntelliCode。 集成的 GitHub Copilot 提供 AI 支持的代码补全、聊天辅助、调试建议…...

在 Windows 环境下实现免密登录 Linux 服务器

在 Windows 环境下实现免密登录 Linux 服务器 1. 生成 SSH 密钥对2. 手动将公钥上传到服务器方法 1:使用 scp 传输公钥文件方法 2:使用 Windows 内置工具或编辑器手动复制 3. 测试免密登录4. 可能需要的工具 以下是在 Windows 中实现免密登录的步骤&…...

Computer Exercise

每日一练 单选题 在计算机机箱前面板接口插针上(     C   )表示复位开关。 A.SPK    B.PWRLED    C.RESET    D.HDDLED每台PC机最多可接(     B   )块IDE硬盘。 A.2    B.4    C.6    D.8(    …...

利用Stable Diffusion AI图像模型评估智能车模型算法表现(下篇)

今天小李哥将介绍亚马逊云科技的Jupyter Notebook机器学习托管服务Amazon SageMaker上,通过AI图像生成模型Stable Diffusion Upscale和Depth、向量知识库和LangChain Agent,生成用于AI 智能车模型训练的图像数据集并评估模型表现。 本系列共分为上下两篇…...

音视频入门基础:WAV专题(8)——FFmpeg源码中计算WAV音频文件AVStream的time_base的实现

一、引言 本文讲解FFmpeg源码对WAV音频文件进行解复用(解封装)时,其AVStream的time_base是怎样被计算出来的。 二、FFmpeg源码中计算WAV音频文件AVStream的time_base的实现 从《音视频入门基础:WAV专题(5&#xff09…...

springboot中的请求过滤filter与拦截interceptor分析

首先我们要定义一个类,实现标准的过滤器 import lombok.extern.slf4j.Slf4j;import javax.servlet.*; import javax.servlet.annotation.WebFilter; import java.io.IOException;WebFilter("/*") Slf4j public class AuthFilter implements Filter {Overr…...

Node.js入门与生态全解析:包管理与构建工具详解

Node.js入门与生态全解析:包管理与构建工具详解 目录 🎯 包管理 使用 npm 和 yarn:项目依赖管理的利器创建和发布 npm 包:实现模块化与共享 ⚙️ 构建工具 使用 Webpack 和 Babel:高效打包与代码转换配置构建流程&am…...

828华为云征文|华为云Flexus X实例docker部署harbor镜像仓库

828华为云征文|华为云Flexus X实例docker部署harbor镜像仓库 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错…...

fedora siliverblue adb

开始 1、找到手机 usb 的 idV: $ lsusb ... Bus 001 Device 012: ID 22d9:2766 OPPO Electronics Corp. PECM30是 22d9 2、在 toolbox 外面添加 udev: sudo nano /etc/udev/rules.d/51-android.rulesSUBSYSTEM"usb", ATTR{idVendor}"…...

mybatisplus查询指定字段

使用mybatisplus查询指定字段 实体类 package com.test.entity;import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annota…...

探寻 IP 代理地址繁多之因

在当今的网络天地里,IP 代理服务随处可见,且令人称奇的是,它们常常手握海量的 IP 地址可供挑选。那么,究竟是什么原因使得 IP 代理拥有如此众多的地址呢?现在,就让我们一同深入探究这个神秘现象背后的缘由。…...

MyBatis常见面试题

文章目录 说说 MyBatis 执行流程?1. 加载配置文件和映射文件2. 构建 SqlSessionFactory3. 创建 SqlSession4. 调用 Mapper 方法5. 处理参数和结果映射6. 事务管理7. 释放资源简化流程图: MyBatis 和 Hibernate 有什么不同?1. **对象关系映射层…...

Swift 运算符

Swift 运算符 Swift 是一种强类型编程语言,由苹果公司开发,用于iOS、macOS、watchOS和tvOS应用程序的开发。Swift 运算符是其核心特性之一,它允许开发者执行各种数学和逻辑操作。本文将详细介绍 Swift 中的运算符,包括它们的功能、用法和类型。 Swift 运算符概述 Swift …...

PDF转PPT神器揭秘!3步操作,轻松打造2024年会议爆款PPT

现在是数字化的时代,PDF 和 PPT 对职场的人来说可重要了。PDF 文件格式稳,也好分享,所以大家都爱用。PPT 演示起来很厉害,在开会、讲座的时候特别管用。不过呢,要是有好多 PDF 文件,咋能快点把它们变成好看…...

✨机器学习笔记(一)—— 监督学习和无监督学习

1️⃣ 监督学习(supervised learning) ✨ 两种主要类型的监督学习问题: 回归(regression):predict a number in infinitely many possible outputs. 分类(classification)&#xff1…...

【Netty】实战:基于Http的Web服务器

目录 一、实现ChannelHandler 二、实现ChannelInitializer 三、实现服务器启动程序 四、测试 本文来实现一个简单的Web服务器,当用户在浏览器访问Web服务器时,可以返回响应的内容给用户。很简单,就三步。 一、实现ChannelHandler pack…...

4K4D: Real-Time 4D View Synthesis at 4K Resolution 学习笔记

本文是学习4K4D的笔记记录 Project Page:https://zju3dv.github.io/4k4d/ 文章目录 1 Pipeline1.1 特征向量的计算1.2 几何建模1.3 外观建模⭐1) 球谐函数SH模型2) 图像融合技术 1.4 可微分深度剥离渲染 2 Train(loss)…...