bea ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > Tuxedo > Tuxedo CORBA ActiveX > セキュリティの使い方 |
Tuxedo CORBA ActiveX
|
セキュリティの使い方
ここでは、BEA Tuxedo ソフトウェアの ActiveX クライアント・アプリケーションでセキュリティを使用する方法を説明します。
SecurityCurrent オブジェクトの概要については、「第 1章 概要」を参照してください。
BEA Tuxedo セキュリティの概要
ActiveX クライアント・アプリケーションは、セキュリティを使用して BEA Tuxedo ドメインに対して自身を認証します。認証とは、クライアント・アプリケーションの ID を検証するプロセスです。正しいログオン情報を入力すると、クライアント・アプリケーションは、BEA Tuxedo ドメインに対して自身を認証します。BEA Tuxedo ソフトウェアは、CORBA サービス・セキュリティ・サービスで定義された認証を使用し、簡単に使用できるようにするための拡張を提供します。
クライアント・アプリケーションは、目的の BEA Tuxedo ドメインで定義されているセキュリティ・レベルに従ってセキュリティ情報を提供する必要があります。これらの情報は、BEA Tuxedo システム管理者が UBBCONFIG ファイルで BEA Tuxedo ドメインに対して定義します。クライアント・アプリケーションを作成するときに、BEA Tuxedo システム管理者と共同で作業し、クライアント・アプリケーションからアクセスする BEA Tuxedo ドメインに対して正しいセキュリティ情報 (ユーザ名およびユーザ・パスワードなど) を取得する必要があります。
セキュリティの開発プロセスの概要
セキュリティは、以下の手順でクライアント・アプリケーションに追加します。
以下の節では、Security University サンプル・アプリケーションにあるクライアント・アプリケーションの一部を使用して、この手順を説明します。
ステップ 1: Bootstrap オブジェクトを使用して SecurityCurrent オブジェクトを取得する
Bootstrap オブジェクトを使用し、指定した BEA Tuxedo ドメインで SecurityCurrent オブジェクトへのオブジェクト・リファレンスを取得します。SecurityCurrent オブジェクトは、CORBA サービス・セキュリティ・サービスで定義された SecurityLevel2::Current オブジェクトです。
次の Visual Basic の例は、Bootstrap オブジェクトを使用して SecurityCurrent オブジェクトを返す方法を示します。
Set objSecurityCurrent =
objBootstrap.CreateObject(“Tobj.SecurityCurrent”)
ステップ 2: SecurityCurrent オブジェクトから PrincipalAuthenticator オブジェクトを取得する
SecurityCurrent オブジェクトは、BEA Tuxedo ドメインの PrincipalAuthenticator のリファレンスを返します。PrincipalAuthenticator オブジェクトは、BEA Tuxedo ドメインで要求されている認証レベルの取得に使用します。
次の Visual Basic の例では、BEA Tuxedo ドメインに対する PrincipalAuthenticator の取得方法を示します。
Set objPrincAuth = objSecurityCurrent.principal_authenticator
ステップ 3: 認証レベルを取得する
Tobj::PrincipalAuthenticator::get_auth_type() メソッドを使用し、BEA Tuxedo ドメインで要求されている認証のレベルを取得します。
次の Visual Basic の例では、BEA Tuxedo ドメインに対する PrincipalAuthenticator の取得方法を示します。
AuthorityType = objPrinAuth.get_auth_type
ステップ 4: 正しい認証で BEA Tuxedo ドメインにログオンする
Tobj::PrincipalAuthenticator::logon() メソッドを使用し、クライアント・アプリケーションから目的の BEA Tuxedo ドメインにログインします。このメソッドでは、以下の引数が必要です。
BEA Tuxedo ユーザ名です。この情報は、TOBJ_SYSAUTH および TOBJ_APPAUTH 認証レベルで必須です。TOBJ_NOAUTH 認証レベルで提供することもできますが、必須ではありません。システム設計者は、設計時にこの名前を決定します。
BEA Tuxedo クライアント・アプリケーション名です。この情報は、TOBJ_SYSAUTH および TOBJ_APPAUTH 認証レベルで必須です。TOBJ_NOAUTH 認証レベルで提供することもできますが、必須ではありません。この情報は、システム管理者から取得します。
BEA Tuxedo パスワードです。この情報は、TOBJ_SYSAUTH および TOBJ_APPAUTH 認証レベルで必須です。この情報は、システム管理者から取得します。
BEA Tuxedo 認証サービスのユーザ・パスワードです。この情報は、TOBJ_APPAUTH 認証レベルで必須です。
認証に関するアプリケーション固有のデータです。この情報は、クライアント・アプリケーションがアクセスしている BEA Tuxedo ドメインが、BEA Tuxedo ソフトウェアで提供されている認証サービスを使用していない場合に必須です。
user_password 引数と user_data 引数は相互に排他的であり、BEA Tuxedo ソフトウェアのコンフィギュレーションで使用する認証サービスによって異なります。BEA Tuxedo ソフトウェアで提供されている認証サービス以外の認証サービスを使用する場合は、user_data 引数の情報をログオンで提供する必要があります。user_password と user_data の両方が設定されている場合、Tobj::PrincipalAuthenticator::logon() メソッドで CORBA::BAD_PARAM 例外が発生します。
BEA Tuxedo ドメインに TOBJ_NOAUTH 認証レベルがある場合、BEA Tuxedo ドメインへのログオン時に、user_name または client_name を提供する必要はありません。クライアント・アプリケーションが user_name および client_name でログオンしなかった場合、BEA Tuxedo ドメインの IIOP サーバ・リスナ/ハンドラ (ISL/ISH) は、UBBCONFIG ファイルの ISL/ISH に対して設定した user_name と client_name でクライアント・アプリケーションを登録します。ただし、クライアント・アプリケーションは、任意の user_name および client_name でログオンできます。
logon() メソッドは、以下のいずれかを返します。
次の Visual Basic の例では、Tobj::PrincipalAuthenticator::logon() メソッドの使用方法を示します。
If AuthorityType = TOBJ_APPAUTH Then logonStatus =
oPrincAuth.Logon(
UserName,ClientName,SystemPassword,_
UserPassword,UserData)
End If
ステップ 5: BEA Tuxedo ドメインからログオフする
クライアント・アプリケーションは、同じ BEA Tuxedo ドメインに別のユーザとしてログオンする前に、現在の BEA Tuxedo ドメインからログオフする必要があります。Tobj::PrincipalAuthenticator::logoff() メソッドを使用し、BEA Tuxedo の現在の認証コンテキストおよびクリデンシャルを破棄します。このメソッドは、BEA Tuxedo ドメインへのネットワーク接続をクローズします。認証タイプが TP_NOAUTH でない場合、BEA Tuxedo ドメインからログオフした後の既存の認証を使用した呼び出しは失敗します。
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |