如何让你的web具备权限认证
来源:互联网 发布:来自mac客户端 编辑:程序博客网 时间:2024/06/05 16:04
大多数Web系统都有权限需求,前面已经了解了它的整个认证过程的原理,这节将讲述如何在Tomcat中配置web资源的权限。先以Tomcat默认的认证模式Basic和默认的域UserDatabaseRealm为例,看看如何完成整个配置的。
首先,配置server.xml文件,配置一个名为UserDatabase的数据源,它绑定的存储文件为conf/tomcat-users.xml。然后在Realm节点中引用名为UserDatabase的数据源,这里的realm属于Engine容器级别共享。
<Server>
...
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
...
<Engine>
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Engine>
...
</Server>
其次,配置tomcat-users.xml文件,定义一个名为tomcatRole的角色,再定义一个用户名为tomcat、密码为tomcat的用户,并赋予其tomcatRole角色。
<tomcat-users>
<role rolename="tomcatRole"/>
<user username="tomcat" password="tomcat" roles="tomcatRole"/>
</tomcat-users>
最后,配置web应用的web.xml文件,配置了该web应用security目录下的资源需要tomcatRole角色才能访问。并配置采用BASIC认证模式。
<security-constraint>
<web-resource-collection>
<web-resource-name>security resource</web-resource-name>
<url-pattern>/security/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>tomcatRole</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Tomcat Manager Application</realm-name>
</login-config>
所有上面全部配置完成后就实现权限认证功能了,当用户访问/security/*对应的资源时浏览器会弹出用户名密码输入框,用户输入后才可以访问。另外realm和认证模式都可以根据实际情况配置成其他类型。
- 如何让你的web具备权限认证
- 如何让你的简历具备更强吸引力
- 让你的浏览器具备Wap功能
- 无法在web服务上启动调试,你不具备调试应用程序的权限
- 让你的Firefox具备Wap浏览器功能
- 具备十五种让你成功的能力
- 具备十五种让你成功的能力
- 具备十五种让你成功的能力
- 具备十五种让你成功的能力
- 如何让你的Web服务器日志文件更安全?
- 如何让你的web应用运行在80端口
- “无法在Web服务器上启动调试.你不具备调试此程序的权限,此项目的URL位于Internet区域”的解决方法
- 如何判定你是否具备有学习Linux的素质
- 如何判定你是否具备有学习Linux的素质
- 如何判定你是否具备有学习Linux的素质
- 具备十五种能力让你成功
- 让ubuntu中通过鼠标点击运行的程序具备root权限的方法
- tornado的权限认证之tornado.web.authenticated
- 构建Linux根文件系统
- 几种解析的优劣势.....
- 【运动控制】C++接口要求
- shell 之 grep 控制显示关键字的 上下行数和不区分大小写
- 菜鸟学c++ 多文件结构
- 如何让你的web具备权限认证
- DLL入门浅析(4)——从DLL中导出类
- struts2的Action(四)
- 【UNET自学日志】Part12 僵尸
- IOS延时执行函数详解
- Struts2 **-validation.xml <param name="expression">正则验证不起作用
- c语言 统计数组中不同字符的个数
- iOS开发系列--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook系统服务开发汇总
- virbr0 虚拟网卡最新关闭方法