web系统设计安全性基本要求

接口设计安全

身份鉴别

独立的登录模块:为社会用户和平台运营管理用户提供独立的登录地址、登录界面和身份认证模块,通过防火墙等设备严格限制能够登录WEB应用的用户地址、身份;

双因素认证:

平台运营管理人员:采用用户名/口令+数字证书方式进行身份鉴别;

商户:采用用户名/口令+数字证书方式进行身份鉴别;

在执行支付业务时采取独立的支付密码,以保证资金支付安全。

访问控制

最小权限:在服务端设计用户应用操作权限及关键资源访问权限,应用权限按照功能模块、应用界面、操作细化至菜单级,控制用户权限粒度,并授予其完成各自承担任务所需的最小权限;

关键数据和业务操作控制:对关键资源访问按照数据库表、关键记录、数据字段级别进行控制。关键数据有账户信息,用户敏感信息等,对关键数据采用加密存储,采用加密算法进行加密。

限制涉及批量查询和数据导出操作的授权。

安全审计

对用户登录、登出、业务授权、涉及敏感数据的批量查询和数据导出操作及重要业务操作行为进行日志记录,记录信息系统操作全过程,确保操作行为可追溯;

具备业务授权许可使用监督功能,记录信息平台操作全过程,确保操作行为可追溯,并对越权使用、非常规登录等异常行为进行告警;

对连续失败登录、越权使用、非常规登录等异常行为进行告警;

日志记录独立存储,由审计管理员查询、统计、导出;

提供运行监控功能,通过监控界面,日志和审核信息,对关键信息进行监控,界面无法操作编辑日志,无法删除、修改或覆盖审计记录。

加密技术

数据加密:在应用中采用国际标准加密算法/国产加密算法对数据进行加解密处理,以保障应用和数据的存储、传输和使用安全:

用户鉴别信息:将用户密码与其它用户识别信息(如用户帐号或其它注册信息)采用哈希算法进行处理后作为用户鉴别信息的哈希值存储,以保证每个用户的鉴别信息不同;

重要业务数据的保密性:采用对称算法(对数据进行加密处理后进行传输或存储,算法处理中使用的对称算法密钥通过其它安全方式进行传输或存储;

上述加解密过程采用国家密码管理局认证的密码设备提供的密码算法接口,并由密码设备提供密钥生成、分发、验证、更新、存储、备份、销毁等管理功能。

通信报文:在访问重要的业务应用(如提交支付等信息的页面)时,在对数据进行加密处理的基础上,强制使用HTTPS安全协议对整个通信报文进行加密传输;

集成服务:使用HTTPS安全协议传输,采用数字签名进行安全防护。

全网使用https协议传输以确保数据的安全。

软件容错

服务端应用程序对客户端提交的所有数据、表单进行有效性合法性判断和非法字符过滤。

对客户端输入的参数严格限制类型和长度。

限制可接受用户输入的字段,并对来自客户端的所有值进行修改和验证。

程序发生异常时使用通用错误信息,并在日志中记录详细的错误消息。

系统提供自动保护功能,当故障发生时自动保护当前所有状态,保证系统能够进行恢复。

配置管理

使用基于角色的授权策略控制配置管理角色,控制配置权限粒度,配置管理功能只能由经过授权的操作员和管理员访问;

配置文件存放在非Web目录下,防止出现的服务器配置漏洞导致配置文件被下载;

对配置文件中的重要信息进行加密确保配置安全。

抗抵赖

使用第三方数字证书进行数字签名,保证业务关键数据传输的保密性和抗抵赖性。

详细记录重要业务操作的日志并提供日志查询功能,在用户请求时,为业务操作发起方或接收方提供数据发送或接收的证据;

应用接口安全

统一输入及输出数据验证接口,保障验证逻辑的一致性。

按照各接口数据格式,对输入数据进行格式化,例如URL、日期、数字、字符串等,确保数据格式正确;

针对特殊字符进行检测,例如单引号、1=1、CDATA,分号、for、loop等,防止XML注入、SQL注入及脚本注入攻击且服务器端和客户端都进行验证;

采用正则表达式验证数据结果;

对图片或文档等上传文件类型漏洞进行防护。

内部不同应用接口之间按照双方约定的报文规范对敏感数据进行加密,接口访问需要验证秘钥,对数据做签名校验,采用HTTPS协议进行机密性和完整性保护;对交易日志进行详细记录。

数据安全

一、用户账号数据

1、保密性措施

存储安全:

用户鉴别信息只允许在服务器端数据库存储;禁止在服务器端其它区域和客户端存储;

用户鉴别信息采用用户口令+用户账号的哈希值+加盐处理的方式存储,以保证其保密性和唯一性。

传输安全:

采用加密算法在客户端对用户输入口令和账号处理生成哈希值,再将其与随机验证码进行哈希处理和加盐处理的方式后,与用户账号一起使用HTTPS

2、完整性措施

存储安全:

通过数据库约束条件实现完整性保护;

同存储保密性措施,对用户鉴别信息采用哈希值和加盐处理的方式存储,可以保证其完整性。

传输安全:

同传输保密性措施,采用哈希处理和加盐处理的方式,使用HTTPS协议保证用户鉴别信息数据在传输过程中的完整性。

3、可用性措施

进行定期数据备份。

进行数据级灾备,进行本地数据和异地数据备份与恢复,完全数据备份至少每天一次,备份介质场外存放。

二、配置性数据

1、保密性措施

存储安全:

只允许在服务器端数据库存储;禁止在服务器端其它区域和客户端存储;

重要配置数据采用对称算法SM4加密后存储。

传输安全:

使用HTTPS协议加密传输。

2、完整性措施

存储安全:

通过数据库约束条件实现完整性保护;

采用哈希算法生成数字摘要,在读取数据时进行验证。

传输安全:

使用HTTPS协议保证数据传输过程不被篡改。

3、可用性措施

进行定期数据备份。

进行数据级灾备,进行本地数据备份与恢复,完全数据备份至少每天一次

三、业务性数据

1、保密性措施

存储安全:

只允许服务器端数据库存储;禁止在服务器端其它区域和客户端存储;

传输安全:

平台与内容服务商系统、短信服务系统和第三方支付平台交互的业务数据使用HTTPS协议加密传输;

2、完整性措施

存储安全:

通过数据库约束条件实现完整性保护;

使用HTTPS协议和SM1算法加密保证数据传输过程不被篡改。

3、可用性措施

 进行定期数据备份。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/411621.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML(一)

作为一名教育工作者,总是想用尽量好的方法展示自己的想法。所以总是抑制不住要学习前端的诱惑。所以从现在开始,积跬步以致千里。每天半小时。主要采用思维导图的方式。 学习资源来自于MDN网站(MDN) 本文是HTML的第一个部分&#…

mybatis----小细节

1、起别名 在MyBatis中&#xff0c;<typeAliases>元素用于定义类型别名&#xff0c;它可以将Java类名映射为一个更简短的别名&#xff0c;这样在映射文件中可以直接使用别名而不需要完整的类名。 下面是一个示例&#xff1a; 在mybatis核心配置文件中配置typeAliases标…

【k8s】Kubernetes 声明式 API、命令式

1. 资源管理方式&#xff1a; 1>. 命令式对象管理∶直接使用命令去操作kubernetes资源 kubectl run nginx-pod --imagenginx:1.17.1 --port802>. 命令式对象配置∶通过命令配置和配置文件去操作kubernetes资源 kubectl create/patch -f nginx-pod.yaml3>. 声明式对…

2024年外贸新兴市场有哪些 | 箱讯科技国际贸易平台

当前欧美市场经济增速放缓&#xff0c;通胀持续高位导致物价普遍上涨&#xff0c;进一步引发消费疲软。此外&#xff0c;受原材料价格、劳动力、土地等经营成本上升影响&#xff0c;外贸出口企业利润被进一步压缩。 困顿之中&#xff0c;新兴市场成为破局关键&#xff0c;巨大的…

学习JavaEE的日子 day14 继承,super(),this(),重写

Day14 1.继承的使用 理解&#xff1a;子类继承父类所有的属性和方法 使用场景&#xff1a;多个类似的类&#xff0c;有相同的属性和方法&#xff0c;就可以把相同属性和方法抽取到父类 优点&#xff1a;减少代码的冗余&#xff1b; 使类与类之间产生了关系(多态的前提) 缺点&a…

Python数据分析案例35——多元线性回归全流程 (数据探索可视化,回归分析,多重共线性,残差检验,异方差检验,自相关检验)

案例背景 很多经济学同学用Python做传统统计学的回归分析时可能没有R或者Stata&#xff0c;Eviews&#xff0c;SPSS方便&#xff0c;他们对回归分析里面常用的检验过程不熟悉。 Python做回归这些当然没有这些统计学&#xff0c;计量经济学常用的软件方便&#xff0c;但是都能…

django电影推荐系统

电影推荐 启动 ./bin/pycharm.shdjango-admin startproject movie_recommendation_projectcd movie_recommendation_project/python manage.py movie_recommendation_apppython manage.py startapp movle_recommendation_applspython manage.py runserver Using the URLconf d…

怎么修改或移除WordPress后台仪表盘概览底部的版权信息和主题信息?

前面跟大家分享『WordPress怎么把后台左上角的logo和评论图标移除&#xff1f;』和『WordPress后台底部版权信息“感谢使用 WordPress 进行创作”和版本号怎么修改或删除&#xff1f;』&#xff0c;其实在WordPress后台仪表盘的“概览”底部还有一个WordPress版权信息和所使用的…

Vue3在点击菜单切换路由时,将ElementPlus UI库中el-main组件的内容滚动恢复到顶部

功能&#xff1a;Vue3在点击菜单切换路由时&#xff0c;将页面el-main的内容滚动到顶部&#xff0c;布局如下&#xff0c;使用UI组件库为ElementPlus 在网上搜很多都是在route.js中的router.beforeEach中使用window.scrollTop(0,0) 或 window.scrollTo(0,0) 滚动&#xff0c;但…

使用原生input模拟器样式正常,但是真机上 input框溢出

目录 一、问题 二、解决方法 三、总结 tiips:如嫌繁琐&#xff0c;直接移步总结即可&#xff01; 一、问题 1.使用原生input写了一个搜索框&#xff0c;在模拟器和pc上一切正常。但是打包放到手机上&#xff0c;样式就有问题&#xff1a;这个搜索框的布局是正常的&#xf…

RT-Thread Studio学习(十四)ADC

RT-Thread Studio学习&#xff08;十四&#xff09;ADC 一、简介二、新建RT-Thread项目并使用外部时钟三、启用ADC四、测试 一、简介 本文将基于STM32F407VET芯片介绍如何在RT-Thread Studio开发环境下使用ADC设备。硬件及开发环境如下&#xff1a; OS WIN10STM32F407VET6STM…

代码随想录算法训练营第三十六天 | 435.无重叠区间、763.划分字母区间、56.合并区间

435.无重叠区间 题目链接&#xff1a;435.无重叠区间 给定一个区间的集合 intervals &#xff0c;其中 intervals[i] [starti, endi] 。返回 需要移除区间的最小数量&#xff0c;使剩余区间互不重叠 。 文章讲解/视频讲解&#xff1a;https://programmercarl.com/0435.%E6%9…