RESTful Web 服务 - 安全性
因为 RESTful Web 服务使用 HTTP URLs 路径,因此以保护网站同样的方式维护 RESTful Web 服务是非常重要的。以下是设计 RESTful Web 服务时要遵循的最佳实践。
- 验证 - 验证服务器上的所有输入。保护服务器免受 SQL 或者 NoSQL 注入攻击。
- 基于会话的认证 - 请求一个 Web 服务方法时使用基于会话的认证对用户进行身份验证。
- URL 不要有敏感数据 - 永远不要在 URL 中使用用户名,密码或者会话标记,这些值应该通过 POST 方法传递给 Web 服务。
- 限制方法执行 - 允许限制使用方法,比如 GET,POST,DELET。GET 方法不应该能够删除数据。
- 验证有缺陷的 XML/JSON - 检查格式良好的输入传递给 Web 服务方法。
- 抛出通用错误消息 - Web 服务方法应该使用 HTTP 错误消息,比如 403 展示禁止访问等。
HTTP 状态码
编号 | HTTP 状态码 & 描述 |
---|---|
1 |
200 OK ,显示成功。 |
2 |
201 CREATED ,当资源使用 POST 或者 PUT 请求建立成功时。使用位置头返回新建资源的链接。 |
3 |
204 NO CONTENT ,当响应体为空时。比如,DELETE 请求。 |
4 |
304 NOT MODIFIED 在有条件的 GET 请求的情况下用于减少网络带宽的使用。响应体应该为空。头信息应该包含日期,位置等。 |
5 |
400 BAD REQUEST ,指出提供的输入无效。比如验证错误,数据缺失。 |
6 |
401 UNAUTHORIZED ,指出用户正在使用无效的或者错误的认证令牌。 |
7 |
403 FORBIDDEN ,指出用户没有使用访问方法。比如,没有管理员权限访问删除操作。 |
8 |
404 NOT FOUND ,指出该方法不可用。 |
9 |
409 CONFLICT ,指出执行方法时冲突,比如添加重复的条目。 |
10 |
500 INTERNAL SERVER ERROR ,指出执行该方法时服务器抛出了一些异常。 |
RESTful Web 服务 - 安全性相关推荐
- 构建 RESTful Web 服务
from: https://www.ibm.com/developerworks/cn/education/java/j-rest/j-rest.html 开始之前 关于本教程 REST 是一种思维方 ...
- 使用Spring开发Java RESTful Web服务的7个理由
REST现在已成为开发Web服务的标准方法,涉及Java时,可以使用许多框架和库,例如JAX-RS,Restlet,Jersey,RESTEasy,Apache CFX等,但是我鼓励Java开发人员使 ...
- 使用Spring Security 3.1保护RESTful Web服务,第3部分
1.概述 本教程显示了如何使用Spring和基于Java的Spring Security 3.1来保护REST服务 . 本文将重点介绍如何使用"登录和Cookie"方法专门针对RE ...
- 如何使用Retrofit,OkHttp,Gson,Glide和Coroutines处理RESTful Web服务
Kriptofolio应用程序系列-第5部分 (Kriptofolio app series - Part 5) These days almost every Android app connect ...
- restful api_将Spring MVC RESTful Web服务迁移到Spring 4
restful api 1引言 Spring 4为MVC应用程序带来了一些改进. 在这篇文章中,我将重点介绍宁静的Web服务,并通过采用Spring 3.2实现的项目并将其升级到Spring 4来尝试 ...
- RESTful Web 服务 - Java (JAX-RS)
JAX-RS 表示用于 RESTful Web 服务的 Java API.JAX-RS 是一种基于 Java 的编程语言 API 以及为创建 RESTful Web 服务提供支持的规范.2.0 版本发 ...
- RESTful Web 服务 - 无状态
根据 REST 架构,一个 RESTful Web 服务不应该在服务器上保持客户端状态.这种约束被称为无状态.客户端的职责是传递其上下文给服务器,然后服务器存储这个上下文以处理客户端的请求.比如,由服 ...
- RESTful Web 服务 - 方法
正如目前为止我们所讨论的,RESTful Web 服务大量使用 HTTP 动词确定要对指定资源进行的操作.下面的表格演示了常用 HTTP 动词的例子. 编号 HTTP 方法,URI 和操作 1 GET ...
- RESTful Web 服务 - 寻址
寻址指的是定位存储在服务器上的一个或多个资源.类似于定位某个人的邮寄地址. REST 架构中的每个资源都通过它的 URI(统一资源标示符)标识.URI 格式如下: <protocol>:/ ...
最新文章
- 完全企业虚拟化方案-Total Enterprise Virtualization
- Page 的生命周期学习小结
- kettle环境变量/kettle.properties的配置问题
- gin自定义路由日志的格式
- ctf(pwn) canary保护机制讲解 与 解密方法介绍
- Xcode:PhoneGap 2.5.0项目创建方法
- OpenCV-PS扩散效果(毛玻璃)
- python字符串转化为数字信号_用python实现简单的数字信号软件滤波处理
- 来点硬件知识吧,今天求职吃亏了!
- 树莓派安装python3.8_在树莓派(Raspberry Pi)上编译安装更新版本的Python
- 计算机应用基础统考模拟练习系统,网教计算机应用基础统考综合模拟练习题(一)...
- Win10企业版安装应用商店
- 百度云盘资源迁移到阿里云盘
- 数学建模解决出版社资源配置问题
- android自定义锁屏界面设置,android 锁屏壁纸和桌面壁纸的设置实现
- java程序的结构与类型实验报告_20172301 《Java软件结构与数据结构》实验三报告...
- 机器学习——决策树(ID3)的实现
- 「企企通」完成Pre-D轮融资,加速采购供应链工业软件和 SaaS 网络生态构建
- 政策更新 | 开发者如何处理软件包可见性
- CES生产函数中参数的意义