http认证-Basic认证

 

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

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值