本主题包括以下几个部分:
(一) 安全服务概述
(二) 安全性如何运行
(三) 安全示例应用程序
(四) 开发步骤
安全服务概述
CORBA环境中的Oracle Tuxedo的产品提供了一个基于CORBA安全服务的安全模型。 Oracle Tuxedo的CORBA安全模型实现CORBA安全服务的身份验证部分。
在的CORBA环境安全信息定义一个域的基础上。在配置文件中定义的安全级别域。客户端应用程序使用SecurityCurrent的对象提供必要的身份认证信息登录到Oracle Tuxedo域。
提供以下级别的身份验证:
1) TOBJ_NOAUTH
不需要身份验证,但是,客户端应用程序可能仍然验证,并且可以指定一个用户名和一个客户端应用程序的名称,但不提供密码。
2) TOBJ_SYSAUTH
客户端应用程序必须到Oracle Tuxedo域进行身份验证,必须指定一个用户名,客户端应用程序名称,应用程序密码。
3) TOBJ_APPAUTH
除了向TOBJ_SYSAUTH信息,客户端应用程序必须提供特定于应用程序的信息。如果在应用程序配置,使用默认的Oracle Tuxedo的的CORBA认证服务的客户端应用程序必须提供用户密码,否则,客户端应用程序提供身份验证,数据步骤如下:
1) 客户端应用程序使用的引导对象,返回一个对象引用到的SecurityCurrent的对象为Oracle Tuxedo域。
2) 客户端应用程序获得的PrincipalAuthenticator。
3) 客户端应用程序使用的Tobj::PrincipalAuthenticator::get_auth_type()方法得到的Oracle Tuxedo域的身份验证级别。
4) 正确的身份验证级别返回到客户端应用程序。
5) 客户端应用程序使用的Tobj::PrincipalAuthenticator::logon()方法登录到Oracle Tuxedo域的正确的验证信息。
安全示例应用程序
安全性的示例应用程序演示了如何使用密码身份验证。安全示例应用程序需要使用该应用程序,每个学生都有一个ID和密码。安全示例应用程序通过以下方式:
1) 客户端应用程序有一个logon()操作。此操作将调用上的PrincipalAuthenticator作为登录的过程中,访问该域的一部分获得的对象,该对象的操作。
2) 服务器应用程序实现的一个get_student_details()返回一个学生的信息Registrar对象的操作。 在用户进行身份验证,登录完成和的get_student_details()操作访问数据库中的信息,以获得所需要的客户端登录操作的学生信息的学生。
3) 安全示例应用程序中的数据库包含课程和学生的信息。
开发步骤
第1步:在配置文件中定义的安全级别
在的安全示例应用程序,应用程序级别的安全性, SECURITY参数设置为APP_PW。
第2步:写的CORBA客户端应用程序
编写客户端应用程序代码执行以下操作:
1) 使用的引导对象获得一个参考到的SecurityCurrent的对象为特定的Oracle Tuxedo域。
2) 获取对象从SecurityCurrent对象的PrincipalAuthenticator。
3) 使用操作的PrincipalAuthenticator对象的get_auth_type()返回的身份验证类型的Oracle Tuxedo域的预期。