2 mr  su Mr__su 于 2016.05.09 09:30 提问

app后台开发,如何做好安全性? 30C

app后台开发一枚,现在要对整个项目做一些安全性,比如拦截非法请求,sql注入什么的

后台开发技术:spring + mybatis + mysql
求一些思路。麻烦了。

4个回答

MR_J_beginner
MR_J_beginner   2016.05.09 09:38

比如检查密码的sql语句一定要处理特殊字符? = ' 等等,最后还是要写file。将你所设想到的情况全写下来。后期安全还有问题再添加。

Mr__su
Mr__su 请问有没有相关的资料? 或者学习的平台?
大约 2 年之前 回复
jhfsdfs
jhfsdfs   2016.05.09 14:01

最好安卓请求时要带上自己的用户信息

jhfsdfs
jhfsdfs 没有,这是后台的知识,属于权限
大约 2 年之前 回复
Mr__su
Mr__su 请问有没有相关的资料? 或者学习的平台?
大约 2 年之前 回复
wagnteng
wagnteng   2016.05.09 18:03

接口的话,多加一些加密处理了,然后在登录的时候带token,再就是服务器的时候加ip的控制了

wagnteng
wagnteng 这个一般都是自己内部确定,没什么很难的,主要是思想
大约 2 年之前 回复
Mr__su
Mr__su 请问有没有相关的资料? 或者学习的平台?
大约 2 年之前 回复
yangcheng33
yangcheng33   2016.09.12 20:06

只要防范XSS、CSRF和SQL注入漏洞,XSS通过过滤输入文本解决,CSRF采用token解决,SQL注入的话,mybatis中别用${xx}用#{xx}就好,特别是like语句中。资料可以依照我刚说的几点去百度下哈,还有需要注意一下DDOS攻击,这个需要在前置的nginx或apache里头配置。其实根据统计,最大的漏洞还是业务逻辑漏洞,这个得QA去测才能发现。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
App后台开发运维和架构实践
App后台开发运维和架构实践App后台开发运维和架构实践App后台开发运维和架构实践App后台开发运维和架构实践App后台开发运维和架构实践App后台开发运维和架构实践
如何提高Android代码的安全性
Android免费培训QQ群(118949422)第二期专题培训 (转载请注明出处,商用请与本人联系) 1. 首先我们思考一个问题,Android中哪些部分需要提高安全性防止被破解,哪些部分无法保证安全?     a) 首先,如果你的应用跟其他人竞争的是创意、用户体验、服务等等偏软的东西,同时是免费的,并没有什么技术难点,要评估一下是否确实需要提高代码的安全性。     b) 对于图片、xml文件或者apk文件本身是无法加密的。因为这些文件是由Andriod虚拟机加载和读取,加密后Android虚拟
app如何保证通讯安全
app如何保证通讯安全,可以从一下几点入手:        1 : pp和后端的通讯过程中,api请求有可能被别人截取或不小心泄露。那么,怎么保证api请求的安全呢?            在这篇文章中,介绍一种常见的保证api请求安全的做法--url签名。            服务器中验证用户名和密码都正确后,生成一个随机的不重复的token字符串(例如"daf32da456hfdh")
App后台开发
App后台开发运维和架构实践,有助于你了解App后台开发运维和架构实践
App后台开发运维和架构实践 pdf 书签 完整版
App后台开发运维和架构实践 pdf 书签 完整版 App后台开发运维和架构实践 pdf 书签 完整版 App后台开发运维和架构实践 pdf 书签 完整版
App后台开发(学习笔记)
App后台开发和运维第二章 基础技术 1。使用思维导图 将类和模块细分 2。在API返回是数据中,尽量返回“”非null 减少应用的崩溃,使用一个全局函数,来实现,如果API返回的数据中缺少客户端需要的某个数据,App客户的将其自动补上,如果个别需要null的情况个别对待 3。图片处理,在不同的App版本上显示同一张图片的尺寸不一样相同,为了避免每次都下下载原图后做处理,直接在App本地缓存
怎么看待移动APP的安全测试
随着互联网发展,APP应用的盛行,最近了解到手机APP相关的安全性测试。目前手机App测试还是以发现bug为主,主要测试流程就是服务器接口测试,客户端功能性覆盖,以及自动化配合的性能,适配,压测等,对于App安全性测试貌似没有系统全面统一的标准和流程,其实安全性bug也可以是bug的一种,只不过更加隐秘,难以发现,尤其针对于手机App。   特别是以webview为主体的app,先简单说说,站
怎么快速学习App后台开发
本人从去年7月份开始持续到今年2月份,终于写完了书籍《App后台开发运维和架构实践》,这是一本教导刚入行的同学快速学习App后台开发的书籍。
App后台开发运维和架构实践读书笔记
App后台开发运维和架构实践App后台开发运维和架构实践 App后台基础技术 从App业务逻辑中提炼API接口 业务逻辑思维导图 功能 - 业务逻辑思维导图 基本功能模块关系 功能模块接口UML 编写在线API测试文档 设计稿标注API 设计API的要点 如何选择合适的数据库产品 Redies MongoDB MySQL 读写数据的区别 Redies MongoDB MySQL 查找数据的区别
App后台开发运维和架构实践 pdf 完整版
本书的目录大纲如下: 第1章 App后台入门 16 1.1 App后台的功能 16 1.2 App后台架构 17 1.3 App和App后台的通信 19 1.4 App后台和Web后端的区别 22 1.5 选择服务器 23 1.6 选择编程语言 24 1.7 快速入门新技术 25 1.7.1 思维模式 25 1.7.2 4种快速入门新技术的方法 25 1.8 App是怎样炼成的 26 1.8.1 项目启动阶段 26 1.8.2 研发阶段 28 1.8.3 测试阶段 29 1.8.4  正式推出阶段 29 1.9 最适合App的开发模式——敏捷开发 30 1.9.1 Sprint 计划会议 31 1.9.2 日常开发 32 1.9.3 每日例会 33 1.9.4 测试和修复Bug 33 1.9.5 评审会议 34 1.9.6 回顾会议 34 1.9.7 及时反馈 34 1.9.8 总结 34 第2章 App后台基础技术 35 2.1 从App业务逻辑中提炼API接口 35 2.1.1 业务逻辑思维导图 36 2.1.2 功能—业务逻辑思维导图 37 2.1.3 基本功能模块关系 40 2.1.4 功能模块接口UML(设计出API) 41 2.1.5 编写在线API测试文档 42 2.1.6 设计稿标注API 45 2.2 设计API的要点 46 2.3 如何选择合适的数据库产品 50 2.3.1 Redis,MongoDB,MySQL读写数据的区别 50 2.3.2 Redis,MongoDB,MySQL查找数据的区别 50 2.3.3 Redis,MongoDB,MySQL适用场景 51 2.4 如何选择消息队列软件 52 2.4.1 为什么要用消息队列? 52 2.4.2 消息队列的工作流程 53 2.4.3 常见的一些消息队列产品 54 2.5 使用分布式服务实现业务的复用 54 2.5.1 巨无霸系统的危害 55 2.5.2 远程服务的优点 56 2.5.3 远程服务的实现 56 2.6 搜索技术入门 59 2.6.1 一个简单的搜索例子 59 2.6.2 搜索技术的基本原理 60 2.6.3 常见的开源搜索软件介绍 62 2.7 定时任务 65 2.7.1 Linux定时任务Crontab 65 2.7.2 在后台轻松管理各种各样的定时任务 66 第3章 App后台核心技术 68 3.1 用户验证方案 68 3.1.1 使用HTTPS协议 68 3.1.2 基本的用户登录方案 69 3.2 App通信安全 72 3.2.1 URL签名 72 3.2.2 AES对称加密 74 3.2.3 更进一步的通信安全 77 3.3 短信服务 78 3.3.1 App后台发送短信简介 78 3.3.2 选择短信平台 78 3.3.3 建立可靠的短信服务 79 3.4 处理表情的一些技巧 80 3.4.1 表情在MySQL的存储 80 3.4.2 当文字中夹带表情的处理 80 3.4.3 Openfire中发送表情引起连接断开的问题 81 3.5 高效更新数据 82 3.5.1 内容的推拉 83 3.5.2 数据增量更新策略 84 3.6 图片处理 90 3.7 视频处理 91 3.7.1 FFmpeg简介 91 3.7.2 后台调用FFmpeg的功能 92 3.8 获取APK和IPA文件里的资源 94 3.8.1 Android的APK文件 94 3.8.2 iOS的IPA文件 96 3.9 文件系统 98 3.9.1 文件云存储服务 99 3.9.2 架设文件系统 99 3.10 ELK日志分析平台 101 3.10.1 基本模块 101 3.10.2 日志分析流程 102 3.11 Docker构建一致的开发环境 103 3.11.1 Docker原理 103 3.11.2 搭建一致的开发环境 104 第4章 Linux——App后台应用最广泛的系统 107 4.1 基本的系统优化 107 4.1.1 开机自启动服务优化 107 4.1.2 增大文件描述符 109 4.2 常用的命令 110 4.2.1 全面了解系统资源情况——top 110 4.2.2 显示进程状态——ps 115 4.2.3 查看网络相关信息——netstat 116 4.2.4 查看某个进程打开的所有文件——lsof 118 4.2.5 跟踪数据到达主机所经路由——traceroute 119 4.2.6 文件下载/上传工具——“ssh secure shell client”和“lrzsz” 119 4.2.7 查看程序的依赖库——LD_DEBUG 121 4.2.8 进程管理利器——superivisor 122 4.3 故障案例分析 125 第5章 Nginx——App后台HTTP服务的利器 126 5.1 简介 126 5.2 基本原理 127 5.2.1 工作模型 127 5.2.2 进程解析 128 5.3 常用配置 129 5.3.1 Nginx的全局配置 130 5.3.2 event配置 130 5.3.3 http配置 131 5.3.4 负载均衡配置 133 5.3.5 server虚拟主机配置 134 5.3.6 location配置 134 5.3.7 HTTPS的配置 135 5.3.8 下载App的配置 136 5.3.9 生产环境中修改配置的良好习惯 136 5.4 性能统计 136 5.5 实现负载均衡的方案 137 5.6 用Nginx处理业务逻辑 139 第6章 MySQL——App后台最常用的数据库 140 6.1 基本架构 140 6.2 选择版本 141 6.3 配置文件详解 142 6.4 软件优化 144 6.4.1 正确使用MyISAM和InnoDB存储引擎 144 6.4.2 正确使用索引 145 6.4.3 避免使用select * 146 6.4.4 字段尽可能地设置为NOT NULL 146 6.5 硬件优化 147 6.5.1 增加物理内存 147 6.5.2 增加应用缓存 147 6.5.3 用固态硬盘代替机械硬盘 148 6.5.4 SSD硬盘+SATA硬盘混合存储方案 149 6.6 架构优化 149 6.6.1 分表 150 6.6.2 读写分离 151 6.6.3 分库 153 6.7 SQL慢查询分析 156 6.8 云数据库简介 157 6.9 灵活的存储结构 158 6.10 故障排除案例 159 第7章 Redis——App后台高性能的缓存系统 160 7.1 Redis简介 160 7.2 Redis的常用数据结构及应用场景 161 7.2.1 string——存储简单的数据 162 7.2.2 hash——存储对象的数据 163 7.2.3 list——模拟队列操作 165 7.2.4 set——无序且不重复的元素集合 167 7.2.5 sorted set——有序且不重复的元素集合 168 7.3 内存优化 170 7.3.1 监控内存使用的状况 170 7.3.2 优化存储结构 170 7.3.3 限制使用的最大内存 172 7.3.4 设置过期时间 172 7.4 集群 174 7.4.1 客户端分片 174 7.4.2 Twemproxy 175 7.4.3 Codis 176 7.4.4 Redis 3.0集群 179 7.4.5 云服务器上的集群服务 180 7.5 持久化 180 7.5.1 RDB 181 7.5.2 AOF 182 7.6 故障排除案例 184 第8章 MongoDB——App后台新兴的数据库 185 8.1 简介 185 8.2 核心机制解析 186 8.2.1 MMAP(内存文件映射) 186 8.2.2 Journal日志 187 8.3 入门 187 8.3.1 基本操作 188 8.3.2 数组操作 190 8.3.3 实例演示MySQL和MongoDB设计数据库的区别 191 8.4 高可用集群 195 8.4.1 主从 195 8.4.2 副本集 196 8.4.3 分片 198 8.5 LBS——地理位置查询 200 8.6 MongoDB 3.0版本的改进 205 8.6.1 灵活的存储架构 206 8.6.2 性能提升7~10倍 206 8.6.3 存储空间最多减少80% 207 8.6.4 运维成本最多降低95% 207 第9章 App后台架构剖析 208 9.1 聊天App后台架构 208 9.1.1 移动互联网的网络特性 209 9.1.2 协议 212 9.1.3 整体架构 218 9.2 社交App后台架构 221 9.2.1 基本表结构 222 9.2.2 推拉模式 223 9.2.3 数据库架构的演进 225 9.2.4 缓存架构的演进 229 9.3 LBS App后台架构 234 9.3.1 地理坐标详解 235 9.3.2 查找附近的人 236 9.3.3 基于MongoDB的LBS后台架构演进 240 9.4 推送服务器后台架构 242 9.4.1 Android推送 242 9.4.2 iOS推送 248 9.5 获得更多App后台架构资料 252 第10章 App后台架构的演进 255 10.1 架构的核心要素 255 10.1.1 高性能 256 10.1.2 高可用 258 10.1.3 可伸缩 261 10.1.4 可扩展 262 10.1.5 安全性 262 10.2 架构选型的要点 262 10.2.1 用成熟稳定的开源软件 263 10.2.2 尽可能使用云服务 264 10.3 架构的演进 268 10.3.1 单机部署 269 10.3.2 分布式部署 275 10.3.3 服务化 277 10.4 架构的特点 279 10.4.1 每个App的后台架构不会完全一样 279 10.4.2 架构的演进是由业务驱动的 279 10.4.3 架构不是为了炫耀技术 280