Tuxedo CORBA アプリケーションのセキュリティ機能

     前  次    新しいウィンドウで目次を開く     
ここから内容の開始

C++ セキュリティ リファレンス

ここでは、CORBA セキュリティの C++ メソッドについて説明します。

 


SecurityLevel1::Current::get_attributes

概要

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

OMG IDL 定義

Security::AttributeList get_attributes(
in Security::AttributeTypeList attributes
);
};

引数

attributes

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

説明

このメソッドは、プリンシパルの資格から特権などの属性を Current インタフェース用に取得します。

戻り値

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

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

注意 : defining_authority フィールドは常に空です。UBBCONFIG ファイルで定義されているセキュリティ レベルによって、get_attribute メソッドの一部の値を使用できない場合があります。追加された 2 つの値 (Group Id および Role) は、UBBCONFIG ファイルでセキュリティ レベルが ACL または MANDATORY_ACL に設定されている場合に使用できます。
注意 : この情報は、「CORBAservices: Common Object Services Specification」(1995 年 3 月 31 日改訂版、1997 年 11 月更新) の 15-103、104 ページから、OMG の許可を得て転載しています。

 


SecurityLevel2::PrincipalAuthenticator::authenticate

概要

プリンシパルを認証し、オプションでプリンシパルの資格を取得します。

OMG IDL 定義

Security::AuthenticationStatus 
authenticate(
in Security::AuthenticationMethod method,
in Security::SecurityName security_name,
in Security::Opaque auth_data,
in Security::AttributeList privileges,
out Credentials creds,
out Security::Opaque continuation_data,
out Security::Opaque auth_specific_data );

引数

method

使用するセキュリティ メカニズム。有効な値は、Tobj::TuxedoSecurity および Tobj::CertificateBased です。

security_name

プリンシパルの ID 情報 (ログオン情報など)。値は、プリンシパルのユーザ名を含む NULL 終了文字列へのポインタである必要があります。文字列は、NULL 文字を除いて 30 文字以内に制限されています。 証明書による認証を使用する場合、この名前は、LDAP を有効にしたディレクトリ サービスで証明書をルックアップするのに使用します。また、この名前を基に、プライベート キーを格納するファイルの名前が決まります。次に例を示します。 milozzi@company.com は、LDAP を有効にしたディレクトリ サービスで証明書をルックアップするのに使用する電子メール アドレス、milozzi_company.pem はプライベート キー ファイル名です。

auth_data

パスワードまたはプライベート キーなどのプリンシパルの認証。Tobj:TuxedoSecurity セキュリティ メカニズムを指定した場合、この引数の値は、コンフィグレーションされた認証のレベルによって異なります。Tobj::CertificateBased 引数を指定した場合、この引数の値は、プリンシパルのプライベート キーの復号化に使用するパス フレーズです。

privileges

要求された特権属性。

creds

新しく作成された Credentials オブジェクトのオブジェクト参照。オブジェクト参照は、完全には初期化されません。したがって、オブジェクト参照は、SecurityLevel2::Current::authenticate メソッドの戻り値が SecAuthSuccess になるまで使用できません。

continuation_data

SecurityLevel2::Current::authenticate メソッドの戻り値が SecAuthContinue の場合、この引数は、継続する認証の試行情報を格納します。戻り値は常に空です。

auth_specific_data

使用する認証サービス固有の情報。戻り値は常に空です。

説明

SecurityLevel2::Current::authenticate メソッドは、プリンシパルを認証し、Oracle Tuxedo ドメインでのセッション時にプリンシパルで必要なオプションで特権属性を要求するために、クライアント アプリケーションによって使用されます。

Tobj::TuxedoSecurity セキュリティ メカニズムを指定する場合、Tobj::PrincipalAuthenticator::logon オペレーションを呼び出すことで同じ機能を取得できます。このオペレーションは、同じ機能を提供しますが、ATMI 認証セキュリティ メカニズムで使用するための特別なオペレーションです。

戻り値

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

戻り値
意味
SecAuthSuccess
creds 引数が初期化され、使用する準備ができたときに返される新規作成 Credentials オブジェクトのオブジェクト参照。
SecAuthFailure
認証プロセスが矛盾していたか、プロセスでエラーが発生しました。したがって、creds 引数は、Credentials オブジェクトへのオブジェクト参照を格納しません。
Tobj::TuxedoSecurity セキュリティ メカニズムを使用した場合、この戻り値は、認証に失敗したか、クライアント アプリケーションが既に認証されているものの、Tobj::PrincipalAuthenticator::logoff オペレーションまたは Tobj_Bootstrap::destroy_current オペレーションのいずれかを呼び出さなかったことを示します。
SecAuthContinue
認証プロシージャで試行/応答メカニズムを使用していることを示します。creds 引数は、一部が初期化された Credentials オブジェクトのオブジェクト参照を格納します。continuation_data は、試行の詳細を示します。
SecAuthExpired
認証データに、有効性が期限切れの情報が含まれていることを示します。したがって、creds 引数は、Credentials オブジェクトへのオブジェクト参照を格納しません。
Tobj::TuxedoSecurity セキュリティ メカニズムを指定した場合、この戻り値は返されません。
CORBA::BAD_PARAM
以下の場合に、CORBA::BAD_PARAM 例外が発生します。
  • security_nameauth_data、または privileges 引数に値が指定されていない場合。
  • 入力引数の長さが、引数の最大長を超えている場合。
  • method 引数の値が Tobj::TuxedoSecurityauth_data 引数に空の文字列または NULL 文字列として username または clientname が指定されている場合。

 


SecurityLevel2::Current::set_credentials

概要

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

OMG IDL 定義

void set_credentials(
in Security::CredentialType cred_type,
in Credentials creds
);

引数

cred_type

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

creds

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

説明

このメソッドは、SecInvocationCredentials にのみ設定できます。それ以外の値に設定すると、set_credentialsCORBA::BAD_PARAM が発生します。資格は、以前の SecurityLevel2::Current::get_credentials または SecurityLevel2::PrincipalAuthenticator::authenticate の呼び出しで取得済みになっている必要があります。

戻り値

特にありません。

注意 : この情報は、「CORBAservices: Common Object Services Specification」(1995 年 3 月 31 日改訂版、1997 年 11 月更新) の 15-104 ページから、OMG の許可を得て転載しています。

 


SecurityLevel2::Current::get_credentials

概要

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

OMG IDL 定義

Credentials get_credentials(
in Security::CredentialType cred_type
);

引数

cred_type

取得する資格のタイプ。

説明

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

戻り値

クライアント アプリケーションのアクティブな資格のみを返します。

注意 : この情報は、「CORBAservices: Common Object Services Specification」(1995 年 3 月 31 日改訂版、1997 年 11 月更新) の 15-105 ページから、OMG の許可を得て転載しています。

 


SecurityLevel2::Current::principal_authenticator

概要

PrincipalAuthenticator を返します。

OMG IDL 定義

readonly attribute PrincipalAuthenticator
principal_authenticator;

説明

principal_authenticator 属性によって返された PrincipalAuthenticator は、実際の型 Tobj::PrincipalAuthenticator によるものです。したがって、Tobj::PrincipalAuthenticator および SecurityLevel2::PrincipalAuthenticator の双方として使用できます。

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

戻り値

PrincipalAuthenticator を返します。

SecurityLevel2::Credentials

概要

プロセスに特有のプリンシパルの資格情報を表します。SecurityLevel2::Credentials インタフェースをサポートする Credentials オブジェクトは、位置制約付きオブジェクトです。このオブジェクトの位置の外にリファレンスを渡そうとしたり、CORBA::ORB::object_to_string() を使用してオブジェクトを外部化しようとしたりすると、CORBA::Marshall 例外が発生します。

OMG IDL 定義

#ifndef _SECURITY_LEVEL_2_IDL
#define _SECURITY_LEVEL_2_IDL

#include <SecurityLevel1.idl>

#pragma prefix “omg.org”

module SecurityLevel2
{
interface Credentials
{
attribute Security::AssociationOptions
invocation_options_supported;
attribute Security::AssociationOptions
invocation_options_required;
Security::AttributeList
get_attributes(
in Security::AttributeTypeList attributes );

boolean
is_valid(
out Security::UtcT expiry_time );
};
};
#endif /* _SECURITY_LEVEL_2_IDL */

C++ 宣言

class SecurityLevel2
{
public:
class Credentials;
typedef Credentials * Credentials_ptr;

class Credentials : public virtual CORBA::Object
{
public:
static Credentials_ptr _duplicate(Credentials_ptr obj);
static Credentials_ptr _narrow(CORBA::Object_ptr obj);
static Credentials_ptr _nil();

virtual Security::AssociationOptions
invocation_options_supported() = 0;
virtual void
invocation_options_supported(
const Security::AssociationOptions options ) = 0;
virtual Security::AssociationOptions
invocation_options_required() = 0;
virtual void
invocation_options_required(
const Security::AssociationOptions options ) = 0;

virtual Security::AttributeList *
get_attributes(
const Security::AttributeTypeList & attributes) = 0;

virtual CORBA::Boolean
is_valid( Security::UtcT_out expiry_time) = 0;

protected:
Credentials(CORBA::Object_ptr obj = 0);
virtual ~Credentials() { }

private:
Credentials( const Credentials&) { }
void operator=(const Credentials&) { }
}; // クラス Credentials
}; // クラス SecurityLevel2

 


SecurityLevel2::Credentials::get_attributes

概要

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

OMG IDL 定義

Security::AttributeList get_attributes(
in AttributeTypeList attributes
);

引数

attributes

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

説明

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

戻り値

属性リストを返します。

注意 : この情報は、「CORBAservices: Common Object Services Specification」(1995 年 3 月 31 日改訂版、1997 年 11 月更新) の 15-97 ページから、OMG の許可を得て転載しています。

 


SecurityLevel2::Credentials::invocation_options_supported

概要

SSL 接続を確立して Oracle Tuxedo ドメインでオブジェクトに対する呼び出しを実行する際に使用できるセキュリティ オプションの最大数を示します。

OMG IDL 定義

attribute Security::AssociationOptions
invocation_options_supported;

引数

特にありません。

説明

このメソッドは、SecurityLevel2::Credentials::invocation_options_required メソッドと組み合わせて使用する必要があります。

以下のセキュリティ オプションを指定できます。

セキュリティ オプション
説明
NoProtection
SSL プロトコルは、メッセージ保護を提供しません。
Integrity
SSL プロトコルは、メッセージの整合性チェックを提供します。メッセージの整合性を保護するのにデジタル署名を使用します。
Confidentiality
SSL 接続は、メッセージの機密性を保護します。メッセージの機密性を保護するのに暗号を使用します。
DetectReplay
SSL プロトコルはリプレイ検出を提供します。リプレイは、メッセージが検出されずに繰り返し送信されたときに発生します。
DetectMisordering
SSL プロトコルは、要求および要求フラグメントのシーケンス エラーの検出を提供します。
EstablishTrustInTarget
要求の対象がプリンシパルの開始元に対して自身を認証することを示します。
NoDelegation
アクセス制御を決定するために、中間オブジェクトによる特権の使用をプリンシパルが許可することを示します。ただし、プリンシパルの特権は委譲されないので、チェーン内の次のオブジェクトを呼び出すときに中間オブジェクトは特権を使用できません。
SimpleDelegation
アクセス制御を決定するために、中間オブジェクトによる特権の使用をプリンシパルが許可することを示し、その中間オブジェクトに特権を委譲します。対象オブジェクトは、クライアント アプリケーションの特権のみを受け取り、中間オブジェクトの ID を認識しません。この呼び出しオプションが対象オブジェクトに対して制約なしに使用された場合、動作は偽装として認識されます。
CompositeDelegation
中間オブジェクトによる資格の使用および委譲をプリンシパルが許可することを示します。プリンシパルと中間オブジェクトの両方の特権をチェックできます。

戻り値

定義されたセキュリティ オプションのリスト。

セキュリティの関連付けに Tobj::TuxedoSecurity セキュリティ メカニズムを使用する場合、NoProtectionEstablishTrustInClient、および SimpleDelegation セキュリティ オプションのみが返されます。Oracle Tuxedo ドメインへのアクセスにパスワードが要求されるように CORBA アプリケーションのセキュリティ レベルが定義された場合にのみ、EstablishTrustInClient セキュリティ オプションが表示されます。

注意 : 指定したセキュリティ オプションが、CORBA アプリケーション用に定義されたセキュリティ メカニズムでサポートされていない場合、CORBA::NO_PERMISSION 例外が返されます。この例外は、指定したセキュリティ オプションが、SecurityLevel2::Credentials::invocation_options_required メソッドで指定したセキュリティ オプションよりも少ない機能しか持っていない場合にも発生します。
注意 : invocation_options_supported 属性には、set() メソッドと get() メソッドがあります。Tobj::TuxedoSecurity セキュリティ メカニズムを使用して Credentials オブジェクトを取得する場合には、set() メソッドを使用できません。Tobj::TuxedoSecurity セキュリティ メカニズムで set() メソッドを使用すると、CORBA::NO_PERMISSION 例外が返されます。

 


SecurityLevel2::Credentials::invocation_options_required

概要

SSL 接続を確立して Oracle Tuxedo ドメインで対象オブジェクトに対する呼び出しを実行する際に使用できるセキュリティ オプションの最少数を指定します。

OMG IDL 定義

attribute Security::AssociationOptions
invocation_options_required;

引数

特にありません。

説明

このメソッドを使用すると、プリンシパルと Oracle Tuxedo ドメインの間の通信の保護を指定できます。このメソッドを使用すると、Credentials オブジェクトは、定義したセキュリティ オプションのレベルの SSL プロトコルを使用して対象オブジェクトに対する呼び出しを実行します。このメソッドは、SecurityLevel2::Credentials::invocation_options_supported メソッドと組み合わせて使用する必要があります。

以下のセキュリティ オプションを指定できます。

セキュリティ オプション
説明
NoProtection
SSL プロトコルは、メッセージ保護を提供しません。
Integrity
SSL プロトコルは、メッセージの整合性チェックを提供します。メッセージの整合性を保護するのにデジタル署名を使用します。
Confidentiality
SSL 接続は、メッセージの機密性を保護します。メッセージの機密性を保護するのに暗号を使用します。
DetectReplay
SSL プロトコルはリプレイ検出を提供します。リプレイは、メッセージが検出されずに繰り返し送信されたときに発生します。
DetectMisordering
SSL プロトコルは、要求および要求フラグメントのシーケンス エラーの検出を提供します。
EstablishTrustInTarget
要求の対象がプリンシパルの開始元に対して自身を認証することを示します。
NoDelegation
アクセス制御を決定するために、中間オブジェクトによる特権の使用をプリンシパルが許可することを示します。ただし、プリンシパルの特権は委譲されないので、チェーン内の次のオブジェクトを呼び出すときに中間オブジェクトは特権を使用できません。
SimpleDelegation
アクセス制御を決定するために、中間オブジェクトによる特権の使用をプリンシパルが許可することを示し、その中間オブジェクトに特権を委譲します。対象オブジェクトは、クライアント アプリケーションの特権のみを受け取り、中間オブジェクトの ID を認識しません。この呼び出しオプションが対象オブジェクトに対して制約なしに使用された場合、動作は偽装として認識されます。
CompositeDelegation
中間オブジェクトによる資格の使用および委譲をプリンシパルが許可することを示します。プリンシパルと中間オブジェクトの両方の特権をチェックできます。

戻り値

定義されたセキュリティ オプションのリスト。

セキュリティの関連付けに Tobj::TuxedoSecurity セキュリティ メカニズムを使用する場合、NoProtectionEstablishTrustInClient、および SimpleDelegation セキュリティ オプションのみが返されます。Oracle Tuxedo ドメインへのアクセスにパスワードが要求されるように CORBA アプリケーションのセキュリティ レベルが定義された場合にのみ、EstablishTrustInClient セキュリティ オプションが表示されます。

注意 : 指定したセキュリティ オプションが、CORBA アプリケーション用に定義されたセキュリティ メカニズムでサポートされていない場合、CORBA::NO_PERMISSION 例外が返されます。この例外は、指定したセキュリティ オプションが、SecurityLevel2::Credentials::invocation_options_supported メソッドで指定したセキュリティ オプションよりも多い機能を持っている場合にも発生します。
注意 : invocation_options_required 属性には、set() メソッドと get() メソッドがあります。Tobj::TuxedoSecurity セキュリティ メカニズムを使用して Credentials オブジェクトを取得する場合には、set() メソッドを使用できません。Tobj::TuxedoSecurity セキュリティ メカニズムで set() メソッドを使用すると、CORBA::NO_PERMISSION 例外が返されます。

 


SecurityLevel2::Credentials::is_valid

概要

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

OMG IDL 定義

boolean is_valid(
out Security::UtcT expiry_time
);

説明

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

戻り値

返された有効期限には、maximum unsigned long long 値 (C++) が含まれています。unsigned long long データ型が適用されると、ulonglong が控えのデータ型になります。ulonglong データ型は次のように定義します。

// ulonglong データ型の仮の定義
// これは、すべてのクライアント ORB による型の拡張の適用を保留
struct ulonglong {
unsigned long low;
unsigned long high;
};

注意 : この情報は、「CORBAservices: Common Object Services Specification」(1995 年 3 月 31 日改訂版、1997 年 11 月更新) の 15-97 ページから、OMG の許可を得て転載しています。

SecurityLevel2::PrincipalAuthenticator

概要

プリンシパルを認証できるようにします。SecurityLevel2::PrincipalAuthenticator インタフェースをサポートする Principal Authenticator オブジェクトは、位置制約付きオブジェクトです。このオブジェクトの位置の外にリファレンスを渡そうとしたり、CORBA::ORB::object_to_string() を使用してオブジェクトを外部化しようとしたりすると、CORBA::Marshall 例外が発生します。

OMG IDL 定義

#ifndef _SECURITY_LEVEL_2_IDL
#define _SECURITY_LEVEL_2_IDL

#include <SecurityLevel1.idl>

#pragma prefix “omg.org”

module SecurityLevel2
{
interface PrincipalAuthenticator
{ // 位置制約付き
Security::AuthenticationStatus authenticate (
in Security::AuthenticationMethod method,
in Security::SecurityName security_name,
in Security::Opaque auth_data,
in Security::AttributeList privileges,
out Credentials creds,
out Security::Opaque continuation_data,
out Security::Opaque auth_specific_data
);

Security::AuthenticationStatus continue_authentication (
in Security::Opaque response_data,
in Credentials creds,
out Security::Opaque continuation_data,
out Security::Opaque auth_specific_data
);
};
};
#endif // SECURITY_LEVEL_2_IDL

#pragma prefix "beasys.com"
module Tobj
{
const Security::AuthenticationMethod
TuxedoSecurity = 0x54555800;
CertificateBased = 0x43455254;
};

C++ 宣言

class SecurityLevel2
{
public:
class PrincipalAuthenticator;
typedef PrincipalAuthenticator * PrincipalAuthenticator_ptr;
  class PrincipalAuthenticator : public virtual CORBA::Object
{
public:
static PrincipalAuthenticator_ptr
_duplicate(PrincipalAuthenticator_ptr obj);
static PrincipalAuthenticator_ptr
_narrow(CORBA::Object_ptr obj);
static PrincipalAuthenticator_ptr _nil();

virtual Security::AuthenticationStatus
authenticate (
Security::AuthenticationMethod method,
const char * security_name,
const Security::Opaque & auth_data,
const Security::AttributeList & privileges,
Credentials_out creds,
Security::Opaque_out continuation_data,
Security::Opaque_out auth_specific_data) = 0;

virtual Security::AuthenticationStatus
continue_authentication (
const Security::Opaque & response_data,
Credentials_ptr & creds,
Security::Opaque_out continuation_data,
Security::Opaque_out auth_specific_data) = 0;
    protected:
PrincipalAuthenticator(CORBA::Object_ptr obj = 0);
virtual ~PrincipalAuthenticator() { }

private:
PrincipalAuthenticator( const PrincipalAuthenticator&) { }
void operator=(const PrincipalAuthenticator&) { }
}; // クラス PrincipalAuthenticator
};

 


SecurityLevel2::PrincipalAuthenticator::continue_authentication

概要

常に失敗します。

OMG IDL 定義

Security::AuthenticationStatus continue_authentication(
in Security::Opaque response_data,
in Credentials    creds,
out Security::Opaque continuation_data,
out Security::Opaque auth_specific_data
);

説明

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

戻り値

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

注意 : この情報は、「CORBAservices: Common Object Services Specification」(1995 年 3 月 31 日改訂版、1997 年 11 月更新) の 15-92、93 ページから、OMG の許可を得て転載しています。

 


Tobj::PrincipalAuthenticator::get_auth_type

概要

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

OMG IDL 定義

AuthType get_auth_type();

説明

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

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

戻り値

Tobj_AuthType 列挙へのリファレンス。Oracle Tuxedo ドメインへのアクセスに必要な認証のタイプを返します。次の表は、有効な戻り値について説明しています。

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

 


Tobj::PrincipalAuthenticator::logon

概要

プリンシパルを認証します。

OMG IDL 定義

Security::AuthenticationStatus logon(
in string user_name,
in string client_name,
in string system_password,
in string user_password,
in UserAuthData user_data
);

引数

user_name

Oracle Tuxedo ユーザ名です。認証レベルは、TOBJ_NOAUTH です。user_name が NULL または空の場合、あるいは 30 文字を超えている場合、logonCORBA::BAD_PARAM が発生します。

client_name

クライアント アプリケーションの Oracle Tuxedo 名です。認証レベルは、TOBJ_NOAUTH です。client_name が NULL または空の場合、あるいは 30 文字を超えている場合、logon で CORBA::BAD_PARAM 例外が発生します。

system_password

CORBA クライアント アプリケーション パスワードです。認証レベルは、TOBJ_SYSAUTH です。クライアント名が NULL または空の場合、あるいは 30 文字を超えている場合、logon で CORBA::BAD_PARAM 例外が発生します。
注意 : system_password は、30 文字以内で指定する必要があります。

user_password

デフォルト Oracle Tuxedo 認証サービスで使用するのに必要なユーザ パスワードです。認証レベルは、TOBJ_APPAUTH です。パスワードは 30 文字以内で指定します。

user_data

カスタム Oracle Tuxedo 認証サービスで使用するのに必要なクライアント アプリケーション固有のデータです。認証レベルは、TOBJ_APPAUTH です。
注意 : TOBJ_SYSAUTH には、TOBJ_NOAUTH に加えてクライアント アプリケーション パスワードの要件が含まれます。TOBJ_APPAUTH には、TOBJ_SYSAUTH に加えて、ユーザ パスワードまたはユーザ データなどの追加情報が含まれます。
注意 : user_password 引数と user_data 引数は相互に排他的であり、Oracle Tuxedo ドメインのコンフィグレーションで使用する認証サービスの要件によって異なります。Oracle Tuxedo のデフォルト認証サービスでは、ユーザ パスワードの方を予期します。カスタマイズされた認証サービスでは、ユーザ データを要求するものもあります。user_passworduser_data の両方が設定されている場合、ログオン呼び出しで CORBA::BAD_PARAM 例外が発生します。

説明

このメソッドは、プリンシパルが Oracle Tuxedo ドメインにアクセスできるように IIOP リスナ/ハンドラを介してプリンシパルを認証します。このメソッドは SecurityLevel2::PrincipalAuthenticator::authenticate と同じ機能ですが、引数は ATMI 認証指向です。

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

戻り値

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

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

 


Tobj::PrincipalAuthenticator::logoff

概要

プリンシパルに関連付けられたセキュリティ コンテキストを破棄します。

OMG IDL 定義

void logoff();

説明

この呼び出しは、セキュリティ コンテキストを破棄しますが、Oracle Tuxedo ドメインへのネットワーク接続を閉じません。Logoff でも、現在の資格を無効化できます。認証タイプが TOBJ_NOAUTH でない場合、ログオフした後の既存のオブジェクト参照を使用した呼び出しは失敗します。

プリンシパルが現在 Oracle Tuxedo ドメインに対して認証されている場合、Tobj_Bootstrap::destroy_current() を呼び出すと、暗黙的に logoff が呼び出されます。

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

戻り値

特にありません。

 


Tobj::PrincipalAuthenticator::build_auth_data

概要

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

OMG IDL 定義


void build_auth_data(
in string user_name,
in string client_name,
in string system_password,
in string user_password,
in UserAuthData user_data,
out Security::Opaque auth_data,
out Security::AttributeList privileges
);

引数

user_name

Oracle Tuxedo ユーザ名です。

client_name

CORBA クライアント名です。

system_password

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

user_password

デフォルト Oracle Tuxedo 認証サービスで使用するユーザ パスワードです。

user_data

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

auth_data

authenticate で使用します。

privileges

authenticate で使用します。
注意 : user_nameclient_name、または system_password が NULL または空の場合、あるいは 30 文字を超えている場合、以降の authenticate メソッド呼び出しで CORBA::BAD_PARAM 例外が発生します。
注意 : user_password パラメータと user_data パラメータは相互に排他的であり、Oracle Tuxedo ドメインのコンフィグレーションで使用する認証サービスの要件によって異なります。Oracle Tuxedo のデフォルト認証サービスでは、ユーザ パスワードの方を予期します。カスタマイズされた認証サービスでは、ユーザ データを要求するものもあります。user_passworduser_data の両方が設定されている場合、以降の認証呼び出しで CORBA::BAD_PARAM 例外が発生します。

説明

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

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

戻り値

特にありません。


  ページの先頭       前  次