JavaWeb应用中的身份验证(声明式)——BASIC和DIGEST身份验证
来源:互联网 发布:学英语的网络课程 编辑:程序博客网 时间:2024/06/01 23:57
在HTTP协议通信的过程中,HTTP协议定义了基本的认证过程以允许HTTP服务器对web浏览器进行身份验证。基本过程如下:
(1)当一个浏览器对服务器进行HTTP服务请求时,如果客户端未被认证,则服务器端将通过基本的认证过程对客户端的用户名及密码进行验证,以决定用户是否合法。此时,服务器端会发送一个WWW-Authenticate的Cookies,以及401的验证请求
(2)符合HTTP规范的客户端在接收HTTP请求后,就会自动弹出一个登陆窗口
(3)用户输入用户名和密码后,将用户名及密码(中间以“:”隔开)以BASE64(或者以DIGEST)加密方式加密,并将密文放入前一条请求信息中,从而完成验证
Tomcat配置实现如下:
(1)设置用户名、密码和角色,步骤同 http://blog.csdn.net/u014494705/article/details/50448696
(2)告诉服务器目前正在使用BASIC验证,指定域的名称
(3)指定需要密码保护的url,使用security-constraint 步骤同 http://blog.csdn.net/u014494705/article/details/50448696
(4)列出所有可能的抽象角色 步骤同 http://blog.csdn.net/u014494705/article/details/50448696
由于,除了步骤2与http://blog.csdn.net/u014494705/article/details/50448696 不同,这里直接给出web.xml的配置
<span style="white-space:pre"></span><security-role><role-name>admin</role-name></security-role><security-constraint><web-resource-collection><web-resource-name>admin page</web-resource-name><url-pattern>/admin/*</url-pattern></web-resource-collection><auth-constraint><role-name>admin</role-name></auth-constraint></security-constraint><login-config><auth-method>BASIC</auth-method> <!--<span style="font-family: Arial;"><auth-method>DIGEST</auth-method></span>--><realm-name>Password required</realm-name></login-config>
0 0
- JavaWeb应用中的身份验证(声明式)——BASIC和DIGEST身份验证
- JavaWeb应用中的身份验证(混合型)——综合应用声明式和编程式
- JavaWeb应用中的身份验证(编程型)——实现BASIC身份验证
- JavaWeb应用中的身份验证(声明式)——基于表单的身份认证
- JavaWeb应用中的身份验证(声明式)——servlet配置SSL
- 声明式安全(2)——BASIC身份验证方式
- JavaWeb应用中的身份验证(编程型)——实现servlet管理SSL
- WEB应用中的身份验证(1)--基本身份验证BASIC authorization method
- WEB应用中的基本身份验证和表单身份验证
- WEB应用中的基本身份验证和表单身份验证
- WEB应用中的基本身份验证和表单身份验证
- WEB应用中的基本身份验证和表单身份验证
- WEB应用中的身份验证(2)--Form身份验证Form-based Authentication
- 身份验证
- 身份验证
- 身份验证
- 身份验证
- 身份验证
- Tkinter 8.5 参考手册: a GUI for Python (二)
- 检查网络状态 — 静态检测
- 一起talk C栗子吧(第八十七回:C语言实例--使用管道进行进程间通信概述)
- Aforge视频采集,抓取图片,录制视频,WPF下使用Image控件显示视频
- Tkinter 8.5 参考手册: a GUI for Python (三)
- JavaWeb应用中的身份验证(声明式)——BASIC和DIGEST身份验证
- Tkinter 8.5 参考手册: a GUI for Python (四)
- windows 命令行创建虚拟WIFI
- ViewController的view的创建过程
- wdcp 远程连接mysql 出现1130错误 解决办法
- SSM框架(一)之SSM框架整合(Spring,SpringMVC,MyBatis)
- C# 20161.2
- 伺服调整
- C#窗体连接数据库出现未处理SqlException解决办法