什么是Web认证
简而言之,web认证就是一个确认对方身份的过程。Web认证最典型的方式是通过用户名和密码。
Web认证有多种方式
A. Http协议内建的认证方法
1. Http Basic Authentication (Http基本认证)
HTTP基本认证是最简单也是曾经使用过很长时间的一种认证方式。基本认证要求为每一个保护域(realm)提供一个用户名和密码进行认证。
流程简介:
a. 客户端浏览器访问一个受http基本认证保护的资源。
b. 服务器返回401(authentication required)状态,要求客户端提供用户名和密码进行认证。Response Header里面有一个属性WWW-Authenticate,它的值比如: Basic realm="Restlet tutorial"。
c. 客户端弹出一个窗口,用于输入用户名和密码(基本上所有的浏览器都提供对基本认证的支持,它们都内建了一个用户名密码输入窗口)。
d. 输入用户名密码并确认之后,客户端把%username%:%password%用Base64进行编码后通过Request Header: Authorization传送给服务器,所以可以看到Http基本认证是明文传输,安全风险很大。比如Authorization: Basic xxxxxxxxxx.
e. 如果认证成功,则返回相应的资源。如果认证失败,则跳回b,重新进行认证。
特点:
*. Http是无状态的,即使来自同一个客户端,对同一个realm内资源的每一个访问还是会被要求进行认证。
*. 客户端会缓存用户名和密码,并和认证域(authentication realm)一起保存。所以,如果对同一个域(realm)的其它资源进行访问,不需要你重新输入用户名和密码。
*. 登录信息会和认证域以及服务器名一起存储,所以可以很好地和其他登录信息区分开来。
*. 基本认证方式是不安全的,因为用户名密码以及内容都是以非加密的方式传输。
2. Digest Authentication (摘要式身份认证)
摘要式认证是一种基于challenge-response的认证模式。
流程简介:
a. 客户端发起一个请求(没有认证信息)。
b. Web服务器返回一个带有WWW-Authenticate头的response(401),请求提供认证。
c. 客户端返回用户名和密码的摘要信息(比如说MD5加密),而不是明文。
d. 通过认证,则返回相应的内容。否则,继续b。
特点:
*. 摘要认证主要是为了解决基本认证中最大的漏洞,即用明文传输用户名和密码的问题。
*. 挑战模式:每次返回401响应的时候,都会返回一个nonce(number used only once)。或者,为了安全起见,还可能会使用一次性nounce(每个request都得到一个不同的nounce)等其它方法来加强安全性。
*. Checksum(默认是MD5 checksum)是username, password, nonce值, HTTP方法, 和被请求的URI的checksum。
*. 安全隐患:虽然密码并非明文传输,但黑客还是可以利用digest值来访问网站。并且,它对内容并不加密。
B. Form-based
基于Form的认证方式是高度可定制,也应该是目前用地最多的一种认证方式。
流程简介:
1. 客户端通过一个form,把用户名和密码post给服务端。
2. 服务端通过一些逻辑来判断认证是否有效。
3. 如果认证成功,服务器返回一个cookie(一个能唯一确认客户端的cookie,比如sessionId),用于客户端接下来的访问。如果认证失败,会提示用户进行重新输入用户名密码再次认证。
特点:
*. 高度可定制:可以根据自己的需要来实现认证逻辑。
*. 服务器端要有一个保存客户端信息的地方,比如session。
*. 客户端要有一个cookie来表明自己的身份,一般是username和一个cookie值(比如sessionId)的组合。
*. 客户端cookie的生命周期和安全性息息相关。比如现在很多站点都支持“remember me”,其实就是在服务器端remember session并在客户端remember cookie。有些站点为了更好的安全性,用这种方式登录时,如果要执行一些重要的操作比如改密码,会要求客户用用户名和密码的方式重新登录。
C. 证书认证
证书认证方式比之其他方式是最安全的认证方式。
对于数字证书的作用,我在这篇文章
里面做了详细介绍。
D. 微软提供的认证方式
这几种认证方式都是微软提供的,不做太多介绍。
1. NTLM,IE only。
2. Microsoft Passport(Single Signon).
好了,这篇文章就简单介绍一下各种认证方式吧。下篇文章,主要讨论几种认证方式在各种服务器上的实现方式。
分享到:
- 2009-02-23 11:41
- 浏览 4719
- 评论(2)
- 论坛回复 / 浏览 (2 / 4632)
- 查看更多
相关推荐
NULL 博文链接:https://andyhu1007.iteye.com/blog/337281
远程探视在众多大医院中有着迫切的需求,这种需求来自两方面:一是有些病人患有传染性很强的疾病;二是重症患者容易受到感染,所以都不能与外界接触。而这类特殊的患者最需要得到安慰和陪同,其家人、亲戚、朋友等也...
监护室探视制度.pdf
1. **疫情防控制度**:医院实施全面禁止探视制度,这是为了遵循国家疫情防控的要求,防止交叉感染。 2. **入院管理**: - 入口和出口的指定:所有人员需按照医院指定路线进出,以减少不必要的接触。 - 风险地区...
1. 政策支持:《关于推动5G加快发展的通知》明确要“全力推进5G网络建设、应用推广、技术发展和安全保障”,并提出要加快开放共享电力、交通、公安、市政、教育、医疗等公共设施和社会站址资源。《中华人民共和国...
1. **探视电筒的定义与分类**:介绍探视电筒的基本概念,及其在不同领域的应用类型。 2. **工作原理**:详细解释探视电筒如何通过电子元件,如LED灯泡和电池,产生并控制光线。 3. **设计特点**:分析探视电筒的...
1. **5G网络技术**:5G是第五代移动通信技术,具有高速、低延迟和大容量的特点。在本方案中,5G网络用于实时传输高清VR内容,确保流畅的远程探视体验。5G传输速率可达2.33Gbps/1.25Gbps,支持多种组网模式(NSA/SA)...
1. **探视时间控制**:探视制度强调了对探视时间的严格管理,只允许在特定时间段内进行,非探视时间禁止探视。这是为了减少非必要人员流动,降低病毒或细菌传播的风险。 2. **特殊情况处理**:对于病情危重的患者,...
1. 探视权的定义与意义: 探视权是指在离婚后,不直接抚养子女的父或母享有的定期看望子女并与其共度一定时间的权利。这种权利旨在保障非直接抚养方与子女间的亲子关系,促进子女的身心健康,确保其在父母离异后仍...
在当前的医疗环境中,医院探视陪护管理制度显得尤为重要。这不仅关系到患者的治疗效果,更是维护医院正常运营秩序的关键。亳州市人民医院作为医疗服务提供者,通过其探视陪护管理制度,明确了探视人员与陪护人员的...
【文档标题】提到的是关于“最新女儿探视权不给起诉有用吗如何行使探视权”的法律问题,虽然标签为“最新合同”,但实际上讨论的是离婚协议中的权益执行,特别是涉及子女抚养、财产分割和探视权的问题。以下是相关...
1. 移动性:推车设计便于在不同场所间轻松移动,满足不同场景的需求,如病房间的患者探视、教室里的教学演示或会议室的临时展示。 2. 多功能集成:推车配备的计算机系统可以运行各种专业软件,如医疗影像查看、教学...
最新探视权的法律条文探视权的法律规定有哪些最新模板word.docx
ICU探视制度学习.pptx
### 基于小程序的监狱探视预约管理系统的设计与实现 #### 一、研究背景及意义 在信息技术迅速发展的今天,各种在线预约系统已经成为我们日常生活的一部分。然而,在一些特殊领域如监狱探视方面,传统的预约方式...
《电子功用-望远夜视装置及探视电筒》 在现代科技的快速发展中,电子设备已经深入到我们生活的各个领域,其中望远夜视装置和探视电筒是两个重要的工具,它们在军事、安防、户外探险等多个场景中发挥着关键作用。这...
【基于ARM9的新生儿保温箱远程探视系统设计】 本文主要介绍了如何利用ARM9嵌入式处理器设计一种新型的新生儿保温箱远程探视系统,旨在解决传统探视系统无法满足家属灵活探视需求的问题。ARM9处理器是系统的核心硬件...
1. **人工智能**:在这个系统中,人工智能可能被用于智能排班、人脸识别以验证访客身份、以及预测和调整探视高峰期的资源分配,从而提升服务质量和安全性。 2. **信息管理系统**:系统通过收集、处理、存储和检索...
1. 探视暂停:考虑到疫情的严重性,医院暂时停止了现场探视,以防止病毒通过探访者传播。 2. 替代方式:鼓励家属通过电话、微信等通讯工具向住院患者表达关心和慰问,保持亲情沟通。 三、陪护管理: 1. 需求评估:...