前言 认证功能能让Web页面只被有权限的人访问.而认证机制究竟是怎样一个原理呢?通过今天的学习能对这个有个大致的了解. 正文 什么是认证 计算机无法判断对方的身份,需要客户端自报家门. 服务端为确认客户端是否真的具有访问系统的权限,需要核对 "登录者本人才知道的信息"."登录者本人才会有的信息" HTTP使用的认证方式 HTTP/1.1使用的认证方式如下所示. BASIC认证(基本认证) DIGEST认证(摘要认证) SSL客户端认证 FormBase认证(基于表单…
第七章 确保web安全的https 1.http的缺点: (1)通信使用明文,内容可能会被窃听 (2)不验证通信方的身份,因此有可能遭遇伪装 (3)无法证明报文的完整性,因此有可能已遭篡改. 2.通信的加密 (1)http没有加密机制,但可以通过和SSL或TLS的组合使用,加密http的通信内容,与SSL组合的http被称为https (2)内容的加密,就是将需要传输的内容进行加密,不过这种还是有可能被篡改内容. 3.不验证通信方可能遭遇伪装 SSL不仅提供了加密处理,而且还使用了一种被称为证书…
写在前面 认证机制能够保证特定的资源给特定的(经过认证的)用户访问.从而保证了资源的机密性. 正文 1.为什么要认证?认证的媒介是什么? 认证的目的在于确认访问者的身份,保证资源的私有性(只有经过特定认证的用户才能操作特定的资源): 一般会对一下这个方面采用认证: a.密码 b.动态令牌(如:短信验证码) c.数字证书(进第三方机构审核过的数字证书) d.生物认证(如:指纹) e.IC卡等 2.HTTP使用的认证方式 2.1.BASIC认证(基本认证) BASIC认证用于安全级别不高,目前使用得…
Session 管理及 Cookie 应用 基于表单认证的标准规范尚未有定论,一般会使用Cookie来管理Session(会话). 基于表单认证本身是通过服务器端的Web应用,将客户端发送过来的用户ID和密码与之前登录过的信息做匹配来进行认证的.但鉴于HTTP是无状态协议,之前已认证成功的用户状态无法通过协议层面保存下来,即,无法实现状态管理,因此即使该用户下一次继续访问,也无法区分他与其他的用户.于是我们会使用Cookie来管理Session,以弥补HTTP协议中不存在的状态管理功能. 步骤1…
openresty 学习笔记五:访问RabbitMQ消息队列 之前通过比较选择,决定采用RabbitMQ这种消息队列来做中间件,目的舒缓是为了让整个架构的瓶颈环节.这里是做具体实施,用lua访问RabbitMQ消息队列. RabbitMQ消息队列有几个比较重要的概念:生产者Producer,消费者Consumer,交换器Exchanges,队列Queues 我的简单理解生产者,发布消息入队的用户.消费者,订阅队列获取消息的用户.交换器,消息可以不指定某个具体队列,而是发送给交换器,通过不同类型交…
简单的HTTP协议 前言 最近在学习Web开发的相关知识,发现<图解HTTP>这本书通俗易懂.所以花时间学习这本书,并记录下学习笔记. 如上图,我们每天都在浏览网页,一般我们都是在浏览器地址栏输入要访问的网站的地址(如百度),按下回车,浏览器就显示了我们要访问的网站的网页. 那么在我们敲下回车键的那一刻,究竟发生了什么呢.通过今天的学习,能大致了解其中原理,并简单学习HTTP协议. 目录 1.客户端与服务器端 2.HTTP是不保存状态的协议 3.请求URI定位资源 4.告知服务器意图的HTTP…
Shiro学习笔记总结 内容介绍: 一.Shiro介绍 二.subject认证主体 三.身份认证流程 四.Realm & JDBC reaml介绍 五.Shiro.ini配置介绍 六.源码案例 ,链接数据库测试 Apache Shiro™是一个功能强大且易于使用的Java安全框架,可执行身份验证,授权,加密和会话管理.使用Shiro易于理解的API,您可以快速,轻松地确保任何应用程序 - 从最小的移 动应用程序到最大的Web和企业应用程序. 一.subject认证主体 subject:认证主体包…
用户交互 在<学习笔记04>中我们有提到位置参数,位置参数是用来向脚本传递参数的一种方式.还有一种方式,是read命令. [root@c7-server ~]# read name alongdidi [root@c7-server ~]# echo $name alongdidi read命令可以实现从STDIN中读取数据存入用户指定的变量中. 可以多变量赋值. [root@c7-server ~]# read a b tom jerry [root@c7-server ~]# echo $…
一.认识/etc/passwd和/etc/shadow 1./etc/passwd 由 ‘:’ 分割成7个字段,每个字段的具体含义是: 用户名 存放账号的口令:现在存放在/etc/shadow下,在这里只用一个 ‘x’ 代替 用户标识号,也叫做uid:0是超级用户(root)的标识号,1~499由系统保留,作为管理账号,普通用户的标识号从500开始:UId取值范围:0~65535(但实际上已经可以支持到4294967294) 组标识号,也叫做gid:这个字段对应着/etc/group 中的一条记…
前言: 一直觉得自己在HTTP基础方面都是处于知其然,不知其所以然的样子.最近利用空闲时间拜读了一下图解HTTP,写篇博客记录一下读书笔记. TCP三次握手: ① 发送端首先发送一个带SYN标志的数据包给对方 ② 接收端收到后,回传一个带有SYN/ACK标志的数据包以示传达确认消息 ③ 发送端再回传一个带ACK标志的数据包,代表“握手结束” 注意:若在握手的过程中某个阶段莫名中断,TCP协议会再次以相同的顺序发送相同的数据包. 关于Cookie: 目前我们用的比较多的用户鉴权的方法有两种:coo…