![]() ![]() ![]() ![]() ![]() ![]() ![]() |
ここでは、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
オブジェクトは、CORBAセキュリティ・モデルのOracle実装です。Oracle Tuxedoソフトウェアのこのリリースでは、get_attributes()
メソッド、set_credentials()
メソッド、get_credentials()
メソッド、およびPrincipal_Authenticator()
メソッドがサポートされます。
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
オブジェクトの配列を含むバリアント。次の表は、有効な戻り値について説明しています。
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_credentials
でCORBA::BAD_PARAM
が発生します。資格証明は、以前のDISecurityLevel2_Current.get_credentials
への呼出しで取得済みになっている必要があります。
cred_type
cred
exceptioninfo
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_credentials
でCORBA::BAD_PARAM
が発生します。資格証明を使用できない場合、get_credentials
でCORBA::BAD_INV_ORDER
が発生します。
cred_type
exceptioninfo
クライアント・アプリケーションのみのアクティブな資格証明用のDISecurityLevel2_Credentials
オブジェクト。
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
オブジェクトは、Oracle Tuxedoドメインに対するログインおよびログアウトに使用します。Oracle Tuxedoソフトウェアのこのリリースでは、authenticate
メソッド、build_auth_data()
メソッド、continue_authentication()
メソッド、get_auth_type()
メソッド、logon()
メソッド、およびlogoff()
メソッドが実装されています。
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
security_name
auth_data
DITobj_PrincipalAuthenticator.build_auth_data
によって返されます。auth_data
が無効な場合、authenticate
でCORBA::BAD_PARAM
が発生します。
privileges
DITobj_PrincipalAuthenticator.build_auth_data
によって返されます。privileges
が無効な場合、authenticate
でCORBA::BAD_PARAM
が発生します。
creds
continuation_data
auth_specific_data
exceptioninfo
説明
このメソッドは、クライアント・アプリケーションがOracle TuxedoドメインにアクセスできるようにIIOPリスナー/ハンドラを介してクライアント・アプリケーションを認証します。
Security_AuthenticationStatus
列挙値。次の表は、有効な戻り値について説明しています。
DITobj_PrincipalAuthenticator.authenticate
で使用する認証データと属性を作成します。
HRESULT build_auth_data(
[in] BSTRuser_name,
[in] BSTRclient_name,
[in] BSTRsystem_password,
[in] BSTRuser_password,
[in] VARIANTuser_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
client_name
system_password
user_password
user_data
auth_data
privileges
exceptioninfo
注意: | user_name 、client_name 、またはsystem_password がNULLまたは空の場合、あるいは30文字を超えている場合、以降のauthenticate メソッド呼出しでCORBA::BAD_PARAM 例外が発生します。 |
注意: | user_password パラメータとuser_data パラメータは相互に排他的であり、Oracle Tuxedoドメインの構成で使用する認証サービスの要件によって異なります。デフォルトの認証サービスにはユーザー・パスワードが必要です。カスタマイズされた認証サービスにはユーザー・データが必要です。user_password とuser_data の両方が指定されている場合、後続の認証呼出しでCORBA::BAD_PARAM 例外が発生します。 |
説明
このメソッドは、DITobj_PrincipalAuthenticator.authenticate
で使用する認証データと属性を作成するヘルパー関数です。
注意: | このメソッドが無効なSecurityCurrentオブジェクトで呼び出された場合、CORBA::BAD_INV_ORDER が発生します。 |
常にSecurity::AuthenticationStatus::SecAuthFailure
を返します。
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
を返します。
Oracle Tuxedoドメインによって予測されている認証のタイプを取得します。
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
列挙への参照。次の表は、有効な戻り値について説明しています。
Oracle Tuxedoドメインにログインします。適切な入力パラメータは、認証レベルによって異なります。
HRESULT logon(
user_name,
[in] BSTR
[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
client_name
user_password
TOBJ_APPAUTH
認証レベルで必須です。 注意: | user_name 、client_name 、またはsystem_password がNULLまたは空の場合、あるいは30文字を超えている場合、以降のauthenticate メソッド呼出しでCORBA::BAD_PARAM 例外が発生します。 |
注意: | 認可レベルがTOBJ_APPAUTH の場合、user_password またはuser_data のいずれか1つを提供できます。 |
exceptioninfo
CORBAクライアント・アプリケーションに関連付けられた現在のセキュリティ・コンテキストを破棄します。
HRESULT logoff([in, out, optional] VARIANT* exceptionInfo);
この呼出しは、CORBAクライアント・アプリケーションに関連付けられたコンテキストを破棄しますが、Oracle Tuxedoドメインへのネットワーク接続を閉じません。Logoff
でも、現在の資格証明を無効化できます。認証タイプがTOBJ_NOAUTH
でない場合、ログオフした後の既存のオブジェクト参照を使用した呼出しは失敗します。
クライアント・アプリケーションが現在Oracle Tuxedoドメインに対して認証されている場合、Tobj_Bootstrap.destroy_current()
を呼び出すと、暗黙的にlogoff
が呼び出されます。
exceptioninfo
DISecurityLevel2_Credentials
オブジェクトは、CORBAセキュリティ・モデルのOracle実装です。Oracle Tuxedoソフトウェアのこのリリースでは、get_attributes()
メソッドおよびis_valid()
メソッドがサポートされます。
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
オブジェクトの配列を含むバリアント。
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
が出力されます。
![]() ![]() ![]() |