分享
 
 
 

LDAP(轻型目录存取协议)目录中的CORBA对象参考方案

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

摘要

CORBA[CORBA]即“公共对象请求代理体系”(CommonObjectRequestBroker

Architecture),是由对象治理组集团(OMG)所定义。该文档为LDAP目录中的CORBA

对象参考方案[LDAPv3]进行定义。

1、绪论

该文档假设读者已经对CORBA有了一般性的理解。

一般地,LDAP目录被用来存储数据。用户与程序员把目录看成是具有一系列属性的目

录层次。你从目录中查寻一条记录并且抽取你所感爱好的一个或多个属性。例如:你可

以从目录中查寻某人的电话号码。或者,你可以在目录中搜索具体非凡属性的记录。比

如,你可以在目录中查找所有姓氏为Smith的人员。

CORBA应用需要访问CORBA对象。一般地,CORBA应用使用COS名字服务来存储

和读取CORBA对象参考。在有目录的环境下,CORBA应用应该能够把目录作为CORBA

对象参考的库来使用。目录提供核心治理,并且是可复制的,通过网络服务于分布式的

CORBA应用。

比如,一个应用服务器可能用目录来“注册”CORBA对象以执行它所治理的服务,所

以一个客户能随后查找目录来定位所需服务。

本文的目的是来定义应用程序从目录中存储与读取CORBA对象参考的公共方法。使用

这种公共方案,任何需要读取或存储目录中的CORBA对象参考的CORBA应用都能使

用一种能公共操作的方法。

注重本方案是为存储CORBA“对象参考”而定义的,不是一般情形下的CORBA对象。

可能还存在其它没有被本方案代替的在LDAP目录中保存CORBA对象的方法。

2、CORBA对象参考陈述

本文定义方案基础来描述LDAP目录中的一个CORBA对象参考。拥有对象的一个参考

的应用可以调用该对象有调用。这样的参考被称为“可公共操作的对象参考”或简称IOR

(InteroperableObjectReference)。依据一般的Inter-ORB协议,使用IOR访问CORBA

对象对于应用来说是透明地完成的。

一个CORBA对象参考是由corbaObjectReference对象类在目录中来扮演。它是个结构上

的对象类,当扮演一个对象参考时,corbaObjectReference对象类也应该是存在于记录中

的。当一个corbaObjet的子类(如corbaObjectReference)与其它结构上的对象类混合在

一起时,corbaContainer不是必需的。

关于对象类corbaOject,corbaObjectReference,和corbaContainer的定义在第4节中。

corbaObject类有两个可选的属性:corbaRepositoryId与description。corbaRepositoryId是

用来保存一个CORBA对象实现接口的repositoryid的多值属性。

corbaObjectReference类有一个固有属性:corbaIor。corbaIor是用来存储对象的IOR。

corbaIor与corbaRepositoryId在第3节中定义;描述在[v3Schema]中定义。

3、属性类型定义

以下属性类型在本文中定义:

corbaIor

corbaRepositoryId

3.1corbaIor

此属性保存一个CORBA对象的可公共操作的对象参考(IOR)的字符串类型陈述。IOR

是一个对于包含有定位对象必需信息的对象来说是不透明的操作。

此属性的语法是'IA5String'并且是大小写无关的。

(1.3.6.1.4.1.42.2.27.4.1.14

NAME'corbaIor'

DESC'StringifiedinteroperableobjectreferenceofaCORBAobject'

EQUALITYcaseIgnoreIA5Match

SYNTAX1.3.6.1.4.1.1466.115.121.1.26

SINGLE-VALUE

)

3.2corbaRepositoryId

每一个CORBA接口都有个唯一的“repositoryid”(也叫作“typeid”)用来确定接口。

一个CORBA对象有一个或多个repositoryid,每一个对应那个它实现的接口。

repositoryid的格式可是以任意字符串,然而OMG指定了四个标准的格式:

a. IDL-style

IDL:Prefix/ModuleName/InterfaceName:VersionNumber

例如,“NamingContext”以OMGCOS命名模式的repositoryid即为:

“IDL:omg.org/CosNaming/NamingContext:1.0”。

b. RMI-style

RMI:ClassName:HashCode[:SUID]

该格式为RMI-IIOP远程对象[RMI-IIOP]所使用。“ClassName”是完整的类名(如

Java.lang.String)。“HashCode”是该对象的HASH编码(简而言之,是由调用

“hashCode()”方法所得的)。“SUID”即StreamUniqueIdentifier,它是个64们数

字以唯一地识别类的连续性版本;SUID是repositoryid可选的项。

c. DCE-style

DCE:UUID

该格式用于DCE/CORBA互用性[CORBA-DCE]。UUID描述一个DCEUUID。

d. "local"

该格式由本地对象请求代理(ORB)定义。

此属性的语法是'DirecotryString',并且大小写无关。其值用UTF-8方式编码。有些值

可能需要转换自他们的本地化陈述以正确地用UTF-8方式编码。

(1.3.6.1.4.1.42.2.27.4.1.15

NAME'corbaRepositoryId'

DESC'RepositoryidsofinterfacesimplementedbyaCORBAobject'

EQUALITYcaseExactMatch

SYNTAX1.3.6.1.4.1.1466.115.121.1.15

)

4、对象类定义

以下对象类在文中定义:

corbaContainer

corbaObject

corbaObjectReference

4.1corbaContainer

该结构上的对象类描述一种CORBA对象的容器。

(1.3.6.1.4.1.42.2.27.4.2.10

NAME'corbaContainer'

DESC'ContainerforaCORBAobject'

SUPtop

STRUCTURAL

MUST(cn)

)

4.2corbaObject

该抽象对象类是描述一个CORBA对象的根类。

(1.3.6.1.4.1.42.2.27.4.2.9

NAME'corbaObject'

DESC'CORBAobjectrepresentation'

SUPtop

ABSTRACT

MAY(corbaRepositoryId$description)

)

4.3corbaObjectReference

该辅助对象类描述一个CORBA对象参考。它必须与一个结构上的对象类混合在一起。

(1.3.6.1.4.1.42.2.27.4.2.11

NAME'corbaObjectReference'

DESC'CORBAinteroperableobjectreference'

SUPcorbaObject

AUXILIARY

MUST(corbaIor)

)

5、安全考虑

获得一个对象的参考并保存到目录中可能会导致该对象在大范围内是可用的。这里可能

有安全方面的牵连。

6、鸣谢

我们要感谢SunMicorsystems的SanjeevKrishnan,IBM的SimonNash,和Oracle的Jeffrey

Spirn,感谢他们的意见和建议。

7、参考

[CORBA]TheObjectManagementGroup,"CommonObjectRequest

BrokerArchitectureSpecification2.2",

http://www.omg.org

[CORBA-DCE]DistributedSystemsTechnologyCenterandDigital

EquipmentCorporation,"DCE/CORBAInterworking

Specification",May1998.

http://www.omg.org/library/schedule/

DCE_CORBA_Interworking_RFP.Html

[LDAPv3]Wahl,M.,Howes,T.andS.Kille,"LightweightDirectory

AccessProtocol(v3)",RFC2251,December1997.

[RMI-IIOP]IBMandJavaSoftware,SunMicrosystems,Inc.,"RMIover

IIOP",June1999.http://java.sun.com/products/rmi-

iiop/index.html

[v3Schema]Wahl,M.,"ASummaryoftheX.500(96)UserSchemaforuse

withLDAPv3",RFC2256,December1997.

8、作者地址

VincentRyan

SunMicrosystems,Inc.

MailStopEDUB03

901SanAntonioRoad

PaloAlto,CA94303

USA

Phone:+35318199151

EMail:vincent.ryan@ireland.sun.com

RosannaLee

SunMicrosystems,Inc.

MailStopUCUP02-206

901SanAntonioRoad

PaloAlto,CA94303

USA

Phone:+14088633221

EMail:rosanna.lee@eng.sun.com

ScottSeligman

SunMicrosystems,Inc.

MailStopUCUP02-209

901SanAntonioRoad

PaloAlto,CA94303

USA

Phone:+14088633222

EMail:scott.seligman@eng.sun.com

9、附录-LDAP方案

--属性类型--

(1.3.6.1.4.1.42.2.27.4.1.14

NAME'corbaIor'

DESC'StringifiedinteroperableobjectreferenceofaCORBAobject'

EQUALITYcaseIgnoreIA5Match

SYNTAX1.3.6.1.4.1.1466.115.121.1.26

SINGLE-VALUE

)

(1.3.6.1.4.1.42.2.27.4.1.15

NAME'corbaRepositoryId'

DESC'RepositoryidsofinterfacesimplementedbyaCORBAobject'

EQUALITYcaseExactMatch

SYNTAX1.3.6.1.4.1.1466.115.121.1.15

)

--来自于RFC-2256--

(2.5.4.13

NAME'description'

EQUALITYcaseIgnoreMatch

SUBSTRcaseIgnoreSubstringsMatch

SYNTAX1.3.6.1.4.1.1466.115.121.1.15{1024}

)

--对象类--

(1.3.6.1.4.1.42.2.27.4.2.9

NAME'corbaObject'

DESC'CORBAobjectrepresentation'

SUPtop

ABSTRACT

MAY(corbaRepositoryId$description)

)

(1.3.6.1.4.1.42.2.27.4.2.10

NAME'corbaContainer'

DESC'ContainerforaCORBAobject'

SUPtop

STRUCTURAL

MUST(cn)

)

(1.3.6.1.4.1.42.2.27.4.2.11

NAME'corbaObjectReference'

DESC'CORBAinteroperableobjectreference'

SUPcorbaObject

AUXILIARY

MUST(corbaIor)

)

--自ISOX.520的匹配规则--

(2.5.13.5

NAME'caseExactMatch'

SYNTAX1.3.6.1.4.1.1466.115.121.1.15

)

10.完整的版权声明

Copyright(C)TheInternetSociety(1999).AllRightsReserved.

Thisdocumentandtranslationsofitmaybecopiedandfurnishedto

others,andderivativeworksthatcommentonorotherwiseeXPlainit

orassistinitsimplementationmaybeprepared,copied,published

anddistributed,inwholeorinpart,withoutrestrictionofany

kind,providedthattheabovecopyrightnoticeandthisparagraphare

includedonallsuchcopiesandderivativeworks.However,this

documentitselfmaynotbemodifiedinanyway,suchasbyremoving

thecopyrightnoticeorreferencestotheInternetSocietyorother

Internetorganizations,exceptasneededforthepurposeof

developingInternetstandardsinwhichcasetheproceduresfor

copyrightsdefinedintheInternetStandardsprocessmustbe

followed,orasrequiredtotranslateitintolanguagesotherthan

English.

Thelimitedpermissionsgrantedaboveareperpetualandwillnotbe

revokedbytheInternetSocietyoritssuccessorsorassigns.

Thisdocumentandtheinformationcontainedhereinisprovidedonan

"ASIS"basisandTHEINTERNETSOCIETYANDTHEINTERNETENGINEERING

TASKFORCEDISCLAIMSALLWARRANTIES,EXPRESSORIMPLIED,INCLUDING

BUTNOTLIMITEDTOANYWARRANTYTHATTHEUSEOFTHEINFORMATION

HEREINWILLNOTINFRINGEANYRIGHTSORANYIMPLIEDWARRANTIESOF

MERCHANTABILITYORFITNESSFORAPARTICULARPURPOSE.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有