保持 Project Zero 和 WebSphere sMash 应用程序的安全性,第 1 部分: 身份验证和授权
2009-10-28 00:00:00 来源:WEB开发网定义安全性规则
正则表达式
除了保护特定的一个 URI 外,通过将 URI 属性设为一个正则表达式模式还可以保护一个资源。例如,如果想保护应用程序 /protected 下的所有东西,就可以把这个规则写为 conditions : "/request/path =~ /protected(/.*)?。这个语法使用的是 PRCE(Perl Compatible Regular Expressions),一种用来匹配任意目标字符串模式的有效方法。
由于正则表达式强大的功能,有可能您所写出的规则未能保护部分 URI 空间。另外,Project Zero 默认文件服务的副作用也很可能会被忽略,当 /foo/ 被访问时,它服务于 /foo/index.html (如果它存在话)。例如,若所写的规则为 "/request/path == /foo/index.html",但如果某人手动访问了 /foo,那么尽管它是同样的资源,后者也将不会受保护。正是由于这个原因,我们推荐将受保护的资源放在公共区域并保护这些区域以及该区域内的所有东西。所以推荐的模式就应该是 "/request/path =~ /prefix(/.*)?"。这将确保所有想要保护的资源均被涵盖。
现在,我们的 wizard 已经添加了用户和组。然而,还没有关于访问这个应用程序需要用户登录的任何说明和规定。在默认情况下,所有内容都是不受保护的;这里没有默认的授权限制。要想保护应用程序或应用程序中的一部分,就需要定义安全性规则。这些规则指定什么资源是受保护的;是通过何种身份验证进行保护的;以及允许哪些用户、组和 /或角色进行访问。
条件子句使用户能够为需要保护的资源定义广泛的限制。在这个示例中,我们使用 Global Contect /request/path 键,它是键入到浏览器以便访问应用程序的上下文相关路径,并且它也是在 Project Zero 中能被保护的基本级别资源。为保护 URI 访问应用程序的主页,需要定义匹配特定条件集的规则。在应用程序 config 文件夹中打开 zero.config 文件并将清单 4 所示的行添加到文件中:
- ››保持Photoshop与显示器色彩模式统一
- ››保持 Project Zero 和 WebSphere sMash 应用程序的...
- ››保持 Project Zero 和 WebSphere sMash 应用程序的...
- ››保持 Project Zero 和 WebSphere sMash 应用程序的...
- ››保持并关闭Excel数据链接更新提示
- ››保持进程在Shell退出后能继续运行方法
- ››保持C/C++程序代码的可伸缩性
- ››保持你对Java的敏感度
- ››保持 EJB 技术的所有优点而不增加 RMI 开销
- ››保持对Java的敏感度切莫忽视思想研究
- ››Project JXTA 中对等管道的构建
- ››保持MySQL安全
更多精彩
赞助商链接