CN1162788A - 在面向对象系统中控制对保护对象的存取的系统和方法 - Google Patents
在面向对象系统中控制对保护对象的存取的系统和方法 Download PDFInfo
- Publication number
- CN1162788A CN1162788A CN 96117929 CN96117929A CN1162788A CN 1162788 A CN1162788 A CN 1162788A CN 96117929 CN96117929 CN 96117929 CN 96117929 A CN96117929 A CN 96117929A CN 1162788 A CN1162788 A CN 1162788A
- Authority
- CN
- China
- Prior art keywords
- access
- class
- permission
- group
- carried out
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
在使用面向对象技术的信息处理系统中用于控制对象存取的系统、方法和生产的物体,包括处理器,存储系统,I/O控制器,总线,用于控制处理器、存储系统和I/O控制器运行的操作系统,以及一个面向对象的包括一个把一组许可和由类决定的方法联系起来的装置的控制装置。通过追踪该方法至该定义类,在执行方法中,对前面方法的调用可以避免检查授权。在涉及到授予或否定被继承方法的存取权时,对象属性的继承可以解决对象保护的问题。
Description
本发明涉及信息处理系统、方法和生产的物体(articles ofmanufacture),特别是涉及通过面向对象系统中的存取控制来保护对象的系统、方法和生产的物体。
在面向对象的系统中,对对象存取进行保护是必要的。
在许多面向对象的系统中,系统可以通过使对象安全性具有继承性而得到改进。子类应继承其父类的安全性信息,以保留由父类引入的存取控制保护,并保留对象系统的继承一致性。在面向对象的系统中,方法级存取控制可以这样得到:每一个类都是一个或多个对象组的一个成员,且每一方法都需要一个或多个在其类级别中定义的存取许可。这一组许可被称为方法的规定存取权或MRAR。存取控制表(ACL)与每一个对象组相关联。一个执行定义在被保护类中的方法的请求触发存取控制机制,该存取控制机制把请求主体的优先级和类对象组的ACL及方法的MRAR组进行比较。然而,有效地确定被继承的方法是由被保护类还是由未被保护类引入,以便据此进行方法存取检查是很重要的。此外,类能够继承正确存取控制信息也是很重要的,该存取控制信息包括方法的MRAR、类对象组和适当的存取控制表。
在现有技术中,有许多用于改进面向对象编程系统(OOPS)的技术。
下面是现有技术的一些例子。
美国专利4,525,780讲述了一种具有组织成对象的存储器的数据处理系统,其中,系统通过辨别用户的类别号、执行用户程序的过程和用户程序所执行的操作系统的类型,来识别用户对对象进行的非法存取,并利用保护技术防止非法存取。保存存取控制表以便控制基于主标识符的对象存取。
虽然该专利总体上是处理在面向对象程序中保护对象存取的方法,但它并没有像参照本发明中讲述和要求的那样,讲述和建议在面向对象的系统中使用安全属性继承性以便控制对象的存取。
美国专利5,136,712讲述了一种用于多任务计算机系统的基于对象的操作系统,它包括使对象私有于某一过程的方法。对私有对象的存取由存取控制表控制。
虽然该专利总体上是处理在面向对象程序中对对象进行存取保护的方法,但它并没有像本发明中讲述和要求的那样,讲述和建议在面向对象的系统中使用安全属性继承性以便控制对象的存取。
美国专利5,265,221讲述了一种存取控制机制,该机制利用动词(verbs)系统、参数、属性和功能的系统用来授予、取消和拒绝对对象的权限。
虽然该专利总体上是处理在面向对象程序中对对象进行存取保护的方法,但它并没有像本发明中讲述和要求的那样,讲述和建议在面向对象的系统中使用安全属性继承以便控制对象的存取。
美国专利5,297,283和美国专利5,321,841可以认为是讲述了一种与上面讨论过的美国专利5,136,712相同的系统。
虽然该专利总体上是处理在面向对象程序中对对象进行存取保护的方法,但它并没有像在本发明中讲述和要求的那样,讲述和建议在面向对象的系统中使用安全属性继承以便控制对象的存取。
美国专利5,093,914总体上讲述了一种数字计算机在控制面向对象程序的执行以便实现某一特定动作的过程中所使用的方法,例如,在执行程序过程中,当某一特定实际功能被某一特定对象调用时,程序终止。
虽然该专利总体上是处理在面向对象程序中保护对象存取的方法,但它并没有像本发明中讲述和要求的那样,讲述和建议在面向对象的系统中使用安全属性继承以便控制对象的存取。
美国专利5,343,554讲述了一个计算系统,该系统中的问题通过如下过程解决:创建第一类和第二类对象,其中第二类对象是可以外部调用的,且外部可调用的子类对象包括一个内部可调用的子类对象的标记;执行对象类,其中某一外部可调用的子对象调用内部可调用的子对象,并生成一个与结果相应的第一类新对象。
虽然该专利总体上是处理在面向对象程序中保护对象存取的方法,但它并没有像本发明中讲述和要求的那样,讲述和建议在面向对象的系统中使用安全属性继承以便控制对象的存取。
面向对象编程系统的总体对象是开发一种可轻易地重复使用的对象程序。
二进制码取代源码的重要性随着代码重复使用程度的增加而增加。面向对象技术的主要目的在于代码复用。二进制码的复用对于使面向对象技术在更大的范围内取得成功是必不可少的。随着技术的状态朝着基于可以相互裁剪和插入的由对象格式构造应用的方向发展,其中该对象格式可以裁剪和相互插入,二进制码变得极端重要。
对象管理组(Object Management Group)定义了一套被称为通用对象服务(Common Object Service)的对象系统服务接口。
本发明的目的是通过控制对对象的存取来保护面向对象系统中的对象。
因此,在使用面向对象技术的信息处理系统中,用于控制对象存取的系统、方法和生产的物体,包括一个或多个处理器,一个存储器系统,一个或多个控制着一个或多个I/O装置的I/O控制器,一条连接处理器、存储器系统和I/O控制器的总线,一个用于控制处理器、存储器系统和I/O控制器运行的操作系统,以及一个面向对象的控制装置,该装置通过确定类包括一个把一组许可和由类决定的方法通过确定类联系起来的装置。通过追踪该方法至该定义类,可以确定在执行方法中对前面方法的调用以避免检查授权。在涉及到授予或拒绝对被继承方法的存取权时,对象属性的继承可以解决对象保护的问题。
本发明的一个优点在于,对象安全性可以通过创建一个安全元类(metaclass)得以真正实现,该元类先于方法调度执行授权检查。
图1是执行本发明方法的系统的框图。
图2是显示支持本发明的操作系统平台和系统对象模块程序的框图。
图3是示例本发明安全对象继承体系的对象图(objectdiagram)。
图4是示例本发明安全运行继承体系的对象图。
图5是示例本发明注册安全服务对象继承体系的对象图。
图6是示例本发明安全对象过程结构的对象图。
图7是示例本发明安全服务过程结构的对象图。
参照图1和图2,描述了本发明的信息处理系统10和操作系统环境。
信息处理系统10可以是一个图形工作站或类似的系统,它具有功能非常强大的处理器12,存储系统14,系统总线16,控制显示装置20的显示子系统18,光标控制装置22,和I/O控制器24,它们全部通过系统总线16连接起来。由图1所示的信息处理系统10,可以运行众所周知的商品化多任务操作系统,如OS/2×(OS/2是由国际商业机器公司的注册商标)。由OS/2操作系统控制操作的信息处理系统10的诸多任务之一是执行SOM Object对象程序,该程序是国际商业机器公司的商品化产品。
有关本发明产品的方法和物体,可以包含在SOM Object对象程序中。
任何面向对象系统的一个重要方面是保证对象安全,以便可以执行对象/方法粒度存取控制。这包含前面方法中的存取控制检查。
本发明可以有效地实现在分布式SOM(DSOM)(交叉地址空间ORB)和安全SOM(SSOM)系统中。
用户指定安全性的方法是在搜索对象类时指定如下约束条件:
名称:安全
值:指示对象是否受存取控制检查保护的逻辑值。
名称:ACL
值:如果安全==TRUE,存取控制表
当粒度是每一个方法时,可以在每一次方法调用时实现,也可以首先获得一个引用时实现(可能性方法)。本发明提供了基于方法调用的实现。
附图3的对象图描绘了安全对象的继承性。对象安全通过继承安全对象的特性而得到保证。这保证了当任一方法被一个实例调用时,前/后元类的安全性可以受到控制,并由此授予对对象的存取权。
此外,必须为类和实例(instance)指定一些授权规则。更加详细的授权规则描述见于顺序号为No.08/852,271的美国专利申请。
前/后元类将按实例类在继承树中所指定的顺序构成。在本发明的优选实施方案中,采用了从左到右的优先继承。因此,为确保在任何其它前/元类之前执行该授权,应该保证该类从该体系的最左端开始继承。(见图4)。
图4中显示了安全运行对象的类继承性。运行时间由两个主要对象组成:系统授权规则(SAP)和ACL管理器。SAP由安全性授权::SAP接口继承而来,顺次地,SAP接口由安全性授权::SAO接口(SAO为系统授权预言)继承而来。SAP接口支持对存取规则的管理,而SAO接口支持对对象组的有效存取。
ACL管理器用来管理被存储的ACL信息,包括根据被存储的ACL值而对存取请求进行的评估。ACL管理器封装储存的ACL格式。附图5的对象图显示了注册安全服务器对象的类继承性。从授权角度来看,基本对象就是注册对象。注册对象是任何相关的原有或扩展前级授权管理系统的外层。注册对象的唯一重要之处在于它被用作单一实例元类,并且是由安全对象继承而来的,因此它可以安全地操作。
附图6的对象图显示了安全对象过程的结构。如上所述,每一个安全对象将是安全元类的一个实例。安全元类将保证所有对安全对象的存取都是有效的。这将通过使用SAP对象及ACL管理器来实现。
每一个过程都具有从运行模块得到的单个SAP对象。ACL管理器利用基于与安全对象相关的对象组信息的SAP而得到示例。
附图7的对象图显示了安全服务过程的结构。因为注册对象是安全对象,所以安全服务过程包含一个SAP/SAO对象和一个或多个ACL管理器对象以控制对注册对象本身的存取。此外,注册对象本身利用SAP/SAO对象和加以扩展的ACL控制器对象来管理特定对象组的存取规则信息。最后,注册对象一般通过内部用户注册服务与用户注册器、对象组库和安全类库接口以进行用户注册。
将会体会到的是,虽然在这里描述本发明具体实施方案的目的仅仅是为了示例,但仍可以在不背离本发明宗旨和范围的条件下进行各式各样的修改。
因此,本发明的范围仅仅限定于下述的权利声明及其等价物。
Claims (11)
1.在利用面向对象技术的信息处理系统中,用于对对象进行存取控制的方法,包括以下步骤:
继承一个或多个由产生该对象的类而来的对象的安全特性;
将一组许可与方法联系起来;和
将这组许可与存取控制表比较以允许对该对象的存取。
2.根据权利要求1的方法,其特征在于,将一组许可与方法联系的步骤还包含了以下步骤:
追踪该方法至该定义类;和
确保在运行方法中调用前面的方法以便避免授权检查。
3.根据权利要求1的方法,其特征在于,将一组许可与方法联系的步骤还包含了如下步骤:
确定定义该方法的类。
4.根据权利要求1的方法,其特征在于,控制存取的步骤还包含以下步骤:
如果比较步骤表明允许对受保护的类进行存取,那么就调度被调用方法。
5.在利用面向对象技术的信息处理系统中,计算机可读媒体中包含用于控制对象存取的装置,该装置包括:
继承一个或多个由产生该对象的类而来的对象安全特性的装置;
将一组许可与方法联系起来的装置;以及
将该组许可与存取控制表比较以允许对该对象进行存取的装置。
6.根据权利要求5的计算机可读存储媒体,其特征在于,所述控制存取的装置还包括:
追踪该方法至该定义类的装置;
确保在运行方法中调用前面的方法以便避免授权检查的装置。
7.根据权利要求5的计算机可读存储媒体,其特征在于,将一组许可与方法联系起来的装置还包括:
确定定义该方法的类的装置。
8.根据权利要求5的计算机可读存储媒体,其特征在于,控制存取的装置还包括:
如果比较装置表明允许对受保护类进行存取,那么就调度被调用方法的装置。
9.利用面向技术、用来控制对象存取的信息处理系统,包括:
一个或多个处理器;
一个存储系统;
一个或多个控制着一个或多个I/O装置的I/O控制器;
一条连接处理器、存储系统和I/O控制器的总线;
一个用于控制处理器、存储系统和I/O控制器操作的操作系统;
从产生该对象的类继承一个或多个对象安全特性的装置;
通过确定定义该方法的类,将一组许可与方法联系起来的装置;以及
将该组许可与存取控制表比较以便允许对该对象进行存取的装置。
10.根据权利要求9的信息处理系统,其特征在于,还包括:
追踪该方法至该定义类的装置;
确保在运行方法中调用前面的方法以便避免授权检查的装置。
11.根据权利要求9的信息处理系统,其特征在于还包括:
如果比较装置表明允许对受保护的类进行存取,则调度被调用方法的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 96117929 CN1162788A (zh) | 1995-12-29 | 1996-12-23 | 在面向对象系统中控制对保护对象的存取的系统和方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US580,109 | 1995-12-29 | ||
CN 96117929 CN1162788A (zh) | 1995-12-29 | 1996-12-23 | 在面向对象系统中控制对保护对象的存取的系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1162788A true CN1162788A (zh) | 1997-10-22 |
Family
ID=5124688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 96117929 Pending CN1162788A (zh) | 1995-12-29 | 1996-12-23 | 在面向对象系统中控制对保护对象的存取的系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1162788A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1329858C (zh) * | 1999-02-09 | 2007-08-01 | 国际商业机器公司 | 一种动态的基于对象格式的用于数据操纵的系统和方法 |
CN100338543C (zh) * | 1998-03-03 | 2007-09-19 | 网络装置公司 | 文件服务器和用于操作文件服务器的方法 |
CN100418074C (zh) * | 2004-03-05 | 2008-09-10 | 菲尼萨公司 | 光学收发机中的分级和字节可配置存储器 |
-
1996
- 1996-12-23 CN CN 96117929 patent/CN1162788A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100338543C (zh) * | 1998-03-03 | 2007-09-19 | 网络装置公司 | 文件服务器和用于操作文件服务器的方法 |
CN1329858C (zh) * | 1999-02-09 | 2007-08-01 | 国际商业机器公司 | 一种动态的基于对象格式的用于数据操纵的系统和方法 |
CN100418074C (zh) * | 2004-03-05 | 2008-09-10 | 菲尼萨公司 | 光学收发机中的分级和字节可配置存储器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1308832C (zh) | 防御恶意代码而对计算机程序和数据进行保护的方法和装置 | |
US7181580B2 (en) | Secure pointers | |
Karger | Limiting the damage potential of discretionary Trojan horses | |
JP3081619B2 (ja) | コンピュータ・システムとその保安方法 | |
US6047377A (en) | Typed, parameterized, and extensible access control permissions | |
US5504814A (en) | Efficient security kernel for the 80960 extended architecture | |
US5787427A (en) | Information handling system, method, and article of manufacture for efficient object security processing by grouping objects sharing common control access policies | |
US7058768B2 (en) | Memory isolation through address translation data edit control | |
US7085928B1 (en) | System and method for defending against malicious software | |
US6253251B1 (en) | Information handling system, method, and article of manufacture including integration of object security service authorization with a distributed computing environment | |
KR20010040979A (ko) | 스택에 기초한 액세스 제어 | |
CN1203394A (zh) | 在安全存储区中保护应用程序数据的方法和装置 | |
US7647629B2 (en) | Hosted code runtime protection | |
WO1999030238A2 (en) | Secure class resolution, loading and definition | |
CN1818876A (zh) | 在微处理器实现的设备上执行进程的系统和方法 | |
US10956615B2 (en) | Securely defining operating system composition without multiple authoring | |
CN102955915A (zh) | 一种Java应用安全访问控制方法及其装置 | |
US6725345B2 (en) | Object-oriented program with a memory accessing function | |
CN1100299C (zh) | 面向对象系统中对被保护对象进行访问控制的系统和方法 | |
CN1162788A (zh) | 在面向对象系统中控制对保护对象的存取的系统和方法 | |
CN112231733A (zh) | 对象代理特征数据库的mac防护增强系统 | |
KR102525655B1 (ko) | 문서 저장 제어 방법 | |
US6985911B2 (en) | Mechanism for invocation of user-defined routines in a multi-threaded database environment | |
JPH09212367A (ja) | オブジェクトへのアクセスを制御するための方法及び情報処理システム | |
WO2019237864A1 (zh) | 一种安全用户架构及权限控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |