http认证- Basic 认证
最近项目上用到http认真过的basic认证。所以遇到这个问题,做事情心情不可急躁,最开始急于求成,真的是郁闷了下,呵呵。本文主要讲如何在tomcat中配置Basic认证以及工作流程。
1. 项目配置
本测试环境采用的是Java web环境,其他项目环境暂未测试。
a) web.xml
<security-constraint> <web-resource-collection> <web-resource-name> Jiuzhai Application </web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <auth-constraint> <role-name>admin</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>My jiuzhai</realm-name> </login-config>
注意这里的<role-name>admin</role-name >标签,这个就是web项目允许的名称,
需要与后面的Tomcat的用户信息相对应。
2. Tomcat配置
本文的测试环境是Tomcat-6.0.35,其他版本暂未测试。
a) tomcat-users.xml
到Tomcat环境的conf目录下找到tomcat-users.xml文件。
<tomcat-users> <role rolename="tomcat"/> <role rolename="role1"/> <role rolename="manager"/> <role rolename="admin"/> <user username="admin" password="admin" roles="admin,manager"/> <user username="tomcat" password="tomcat" roles="tomcat"/> <user username="both" password="tomcat" roles="tomcat,role1"/> <user username="role1" password="tomcat" roles="role1"/> </tomcat-users>
b) 特别注意
这里配置的tomcat用户,必须有1个和上面web.xml配置的相同,不然会报403的错误。
3. 客户端访问
访问http://127.0.0.1:8080/lynch/admin/adminList.jsp
会弹出对话框提示认证,输入admin admin 可以登录。
4. 工作流程(通过firebug可以查看请求头)
a) 工作流程(通过firebug可以查看请求头)
b) 服务器发一个401返回,并含有下面的头
WWW-Authenticate Basic realm="My jiuzhai"
c) 客户端认证,含有下面的头
Authorization Basic dGVzdDp0ZXN0
YWRtaW46YWRtaW4=
”是"admin:admin"的Base64编码。
(可以通过php函数base64_encode()验证)
5. 缺点
密码明文传输,非常不安全。
6. 其他方式
可以用httpclient来的实现,有兴趣的朋友,可自己查阅相关文档。
7. 参考文档
http://robblog.iteye.com/blog/554450
相关推荐
es安全认证工具 es安全认证工具
"express-basic-auth"是这样一个中间件,它实现了HTTP基本认证(Basic Authentication),一种简单的身份验证方案。本文将详细介绍Express基本认证中间件的工作原理、安装、配置以及实际应用。 ### 一、HTTP基本...
第三节 暴力破解 - HTTP Basic认证-01
4. **API集成**:对于API接口的保护,`lws-basic-auth`可能提供API级别的认证,确保只有经过验证的请求才能到达服务器。 在实际应用中,开发者需要考虑以下几点安全实践: - **HTTPS**:即使使用了基本身份验证,...
- **Authenticating API Tokens**: 提供了更好的支持用于API认证,通过` Sanctum `库实现。 - **Vue.js 2.5**: Laravel 5.6默认集成Vue.js 2.5版本,增强了前端开发体验。 - **Scheduling Improvements**: 调度任务...
// 启用HTTP Basic认证 } @Autowired public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { auth.inMemoryAuthentication() .withUser("admin") // 设置用户名 .password("{...
http-server-basicauth-ssl:命令行http服务器 http-server-basicauth-ssl是基于以下内容的简单,零配置命令行安全化Http服务器: HTTP服务器 基本认证 SSL协议 主要目的是拥有与http-server相同的有用工具,但具有...
2. 示例代码:可能有实现了Basic Authentication逻辑的类,比如`AuthenticationFilter`,用于处理HTTP请求的认证。 3. 配置文件:如`build.gradle`用于构建设置,以及Spring Security的配置文件,如`security-config...
HTTP Basic Authentication 是一种简单的身份验证机制,它要求客户端在每个请求中都包含一个认证头(Authorization)。在 Basic Auth 中,用户名和密码被组合成一个字符串(例如 "admin:admin"),然后使用 Base64 ...
HTTP基本认证(Basic Authentication)是HTTP协议中一种简单的身份验证机制。它要求用户在访问受保护资源时提供用户名和密码。这种认证方式是基于HTTP头部的,通过将用户名和密码编码为Base64字符串并将其放入`...
"Basic-Auth-Enforcement" 是这个过程的核心,它通过 HTTP 的 Basic 认证头进行用户身份验证。下面我们将详细探讨如何在 Laravel 5 中使用中间件强制执行基本身份验证。 1. **中间件的概念** 中间件在 Laravel 中...
此外,描述中的“安全模块”可能涵盖了如认证(Authentication)、授权(Authorization)、加密(Cryptography)以及异常处理等方面,这些都是构建安全应用程序的基础。 "启动服务后无需添加任何后端代码前端便可以...
docker run -d -p 80:80 --link web:web --name auth beevelop/nginx-basic-auth 尝试使用用户名foo和password bar访问和登录。 先进的 docker run -d \ -e HTPASSWD= ' foo:$apr1$odHl5EJN$KbxMfo86Qdve2FH4owePn...
Ring-Basic-Authentication是针对Clojure Web开发框架Ring的一个中间件,它允许开发者在Web应用程序中实现基本的HTTP身份验证机制。这个中间件是基于HTTP协议的“Basic Authentication”规范,该规范要求用户在访问...
在本Demo中,我们将深入探讨如何使用Acegi实现Basic认证,这是一种常见的HTTP身份验证方法,适用于简单的应用场景。 Basic认证是一种客户端-服务器认证方式,用户凭据(用户名和密码)以Base64编码的形式包含在请求...
在本文中,我们将深入探讨HTTP基本认证的工作原理以及如何在Flask应用中使用Flask-BasicAuth。 **HTTP基本访问身份验证工作原理** HTTP基本访问认证基于HTTP协议,通过在HTTP请求头中添加一个特殊的`Authorization...
【标题】"Portal-Basic Java Web" 是一个关于Java Web应用开发框架的资源包,它主要面向的是希望深入了解和实践Java Web技术的开发者。在Java Web领域,开发框架是构建高效、可维护的Web应用程序的关键工具,它们为...
基本身份验证是一种HTTP认证机制,其中客户端(通常是Web浏览器或API客户端)通过在HTTP头中附带一个Base64编码的用户名和密码对来向服务器提供凭据。这种认证方式简单但不安全,因为凭据在网络中明文传输,因此通常...
本篇将深入探讨如何利用Acegi Security实现基于数据库的用户信息认证,以及Http Basic认证。 Http Basic认证是一种常见的身份验证机制,广泛应用于Web服务。该机制遵循HTTP协议标准,通过Base64编码用户凭证...
6. **安全特性**:Yii2 内置了防止SQL注入、跨站脚本攻击(XSS)等的安全机制,还提供了用户认证和授权功能,确保应用安全。 7. **模板引擎**:Yii2 的视图部分使用了强大的模板引擎,可以轻松创建复杂的HTML布局和...