RESTful Web 服务 - 安全性
生活随笔
收集整理的這篇文章主要介紹了
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 狀態碼
| 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 服务 - 缓存
- 下一篇: 理解Maven中的SNAPSHOT版本和