CORBAアプリケーションにおけるセキュリティの使用

     前  次    新規ウィンドウで目次を開く  新規ウィンドウで索引を開く  PDFとして表示 - 新規ウィンドウ  Adobe Readerを取得 - 新規ウィンドウ
コンテンツはここから始まります

オートメーション・セキュリティ・リファレンス

ここでは、CORBAセキュリティのオートメーション・メソッドについて説明します。ここでは、次の内容について説明します。

注意: オートメーション・セキュリティ・メソッドは、証明書による認証またはSSLプロトコルの使用をサポートしません。
注意: Oracle Tuxedo CORBA JavaクライアントとOracle Tuxedo CORBA JavaクライアントORBはTuxedo 8.1で非推奨になり、サポートされなくなりました。すべてのOracle Tuxedo CORBA JavaクライアントおよびOracle Tuxedo CORBA JavaクライアントORBのテキスト・リファレンスとコード・サンプルは、サード・パーティ製のJava ORBライブラリを実装または実行する際の参考や、プログラマの参照用としてのみ使用してください。
注意: サード・パーティのCORBA Java ORBのテクニカル・サポートは、各ベンダーによって提供されます。Oracle Tuxedoでは、サード・パーティのCORBA Java ORBに関する技術的なサポートやドキュメントは提供していません。

 


メソッドの説明

ここでは、オートメーション・セキュリティ・サービスのメソッドについて説明します。

DISecurityLevel2_Current

DISecurityLevel2_Currentオブジェクトは、CORBAセキュリティ・モデルのOracle実装です。Oracle Tuxedoソフトウェアのこのリリースでは、get_attributes()メソッド、set_credentials()メソッド、get_credentials()メソッド、およびPrincipal_Authenticator()メソッドがサポートされます。

 


DISecurityLevel2_Current.get_attributes

概要

Currentインタフェースの属性を返します。

MIDLマッピング

HRESULT get_attributes(
[in] VARIANT attributes,
[in,out,optional] VARIANT* exceptionInfo,
[out,retval] VARIANT* returnValue);

オートメーション・マッピング

Function get_attributes(attributes, [exceptionInfo])

パラメータ

attributes

値が必要とされているセキュリティ属性(権限属性タイプ)のセット。このリストが空の場合は、すべての属性が返されます。

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。

説明

このメソッドは、クライアント・アプリケーションに対する資格証明の権限などの属性をCurrentインタフェースから取得します。

戻り値

DISecurity_SecAttributeオブジェクトの配列を含むバリアント。次の表は、有効な戻り値について説明しています。

戻り値
意味
Security::Public
空(認証が実行されなかった場合は、Publicが返されます)。
Security::AccessId
Oracle Tuxedoユーザー名を含むNULL終了ASCII文字列。
Security::PrimaryGroupId
Oracle Tuxedoクライアント・アプリケーション名を含むNULL終了ASCII文字列。

 


DISecurityLevel2_Current.set_credentials

概要

資格証明のタイプを設定します。

MIDLマッピング

HRESULT set_credentials(
[in] Security_CredentialType cred_type,
[in] DISecurityLevel2_Credentials* cred,
[in,out,optional] VARIANT* exceptionInfo);

オートメーション・マッピング

Sub set_credentials(cred_type As Security_CredentialType,
cred As DISecurityLevel2_Credentials,
[exceptionInfo])

説明

このメソッドは、SecInvocationCredentialsの設定にのみ使用できます。それ以外の場合に使用すると、set_credentialsCORBA::BAD_PARAMが発生します。資格証明は、以前のDISecurityLevel2_Current.get_credentialsへの呼出しで取得済になっている必要があります。

引数

cred_type

設定する資格証明のタイプ(invocation、own、またはnon-repudiation)。

cred

Credentialsオブジェクトに対するオブジェクト参照。これがデフォルトになります。

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。

戻り値

なし。

 


DISecurityLevel2_Current.get_credentials

概要

資格証明のタイプを取得します。

MIDLマッピング

HRESULT get_credentials(
[in] Security_CredentialType cred_type,
[in,out,optional] VARIANT* exceptionInfo,
[out,retval] DISecurityLevel2_Credentials** returnValue);

オートメーション・マッピング

Function get_credentials(cred_type As Security_CredentialType,
[exceptionInfo]) As DISecurityLevel2_Credentials

説明

この呼出しは、SecInvocationCredentialsの取得にのみ使用できます。それ以外の場合に使用すると、get_credentialsCORBA::BAD_PARAMが発生します。資格証明を使用できない場合、get_credentialsCORBA::BAD_INV_ORDERが発生します。

引数

cred_type

取得する資格証明のタイプ。

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。

戻り値

クライアント・アプリケーションのみのアクティブな資格証明用のDISecurityLevel2_Credentialsオブジェクト。

 


DISecurityLevel2_Current.principal_authenticator

概要

PrincipalAuthenticatorを返します。

MIDLマッピング

HRESULT principal_authenticator([out, retval]
DITobj_PrincipalAuthenticator** returnValue);

オートメーション・マッピング

Property principal_authenticator As DITobj_PrincipalAuthenticator

説明

principal_authenticatorプロパティによって返されたPrincipalAuthenticatorは、実際の型DITobj_PrincipalAuthenticatorによるものです。したがって、これはDISecurityLevel2_PrincipalAuthenticatorとして使用できます。

注意: このメソッドが無効なSecurityCurrentオブジェクトで呼び出された場合、CORBA::BAD_INV_ORDERが発生します。

戻り値

DITobj_PrincipalAuthenticatorオブジェクト。

DITobj_PrincipalAuthenticator

DITobj_PrincipalAuthenticatorオブジェクトは、Oracle Tuxedoドメインに対するログインおよびログアウトに使用します。Oracle Tuxedoソフトウェアのこのリリースでは、authenticateメソッド、build_auth_data()メソッド、continue_authentication()メソッド、get_auth_type()メソッド、logon()メソッド、およびlogoff()メソッドが実装されています。

 


DITobj_PrincipalAuthenticator.authenticate

概要

クライアント・アプリケーションを認証します。

MIDLマッピング

HRESULT authenticate(
      [in] long                                 method,
      [in] BSTR                                 security_name,
      [in] VARIANT                             auth_data,
      [in] VARIANT                             privileges,
      [out] DISecurityLevel2_Credentials**
                                                  creds,
      [out] VARIANT*                           continuation_data,
      [out] VARIANT*                           auth_specific_data,
      [in,out,optional] VARIANT*             exceptionInfo,
      [out,retval] Security_AuthenticationStatus* returnValue);

オートメーション・マッピング

Function authenticate(method As Long, security_name As String,
auth_data, privileges, creds As DISecurityLevel2_Credentials,
continuation_data, auth_specific_data,
[exceptionInfo]) As Security_AuthenticationStatus

引数

method

Tobj::TuxedoSecurityでなければなりません。method無効な場合、authenticateCORBA::BAD_PARAMが発生します。

security_name

Oracle Tuxedoユーザー名です。

auth_data

DITobj_PrincipalAuthenticator.build_auth_dataによって返されます。auth_dataが無効な場合、authenticateCORBA::BAD_PARAMが発生します。

privileges

DITobj_PrincipalAuthenticator.build_auth_dataによって返されます。privilegesが無効な場合、authenticateCORBA::BAD_PARAMが発生します。

creds

SecurityCurrentオブジェクトに配置されます。

continuation_data

常に空です。

auth_specific_data

常に空です。

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。

説明

このメソッドは、クライアント・アプリケーションがOracle TuxedoドメインにアクセスできるようにIIOPリスナー/ハンドラを介してクライアント・アプリケーションを認証します。

戻り値

Security_AuthenticationStatus列挙値。次の表は、有効な戻り値について説明しています。

戻り値
意味
Security::AuthenticationStatus::
SecAuthSuccess
認証が成功したことを示します。
Security::AuthenticationStatus::
SecAuthFailure
認証が失敗したか、またはクライアント・アプリケーションがすでに認証済で、Tobj::PrincipalAuthenticator:logoffまたはTobj_Bootstrap::destroy_currentを呼び出さなかったことを示します。

 


DITobj_PrincipalAuthenticator.build_auth_data

概要

DITobj_PrincipalAuthenticator.authenticateで使用する認証データと属性を作成します。

MIDLマッピング

HRESULT build_auth_data(
[in] BSTR
                   user_name,
[in] BSTR
                   client_name,
[in] BSTR
                   system_password,
[in] BSTR
                   user_password,
[in] VARIANT
                user_data,
[out] VARIANT*
              auth_data,
[out] VARIANT*
              privileges,
[in,out,optional] VARIANT* exceptionInfo);

オートメーション・マッピング

Sub build_auth_data(user_name As String, client_name As String,
system_password As String, user_password As String, user_data,
auth_data, privileges, [exceptionInfo])

引数

user_name

Oracle Tuxedoユーザー名です。

client_name

CORBAクライアント・アプリケーション名です。

system_password

CORBAクライアント・アプリケーションのパスワードです。

user_password

デフォルト認証サービスのユーザー・パスワードです。

user_data

カスタム認証サービスで使用するクライアント・アプリケーション固有のデータです。

auth_data

authenticateで使用します。

privileges

authenticateで使用します。

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。
注意: user_nameclient_name、またはsystem_passwordがNULLまたは空の場合、あるいは30文字を超えている場合、以降のauthenticateメソッド呼出しでCORBA::BAD_PARAM例外が発生します。
注意: user_passwordパラメータとuser_dataパラメータは相互に排他的であり、Oracle Tuxedoドメインの構成で使用する認証サービスの要件によって異なります。デフォルトの認証サービスにはユーザー・パスワードが必要です。カスタマイズされた認証サービスにはユーザー・データが必要です。user_passworduser_dataの両方が指定されている場合、後続の認証呼出しでCORBA::BAD_PARAM例外が発生します。

説明

このメソッドは、DITobj_PrincipalAuthenticator.authenticateで使用する認証データと属性を作成するヘルパー関数です。

注意: このメソッドが無効なSecurityCurrentオブジェクトで呼び出された場合、CORBA::BAD_INV_ORDERが発生します。

戻り値

なし。

 


DITobj_PrincipalAuthenticator.continue_authentication

概要

常にSecurity::AuthenticationStatus::SecAuthFailureを返します。

MIDLマッピング

HRESULT continue_authentication(
[in] VARIANT response_data,
[in,out] DISecurityLevel2_Credentials** creds,
[out] VARIANT* continuation_data,
[out] VARIANT* auth_specific_data,
[in,out,optional] VARIANT* exceptionInfo,
[out,retval] Security_AuthenticationStatus* returnValue);

オートメーション・マッピング

Function continue_authentication(response_data,
creds As DISecurityLevel2_Credentials, continuation_data,
auth_specific_data, [exceptionInfo]) As
Security_AuthenticationStatus

説明

Oracle Tuxedoソフトウェアは1つの手順で認証を実行するため、このメソッドは常に失敗し、Security::AuthenticationStatus::SecAuthFailureを返します。

戻り値

常にSecAuthFailureを返します。

 


DITobj_PrincipalAuthenticator.get_auth_type

概要

Oracle Tuxedoドメインによって予測されている認証のタイプを取得します。

MIDLマッピング

HRESULT get_auth_type(
[in, out, optional] VARIANT* exceptionInfo,
[out, retval] Tobj_AuthType* returnValue);

オートメーション・マッピング

Function get_auth_type([exceptionInfo]) As Tobj_AuthType

引数

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。

説明

このメソッドは、Oracle Tuxedoドメインによって予測されている認証のタイプを返します。

注意: このメソッドが無効なSecurityCurrentオブジェクトで呼び出された場合、CORBA::BAD_INV_ORDERが発生します。

戻り値

Tobj_AuthType列挙への参照。次の表は、有効な戻り値について説明しています。

戻り値
意味
TOBJ_NOAUTH
認証はまったく必要ありません。ただし、クライアント・アプリケーションは、ユーザー名とクライアント・アプリケーション名を指定することで認証を受けることができます。パスワードは不要です。
このセキュリティ・レベルを指定するには、UBBCONFIGファイルのRESOURCESセクションにあるSECURITYパラメータにNONE値を指定します。
TOBJ_SYSAUTH
クライアント・アプリケーションは、Oracle Tuxedoドメインに対して自身を認証する必要があります。また、ユーザー名、クライアント名、およびパスワードを指定する必要があります。
このセキュリティ・レベルを指定するには、UBBCONFIGファイルのRESOURCESセクションにあるSECURITYパラメータにAPP_PW値を指定します。
TOBJ_APPAUTH
クライアント・アプリケーションは、Oracle Tuxedoドメインに対してクライアント・アプリケーションを認証する証明資料を提供する必要があります。証明資料は、パスワードまたはデジタル証明書です。
このセキュリティ・レベルを指定するには、UBBCONFIGファイルのRESOURCESセクションにあるSECURITYパラメータにUSER_AUTH値を指定します。

 


DITobj_PrincipalAuthenticator.logon

概要

Oracle Tuxedoドメインにログインします。適切な入力パラメータは、認証レベルによって異なります。

MIDLマッピング

HRESULT logon(
[in] BSTR
                                   user_name,
[in] BSTR                                     client_name,
[in] BSTR                                  system_password,
[in] BSTR                                  user_password,
[in] VARIANT                                 user_data,
[in,out,optional] VARIANT*                exceptionInfo,
[out,retval] Security_AuthenticationStatus*
                                                  returnValue);

オートメーション・マッピング

Function logon(user_name As String, client_name As String,
system_password As String, user_password As String,
user_data, [exceptionInfo]) As Security_AuthenticationStatus

説明

リモートCORBAクライアント・アプリケーションの場合、このメソッドは、リモート・クライアント・アプリケーションがOracle TuxedoドメインにアクセスできるようにIIOPリスナー/ハンドラを介してクライアント・アプリケーションを認証します。このメソッドは、DITobj_PrincipalAuthenticator.authenticateと同じ機能ですが、パラメータはセキュリティ指向です。

引数

user_name

Oracle Tuxedoユーザー名です。このパラメータは、TOBJ_NOAUTHTOBJ_SYSAUTH、およびTOBJ_APPAUTH認証レベルで必須です。

client_name

CORBAクライアント・アプリケーション名です。このパラメータは、TOBJ_NOAUTHTOBJ_SYSAUTH、およびTOBJ_APPAUTH認証レベルで必須です。

system_password

CORBAクライアント・アプリケーションのパスワードです。このパラメータは、TOBJ_SYSAUTHおよびTOBJ_APPAUTH認証レベルで必須です。

user_password

デフォルト認証サービスのユーザー・パスワードです。このパラメータは、TOBJ_APPAUTH認証レベルで必須です。

user_data

カスタム認証サービスで使用するアプリケーション固有のデータです。このパラメータは、TOBJ_APPAUTH認証レベルで必須です。
注意: user_nameclient_name、またはsystem_passwordがNULLまたは空の場合、あるいは30文字を超えている場合、以降のauthenticateメソッド呼出しでCORBA::BAD_PARAM例外が発生します。
注意: 認可レベルがTOBJ_APPAUTHの場合、user_passwordまたはuser_dataのいずれか1つを提供できます。

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。

戻り値

次の表は、有効な戻り値について説明しています。

戻り値
意味
Security::AuthenticationStatus::
SecAuthSuccess
認証が成功したことを示します。
Security::AuthenticationStatus::
SecAuthFailure
認証が失敗したか、またはクライアント・アプリケーションがすでに認証済で、次のメソッドのいずれかを呼び出さなかったことを示します。
Tobj::PrincipalAuthenticator:logoff
Tobj_Bootstrap::destroy_current

 


DITobj_PrincipalAuthenticator.logoff

概要

CORBAクライアント・アプリケーションに関連付けられた現在のセキュリティ・コンテキストを破棄します。

MIDLマッピング

HRESULT logoff([in, out, optional] VARIANT* exceptionInfo);

オートメーション・マッピング

Sub logoff([exceptionInfo])

説明

この呼出しは、CORBAクライアント・アプリケーションに関連付けられたコンテキストを破棄しますが、Oracle Tuxedoドメインへのネットワーク接続を閉じません。Logoffでも、現在の資格証明を無効化できます。認証タイプがTOBJ_NOAUTHでない場合、ログオフした後の既存のオブジェクト参照を使用した呼出しは失敗します。

クライアント・アプリケーションが現在Oracle Tuxedoドメインに対して認証されている場合、Tobj_Bootstrap.destroy_current()を呼び出すと、暗黙的にlogoffが呼び出されます。

引数

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。

戻り値

なし。

DISecurityLevel2_Credentials

DISecurityLevel2_Credentialsオブジェクトは、CORBAセキュリティ・モデルのOracle実装です。Oracle Tuxedoソフトウェアのこのリリースでは、get_attributes()メソッドおよびis_valid()メソッドがサポートされます。

 


DISecurityLevel2_Credentials.get_attributes

概要

資格証明に添付された属性リストを取得します。

MIDLマッピング

HRESULT get_attributes(
[in] VARIANT attributes,
[in,out,optional] VARIANT* exceptionInfo,
[out,retval] VARIANT* returnValue);

オートメーション・マッピング

Function get_attributes(attributes, [exceptionInfo])

引数

attributes

値が必要とされているセキュリティ属性(権限属性タイプ)のセット。このリストが空の場合は、すべての属性が返されます。

exceptioninfo

エラー発生時にクライアント・アプリケーションが追加例外データを取得できるようにするオプションの入力引数。

説明

このメソッドは、クライアント・アプリケーションの資格証明に添付された属性リストを返します。属性タイプのリストでは、AttributeListに返す属性タイプの値のみを含める必要があります。属性は現在、属性ファミリまたはIDに基づいて返されません。ほとんどの場合、どのインスタンスでもクライアント・アプリケーションの資格証明の有効なセットは1つのみであるため、これは、DISecurityLevel2.Current::get_attributes()を呼び出した場合と同じ結果です。結果は、資格証明が使用中でない場合には異なる可能性があります。

戻り値

DISecurity_SecAttributeオブジェクトの配列を含むバリアント。

 


DISecurityLevel2_Credentials.is_valid

概要

資格証明のステータスをチェックします。

MIDLマッピング

HRESULT is_valid(
[out] IDispatch** expiry_time,
[in,out,optional] VARIANT* exceptionInfo,
[out,retval] VARIANT_BOOL* returnValue

オートメーション・マッピング

Function is_valid(expiry_time As Object,
[exceptionInfo]) As Boolean

説明

使用された資格がそのときにアクティブな場合、このメソッドは、TRUEを返します。つまり、DITobj_PrincipalAuthenticator.logoffまたはdestroy_currentを呼び出していないということです。DITobj_PrincipalAuthenticator.logoff()の後にこのメソッドが呼び出された場合、FALSEが返されます。destroy_current()の後にこのメソッドが呼び出された場合、CORBA::BAD_INV_ORDER例外が発生します。

戻り値

DITimeBase_UtcTオブジェクトがmaxに設定された場合に、expiry_timeが出力されます。


  先頭に戻る       前  次