现在的位置: 首页 > 综合 > 正文

基于规则的访问控制

2013年08月29日 ⁄ 综合 ⁄ 共 795字 ⁄ 字号 评论关闭

 尽管 Web 服务器能够为应用程序执行用户身份验证和粗粒度的授权检查,但是 Web 服务和面向服务的体系结构(Service-Oriented Architecture,SOA)开发人员通常必须编写自定义代码来限制对某些系统功能的访问,或者基于用户的标识来自定义行为或外观。在应用程序中嵌入授权检查很不灵活,易于出错,并且增加了复杂性。如果授权检查是数据驱动的而不是由程序逻辑实现的,结果会怎么样呢?通过重用某个授权框架,脚本和编译后的程序可以更小、更简单、更安全,并且可以减少应用程序开发时间和工作量。
引言

您也许熟悉操作系统提供的访问控制功能。它通常对系统调用和通过文件系统指定的资源的操作请求执行授权检查。程序员通常不必测试运行程序的用户是否有权读取数据文件和设置系统时间。操作系统将负责此任务,并通过一个返回值让程序知道是允许还是拒绝此操作。例如,UNIX® 强制实施通过文件所有者 ID、组 ID 和与实际或有效用户标识相关的权限来建立的要求。尽管此设计非常简单,但它可能不够,从而导致某些类 UNIX 系统通过访问控制列表和其他机制对其进行扩展。其他操作系统则使用了更精细的安全模型。而且,该安全模型通常适用于系统已知的文件对象和用户帐户(出现在 /etc/passwd 或 NIS 中的文件对象和用户帐户中)。

对于某些基于服务器的应用程序,此模型是足够的。服务器最初使用增强的特权来执行,因此它能执行任何操作。当代表某个特定用户执行操作时,它实际上就变成了该用户。或者,服务器可以使用系统调用来构建安全模型,从而将操作限制到允许该用户执行的操作。在执行该操作前,程序必须测试授权:当前用户是否允许执行该操作?

。。。。。。

                                                                                      点击此处查看全文

抱歉!评论已关闭.