和讲Basic篇的内容差不多,不同的是过程采用的是DIGEST认证:
Tomcat配置:
1 在tomcat的webapps下新建一个目录authen,再建立子目录subdir,下面放一个index.jsp
2 在authen目录下建立WEB-INF目录,下放web.xml文件,内容如下
<security-constraint>
<web-resource-collection>
<web-resource-name>
My App
</web-resource-name>
<url-pattern>/subdir/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>test</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>DIGEST</auth-method> <!-- DIGEST here -->
<realm-name>My Realm</realm-name>
</login-config>
3 在tomcat的tomcat-users.xml文件中添加一个用户名密码为test,test的用户,角色test。
客户端访问:
访问http://localhost:port/authen/subdir/index.jsp
会弹出对话框提示认证,输入test test可以登录。
工作流程(通过firebug可以查看请求头)
1 客户端先发请求(不知道要认证,头里不包含任何特殊信息)
2 服务器发一个401返回,并含有下面的头
3 客户端认证,含有下面的头
response="..."就是客户端用来签名的部分。
缺点:
监听到消息的攻击者可以使用这个消息提交请求。
httpclient中的实现
查看org.apache.commons.httpclient.auth包的DigestScheme类的authenticate方法。
RFC2617描述了计算方法:
A valid response contains a checksum (by default, the MD5 checksum) of the username, the password, the given nonce value, the HTTP method, and the requested URI.
- 大小: 13.9 KB
- 大小: 22.4 KB
- 大小: 40.2 KB
分享到:
相关推荐
HTTP客户端摘要认证(Digest Authentication)作为一种安全的身份验证机制,广泛应用于各种Web服务和API中。本篇将详细介绍如何在Crystal编程语言中实现RFC 2617规范的摘要认证,并探讨其工作原理。 摘要认证,基于...
okhttp-digest okhttp的摘要身份验证器。 大多数代码是从Apache Http Client移植的。重要的该工件已从jcenter转移到了Maven Central! 坐标已从com.burgstaller:okhttp-digest:<version>到io.github.rburgst:okhttp-...
在这个场景中,我们关注的是模拟Digest认证的登录过程,这是一个针对HTTP 401 Digest认证的实例,主要用于安全地访问受保护的资源,例如海康NVR(网络视频录像机)中的摄像头列表。在此Demo中,我们将深入探讨相关...
在本文中,我们将深入探讨Laravel框架中的摘要式身份验证(Digest Authentication),这是根据RFC 2617标准实现的一种安全认证机制。Laravel作为PHP的流行Web开发框架,提供了丰富的功能来支持开发者构建安全、高效...
digest认证机制通常用于基于HTTP和SIP(Session Initiation Protocol)协议的应用中,SIP是一个通信协议,用于创建、修改和终止包括互联网电话在内的多方多媒体会话。 RFC 2616标准定义了HTTP协议,并规定了可以...
基于链路的OSPFMD5密文认证 OSPF(Open Shortest Path First)是一种链路状态路由协议,广泛应用于大型网络中。在OSPF协议中,认证机制是非常重要的一部分,用于确保路由信息的安全性和可靠性。本文将详细介绍基于...
$ git clone git@github.com:passport/express-3.x-http-digest-example.git $ cd express-3.x-http-digest-example $ npm install 启动服务器。 $ node server.js 使用curl发送经过身份验证的请求。 $ curl -v ...
HMAC是利用密钥和散列函数实现的一种消息认证码,而Digest-HMAC则是在HTTP协议中引入的一种特定实现,它结合了HTTP的Digest认证机制和HMAC的安全特性,旨在为HTTP通信提供更高级别的安全性。 Digest-HMAC的工作原理...
在这个特定的示例 "spring-security-digest" 中,我们关注的是摘要认证(Digest Authentication),这是一种比基本认证更安全的身份验证机制,因为它不直接在请求中传递明文密码。 摘要认证的基本原理是,服务器向...
Apache Commons Digest是一个Java库,主要功能是提供各种散列(Hash)和消息认证码(MAC)算法的实现,这些算法包括MD5、SHA-1、SHA-256等。它在软件开发中广泛应用于数据校验、密码存储以及文件完整性检查等领域。...
“摘要”式认证( Digest authentication)是一个简单的认证机制,最初是为HTTP协议开发的,因而也常叫做HTTP摘要,在RFC2671中描述。其身份验证机制很简单,它采用杂凑式(hash)加密方法,以避免用明文传输用户的...
在"Digest认证摘要 isapi (MD5算法)"这个主题中,我们主要探讨的是如何利用ISAPI(Internet Server API)扩展在IIS(Internet Information Services)服务器上实现Digest认证,并结合MD5算法进行密码的哈希处理。...
HTTP Digest认证是一种安全的身份验证机制,它在HTTP协议中用于保护服务器资源免受未经授权的访问。RFC2671是HTTP/1.1扩展中关于Digest认证的规范,旨在改进基本认证的安全性,因为它不直接在请求中传输明文密码。在...
本教程将深入探讨如何进行ONVIF编译与开发,包括使用gSOAP工具处理SOAP消息,以及实现WSSE(Web Services Security Extensions,Web服务安全扩展)和DIGEST鉴权机制。 首先,让我们了解gSOAP。gSOAP是一个开源C和...
在IT领域,尤其是在Web服务器管理中,Tomcat的用户认证和授权是确保系统安全的关键环节。Tomcat是一个流行的开源Java Servlet容器,它提供了内置的安全功能,包括用户认证和授权,这些功能是通过“域”这一概念来...
#### 二、EIGRP 认证 EIGRP(Enhanced Interior Gateway Routing Protocol)是一种高级的混合型路由协议,结合了距离向量和链路状态的优点,它只支持MD5认证。 **配置示例**: 首先需要创建一个密钥链,然后指定...
Nginx 1.2提供了基于IP、用户代理、HTTP头部等多种方式的访问控制,可以限制特定IP地址的访问,或者只允许特定用户通过HTTP基本认证或Digest认证访问。 7. **日志记录** 它支持自定义日志格式,方便进行性能分析...
标题中的"RFC2617标准的Http认证"是指互联网工程任务组(IETF)发布的Request for Comments (RFC) 2617文档,该文档详细定义了HTTP基本认证和更安全的HTTP摘要认证(HTTP Digest Authentication)机制。HTTP摘要认证是...
RFC 2617中文版(HTTP Digest Authentication) RFC 2617中文版是对HTTP Digest Authentication的描述,该文档基于原英文版进行了校正和重新排版,以方便中文读者更好地理解和使用HTTP Digest Authentication机制。...
基本认证涉及用户名和密码的明文传输(虽然通常会通过HTTPS加密),而Digest认证则提供了一种更安全的方法,因为它使用了哈希算法来保护用户的凭据。 首先,我们需要了解 boa 的配置过程。安装 boa 后,你需要编辑 ...