一、问题:

  在开发web项目是时,安全问题有以下几种问题:

  (1)用户可以自己伪造一个URL请求来进行访问吗?

  (2)用户不在服务器登录,可以自己封装出用户名、密码进行访问吗?

  (3)url的参数可以多次尝试进行暴力破解吗?

二、分析思路:

  首先,什么是安全,用户自己拼接的URL请求就一定有错吗?

  我们的JS可以写一个请求到后台,用户自己为什么不可以?

  那么,安全的情形是什么?

  (1)用户在服务器SESSION里有登录的记录,并且没有超时,是可以正常请求的

  (2)请求的用户名密码验证是正确的,同时具有该请求权限

  (3)拼接的参数格式也是正确的,后台接受的数据匹配

三、解决:

  (1)使用JWT、SHIRO进行安全验证,去掉用户名密码不匹配的

  (2)在URL进行访问的时候,指定访问的上下文,必须在某请求发出后,才能发出当前请求【referrer 属性可返回载入当前文档的文档的 URL】

  (3)对URL请求进行加密,用户不能随便看到后台请求的URL信息【感觉加密没啥用,以加密文本也可以请求,只是不能判断意义而已】

关于web服务安全的一些思考的更多相关文章

  1. 《Introduction to Tornado》中文翻译计划——第五章:异步Web服务

    http://www.pythoner.com/294.html 本文为<Introduction to Tornado>中文翻译,将在https://github.com/alioth3 ...

  2. RESTful Web 服务:教程

    RESTful Web 服务:教程   随着 REST 成为大多数 Web 和 Mobile 应用的默认选择,势必要对它的基本原理有所了解. 在它提出十多年后的今天,REST 已经成为最重要的 Web ...

  3. Python开发【Tornado】:异步Web服务(一)

    异步Web服务 前言: 到目前为止,我们已经看到了许多使Tornado成为一个Web应用强有力框架的功能.它的简单性.易用性和便捷性使其有足够的理由成为许多Web项目的不错的选择.然而,Tornado ...

  4. ASP.Net Web 服务 – 如何使用会话状态

    在上次博客帖子中,我们讨论了客户端对web服务的使用.在这篇文章中我们将复习一下如何使用web服务的会话状态. 这是上一篇文章的延续.因此请迅速的回顾之前的文章以便有一个清晰的概念. 在web服务中要 ...

  5. 第五章:异步Web服务

    到目前为止,我们已经看到了许多使Tornado成为一个Web应用强有力框架的功能.它的简单性.易用性和便捷性使其有足够的理由成为许多Web项目的不错的选择.然而,Tornado受到最多关注的功能是其异 ...

  6. 基于Socket创建Web服务

    基于Socket创建Web服务 为什么要使用Socket呢,我们来看下图

  7. web服务端的架构演变

    此文已由作者肖凡授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 最近Lofter项目碰到很多性能上的问题,特别是数据库相关的,每次推送后,告警就会第一时间到来.这些问题随着产 ...

  8. "轻"量级 Java Web 服务框架漫谈

    博文太长了, 还是先说下概要: 框架"轻量"与否可以从两方面来看待: 1) 框架本身的体量 - 例如小 jar 无依赖的苗条框架; 2) 用户使用框架是否获得各种便利而无阻隔(&q ...

  9. Web Service 实例基于Socket创建Web服务

    ServerSocket服务器端代码如下: public static void main(String[] args) throws IOException { // 1:建立服务器端的tcp so ...

随机推荐

  1. 《C++之那些年踩过的坑(一)》

    C++之那些年踩过的坑(一) 作者:刘俊延(Alinshans) 本系列文章针对我在写C++代码的过程中,尤其是做自己的项目时,踩过的各种坑.以此作为给自己的警惕. 转载请注明原文来自: http:/ ...

  2. flutter 配置环境

    1. 下载java SDK https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html c ...

  3. math.random用法

    Math.random():获取0~1随机数 Math.floor() method rounds a number DOWNWARDS to the nearest integer, and ret ...

  4. Owin+ASP.NET Identity浅析系列(二)扩展用户属性

    在今天,读书有时是件“麻烦”事.它需要你付出时间,付出精力,还要付出一份心境.--仅以<Owin+ASP.NET Identity浅析系列>来祭奠那逝去的…… 上一篇博客讲了用户登录注册问 ...

  5. virtualbox+vagrant学习-4-Vagrantfile-8-WinSSH

    WinSSH WinSSH通信器是专门为OpenSSH的Windows本机端口构建的.它不依赖于类posix的环境,这种环境消除了额外的软件安装(如cygwin)以获得适当功能的需求. 想获得更多的信 ...

  6. [转]浅谈利用SQLite存储离散瓦片的思路和实现方法

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 在多个项目中涉及到互联网地图的内网显示,通过自制工具完成了互联 ...

  7. 超低功耗WiFi :ESP8089

    ESP8089是一个完整且自成体系的Wi-Fi网络解决方案.当ESP8089作为Wi-Fi适配器 时,可以将其与任何微控制器配合,无线网络接入可以实现在配合的任何一种处理器上p 网络连接只需通过SPI ...

  8. ajax传递数组,后台接收为null解决方法

    traditional:true,加上这个就好,默认为false,即允许深度序列化参数,但是servlet api不支持,所有设为true阻止就好了. $.ajax({ type:'post', ur ...

  9. Gradle Goodness: Copy Files with Filtering

    Gradle Goodness: Copy Files with Filtering Gradle's copy task is very powerful and includes filterin ...

  10. C#设计模式 —— 工厂模式

    . 工厂模式同样是项目中最常用的设计模式,工厂模式中又分为简单工厂,工厂方法,抽象工厂.下面我们由简单的开始逐一介绍. 1.简单工厂模式 简单工厂又被称为静态工厂,在设计模式中属于创建型模式.主要解决 ...