JavaWeb应用配置文件安全解决方案
这里主要说说JavaWeb应用的配置文件安全,通常JavaWeb应用多多少少会有一些配置文件,其中数据源的配置则是关系到数据库的安全,另外还有一些基于文件的权限配置,应用程序的一些系统参数。鉴于这样的情况,如果配置文件被非法访问者拿到,这对于应用的安全和数据安全产生极大的危害。
常见的一种情况就是:非法用户通过一些漏洞扫描工具,探测应用的漏洞,然后上传脚本,遍历应用的文件目录结构来获取更多有利于攻克系统的信息。对于应用程序而言,可能使用第三方框架,也可能独立开发一些关键模块,种种这些仍然可以确定和确信漏洞是存在的。
保护应用程序的敏感数据则极为重要,这些敏感数据则主要是:数据源的配置信息,系统参数,FTP配置信息,权限访问配置等。
面对上面面临的配置文件安全问题,下面讲分享一种解决方案(配置文件加密外置法)。配置文件加密外置法即就是对配置文件的信息进行加密,然后配置文件存放在与应用程序目录无关的目录(地方)。
从上面对配置文件加密外置的描述可以看出这种方式有明显的好处:
1.配置文件加密,使得配置文件的信息得到有效的包含
2.配置文件外置,使得通过探测应用程序目录结构并不能轻易获取配置文件
3.配置文件的访问权限得到有效的控制
下面是一张配置文件加密外置法的整体思路
参照上图说明一下每个环节:
1.开始,准备配置文件信息
2.配置环境变量其值作为加密因子
3.使用加密工具对配置文件进行加密(依赖1,2中的信息)
4.输出加密后的密文文件(内容组成:加密信息,加密参数)
5.配置环境变量其值是密文文件名(即密文文件的路径)
6.应用程序中使用5中的环境变量,读取密文文件
7.使用解密工具对密文文件解密,输出明文信息
8.应用程序使用明文信息
上面8个环节:1-4是生成加密的配置文件, 5-8是应用程序使用配置文件。
另外为了JavaWeb应用的进一步安全,可以将加密解密的工具包与应用程序分离,比如放置在JRE或者Web应用服务器下的CLASSPATH下等。
文中主要讲述JavaWeb应用中敏感数据配置文件的保护策略,至于其他情况则没有考虑,一个Web应用的安全本身涉及到多方面的安全保护,如应用程序的编码,Web服务器相关配置,部署主机,网络,数据库等。
本文转自 secondriver 51CTO博客,原文链接:http://blog.51cto.com/aiilive/1532884,如需转载请自行联系原作者
JavaWeb应用配置文件安全解决方案相关推荐
- VS2008中的“解决方案配置”和“解决方案平台”不见了(Release和Debug)的解决方法...
VS2008中的"解决方案配置"和"解决方案平台"不见了(Release和Debug)的解决方法 1.视图->工具栏->自定义 中->命令,选 ...
- JavaWeb 项目安全问题及其解决方案
JavaWeb 项目安全问题及其解决方案 参考文章: (1)JavaWeb 项目安全问题及其解决方案 (2)https://www.cnblogs.com/lhhitnote/p/5531567.ht ...
- 企业如何选择和配置服务器解决方案(2023年版本)
↵ 随着互联网信息的飞速发展,任何企业都脱离不了互联网,越来越多的企业都通过互联网实施无纸化的办公,互联网推广一体化整体型推广.互联网+电子商务.中小型企业网站如何选购云服务器配置呢? 但是,实现这些 ...
- IDEA创建JavaWeb项目配置
IDEA创建JavaWeb项目配置 1. 工具准备 2. 创建JavaWeb项目 3. 配置 4. 选择Java Web 4.配置项目名和位置 5. Finish创建完成,目录结构 6. 快捷键shi ...
- OPC配置DCOM解决方案
OPC配置DCOM解决方案 概述:随着对数据重要性的提升以及数据交换问题的重视,大家对免费的OPC server使用有所增加,下面跟大家分享一下解决OPC 配置DCOM困难问题,免去繁琐的工作量,直接 ...
- JavaWeb 乱码问题终极解决方案!
经常有读者在公众号上问 JavaWeb 乱码的问题,昨天又有一个小伙伴问及此事,其实这个问题很简单,但是想要说清楚却并不容易,因为每个人乱码的原因都不一样,给每位小伙伴都把乱码的原因讲一遍也挺费时间的 ...
- 转载:opencv:关于vs opencv每次都要配置的解决方案
关于vs2015每次打开都要配置opencv问题 qwezhaohaihong 2017-03-26 20:14:18 3031 收藏 1 最后发布:2017-03-26 20:14:18首发:201 ...
- MyEclipse配色字体等配置的解决方案
Myeclipse黑色配色方案(精心修改版) http://download.csdn.net/detail/rehongchen/6579945 如何改变Myeclipse编辑区背景色 http:/ ...
- Javaweb基础配置模板(mybatis+javaweb)
1.大纲规划图 本配置涉及的技术:mybatis,javaweb,json转换,分页查询等 2.导入相关的配置文件pom.xml 2.1 依赖文件 <dependencies> <! ...
最新文章
- 九度OJ 1339:ACM (排序)
- shift键的十一个妙用
- 仓库无证如何处罚_“非现场执法”查处无证网约车,罚款15万!滴哥:怎们罚的都不知道!...
- 产品经验谈:设计思维 统计思维
- mysql gui 修改密码_MySQL修改root密码的各种方法整理
- winpe制作u盘启动盘_怎么制作u盘启动盘 u盘启动盘制作方法【介绍】
- opengl绘制的点不显示是什么原因_中考后为什么不允许复读?原因主要在以下5点,你都清楚吗?...
- linux自动截屏脚本,Android实现自动截图脚本
- 在html中使用css的主要方式有,html中使用css的方法有哪几种
- MySQL 入门(三)—— MySQL数据类型
- vue项目中引入字体图标库(傻瓜式教程,详解)
- tesseract-ocr识别英文和中文图片文字以及扫描图片实例讲解
- 云打码实现验证码识别
- 部署ServletContext的时候报错 Class com.xxxxx.ContextServlet is not a Servlet
- dedecms友情链接字数修改
- 情人节单身的你,是否用一张智能名片,进行表白
- Python+Miner解析PDF
- 数学符号的意义总结(未完待续)
- 个人公众号注销方法_微信公众号怎么注销,注销方法
- 【Puzzle】基于 Vue 和 Webpack4 的可插拔式微前端架构
热门文章
- crontab shell 每5秒执行_视频 |全球最快全自动播种分拣机器人,每5秒处理一件货物...
- 70进货卖100利润是多少_一只周黑鸭随便就卖100多,那成本有多少?说出来你可能不信...
- mybatis连接oracle12乱码,使用mybatis链接oracle数据库出现账号密码错误解决
- linux 线程优先级算法,能讲一下在Linux系统中时间片是怎么分配的还有优先级的具体算法是...
- 网络学习云平台 计算机基础应用,计算机应用基础网络自主学习平台使用说明.doc...
- mysql课程表学时_Mysql 巩固提升 (学生表_课程表_成绩表_教师表)
- imeoptions android,软键盘小记Android:imeOptions
- 一个小白如何创建MYSQL数据表_MySQL小白扫盲(二)--建表、添加、查询
- 【Java中级篇】Dom4j解析xml数据
- 各层电子数排布规则_原子核外电子排布原理