ヘッダーをスキップ
Oracle® Fusion Middleware Provisioning Gatewayの管理
11gリリース2 (11.1.2.3)
E67352-01
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
 

7 Provisioning Gateway CLI

Provisioning Gatewayサーバーでは、他のプロビジョニング・サーバーにより発行された指示を受信できる、Webサービス・インタフェースが公開されています。Provisioning Gateway CLIは、プロビジョニング・ソリューション用の統合コンポーネントとして提供されています。

7.1 CLIについて

Provisioning Gatewayには2種類のCLIが含まれます。

  • .NET CLI

    .NET CLIはProvisioning Gateway Webサービスと通信するためのインタフェースを提供し、デフォルトでインストールされます。プログラミングAPIは、.NET CLIのメイン実行可能ファイルをSDKライブラリとして利用する、Passlogix.Provisioning.dllアセンブリ内に保持されています。このガイドの.NETに関する項は、組織のプロビジョニング・ソリューションの開発を担当する、経験豊かな.NET アプリケーション・プログラマを対象としています。

  • Java CLI

    Java CLIでは、Provisioning Gateway Webサービスと通信するためのいくつかのインタフェース、クラス・ファクトリ、およびサポートするタイプが公開されています。これらのプログラミングAPIは、クラス・ライブラリであるpmcli.jar内に保持されていますが、これはJava CLIのメインの実行可能ファイルと同じライブラリであり、SDKで再利用されます。このガイドのJavaに関する項では、Java CLIで公開されているインタフェースをアプリケーションで使用する方法を説明します。

このドキュメントでは、次の内容を説明します。

  • CLI構文の書式、戻り値、コマンド、オプションおよびパラメータ

  • 空白、引用符を含むパラメータのエスケープ

  • Java CLI用のSSLの設定

  • CLIコマンドの適切な使用方法を示す例

.NETおよびJava CLIの実装手順は、Oracle Enterprise Single Sign-On Suiteのアプリケーション・インタフェースの開発に関する説明を参照してください。


注意:

.NETおよびJava CLIの機能はほぼ同一です。相違点については、このドキュメント全体を通して記載されています。

.NET CLIはデフォルトでインストールされます。Java CLIをインストールするには、インストール時に「Custom」オプションを選択する必要があります。

7.2 CLI構文

CLIでは次の構文を使用します。

usage: pmcli [-url service] [-agent name] [-u login id]

[-p password] [-t date/time] [-f inputfile]

[-security <sec_opts>] "operation"

CLIは、どのような組合せでも、次の形式のスイッチを受け入れます。

スイッチ 説明
-arg=value =」の後に指定された値
-arg value 次の引数として指定された値。
-arg:value :」の後に指定された値
--arg argの前のダッシュ2個。
/arg argの前のフォワード・スラッシュ。
-u, -p -security username=<value> password=<value>と同義。
-f ファイルからバッチ処理を実行した後、終了。
-t -execの別名。プロビジョニング操作を実行する時間の指定。

7.2.1 .NETとJava CLIのアプローチの相違点

.NET CLIの実行可能ファイルの名前はpmcli.exeです。

Java CLIの実装は pmcli.jarというクラス・ライブラリにあります。このライブラリを実行するため、バッチ・ファイルpmcli.batが用意されています。Windowsでは、バッチ・ファイルの実行前に、pmcli.jarの場所およびサポートしているライブラリを示すため、環境変数%PMCLI_ROOT%を設定する必要があります。次の手順に従って、バッチ・ファイルを使用せずに手動でJava CLIを実行することもできます。

java -cp <classpath> pmcli.Main <args>

pmcli.batファイルを編集し、pmcli.batファイルで指定された指示に従ってd値を再定義することが必要な場合があります。%P%の値は、プロパティ・ファイルの保存場所へのパスを示します。プロパティ・ファイルを使用してJava CLIをカスタマイズできます。このファイルは、名前にスペースのないパスに存在する必要があります。デフォルトでは、Java CLIはWindowsのProgram Filesフォルダ下にインストールされ、プロパティ・ファイルを使用する場合は、ファイルを保存するディレクトリの名前を参照するため、%P%の値を設定する必要があります。ディレクトリ名にスペースを含むことはできません。

7.3 操作モード

3つの操作モードがサポートされています。

7.3.1 コマンド行モード

このモードでは、コマンド行で入力することによりプロビジョニング操作を指定します。サポートされているプロビジョニング操作は次のとおりです。

操作 定義
ADD_CREDENTIAL 新しい資格証明の追加
MODIFY_CREDENTIAL 既存の資格証明の変更
DELETE_CREDENTIAL 既存の資格証明の削除
DELETE_USER SSOユーザーと保存した資格証明の削除
STATUS 保留中の指示のステータス取得
CANCEL 保留中のプロビジョニング指示の取消し
EXT_SEARCH ログオンおよび保留中のリクエストの検索
SET_SETTINGS 現在の記憶域設定の変更
GET_SETTINGS 現在の記憶域設定の取得
GET_SCHEMA 使用可能なストレージ・スキーマの取得
CHECK_SERVER サーバーのステータスの確認

これらの操作およびパラメータについては、このドキュメントの後の項で説明します。


注意:

バッチ・ファイルおよび操作の両方がコマンド行で指定されている場合は、バッチ・モードが優先されます。

7.3.2 バッチ・モード

バッチ・モードでは、-fスイッチで指定したファイルのCLIに、一連のプロビジョニング操作を渡すことができます。

7.3.3 対話モード

コマンド行で操作が指定されておらず、またバッチ・ファイルが指定されていない場合、CLIは対話モードに入ります。対話モードでは、中止または終了するまで、シェルのような環境でプロビジョニング操作を指定します。

対話モードでは、コマンド行モードまたはバッチ・モードでは使用できない、3つの追加コマンドがサポートされます。

コマンド 説明
HELP 使用可能なすべてのコマンドのリスト
Help [operation] 特定のコマンド用の構文の表示
QUIT、EXIT、Q、E 対話モードの終了またはバッチの実行停止

7.3.4 スマート・デフォルト

urlagentusernameまたはpasswordスイッチが指定されていない場合、CLIでは次のデフォルトが使用されます。

スイッチ デフォルト
-url http://localhost/v-GO%20PM%20Service/UP.asmx
-agent 現在のマシン名(Windowsでは%MACHINENAME%)。
-password CLIがパスワードの入力を要求。


注意:

.NETとJava CLIの相違点

セキュリティ上の理由から、.NET CLIでは(ユーザーがパスワードの入力を求められた場合)、ユーザーが入力したパスワードは不明瞭化されます。Java CLIはプラットフォームに依存しないため、ユーザーが入力したパスワードは不明瞭化されません。


7.3.5 操作の実行

CLIが操作を実行すると、結果が画面に出力されます。出力される形式は実行された操作により異なります。一般的に、結果は次のようになります。

[RESULT] ID: [GUID]

[RESPONSE]

ここで:

[RESULT] プロビジョニング・サーバーの結果。

success リクエストが正常に作成され、ディレクトリに配置されました。

エージェントはこのリクエストを処理し、成功または失敗かをマークします。


noSuchRequest リクエストIDが存在しません。状態操作および取消操作に適用されます。

CouldNotCancel リクエストは中止できない状態です。取消操作に適用されます。
[GUID] 正常に発行されたプロビジョニング指示の一意の識別子。
[RESPONSE] 特定のプロビジョニング指示によって返される追加の結果。statusext_searchget_settingsおよびget_schema操作に適用されます。一般的に、結果は名前と値のペアの書式をとります。この属性書式は返された情報の説明として表示することができます。
エラーが発生した場合、次のように、例外が出力された後に説明文が続きます。

[例外]: [説明的なエラー・メッセージ]


7.3.6 使用状況

pmcli -?コマンドにより、使用状況および構文情報を表示します。

7.3.7 ステータスの結果

Logon Manager Agentがプロビジョニング指示の処理を完了すると、指示のResult属性は実行結果に設定されます。エージェントが指示の処理に失敗すると、属性はFailedに設定され、Descriptionは発生した特定のエラーに設定されます。発生する可能性があるエラーは次のとおりです。

  • プロビジョニング指示の復号に失敗しました。

  • リクエストされた指示の削除に失敗しました。

  • 無効または不明な指示タイプです。

  • 指示で指定されたアプリケーションが見つかりません。

  • 変更指示を追加指示として処理するのに失敗しました。

  • 指示の追加に失敗しました、資格証明がすでに存在します。

  • 指示の追加に失敗し、必須フィールドが含まれていません。

7.4 プロビジョニング操作

次の表は、実行可能な特定のプロビジョニング操作、および各操作に固有の構文の一覧です。

add_credential 指定されたユーザーの新しい資格証明の追加。
delete_credential 指定されたユーザーに関連付けられた既存の資格証明の削除。
modify_credential 指定されたユーザーに関連付けられた既存の資格証明の変更。
delete_user SSOユーザーと保存した資格証明の削除。
status 保留中または発行されたプロビジョニング指示のステータスの取得。
cancel 保留中のプロビジョニング指示の取消し。
ext_search アプリケーション、ユーザーおよびイベント・ログのエントリの検索。
set_settings 現在の記憶域設定の変更。
get_settings 現在の記憶域設定の取得。
get_schema 使用可能なストレージ・スキーマの取得。
check_server サーバーのステータスの確認(successの場合はエラーなし)。

7.4.1 パラメータ

操作パラメータは、リクエストに固有の特性を定義します。使用する可能性のあるパラメータのセットが操作別に記載されています。各パラメータは、次のように指定された名前と値のペアで構成されます。

sso_userid Provisioning Gatewayに認識されるユーザーのID。Provisioning Serviceが、Provisioning Gatewayデータ・ストアにおいてユーザーを特定するために使用するIDです。
sso_application 資格証明を追加するアプリケーションの名称。
sso_description 資格証明の説明。このフィールドはオプションです。
sso_app_userid 資格証明に対するアプリケーションのユーザーID。
sso_password この資格証明のパスワード・フィールド。
sso_other1 この資格証明の3番目のフィールド。
sso_other2 この資格証明の4番目のフィールド。
command_id 正常なプロビジョニングにより発行されたGUID。

SET_SETTINGS

set_settings操作に固有の設定は、次のとおりです。

name 記憶域のキーの名前のカンマ区切りリスト。
value ストレージ値のカンマ区切りリスト。

EXT_SEARCH

ext_search操作に固有の設定は、次の表のとおりです。

catalog 検索するカタログ。
userId 検索するユーザーのsso_userid(ext_search)。
logon アプリケーション・ログオン名のカンマ区切りリスト。
returnLogons 選択したユーザーのアプリケーション・テンプレートに対して、保存された資格証明コンテナに関連付けられたGUIDのリストを返す。
returnInstructions 保留中の指示のリストを返す。
uidMatch userIDを完全一致または部分文字列一致で検索。
startDate イベント・ログの開始日。
endDate イベント・ログの終了日。
eventType 検索でフィルタ処理するイベントのタイプ。

7.4.2 構文

構文には各操作に必要なパラメータおよび形式を記述します。各操作とその構文は、次のように定義されます。

ADD_CREDENTIAL sso_userid sso_application [sso_app_userid] [sso_password] [sso_description] [sso_other1] [sso_other2]

MODIFY_CREDENTIAL sso_userid sso_application sso_app_userid [sso_description] [sso_password] [sso_other1] [sso_other2]

DELETE_CREDENTIAL sso_userid sso_application [sso_app_userid] [sso_password] [sso_other1] [sso_other2]

DELETE_USER sso_userid

STATUS sso_userid command_id

CANCEL sso_userid command_id

EXT_SEARCH CATALOG=Applications [userId]

EXT_SEARCH CATALOG=Users [userId] [logon="logon1,logon2,..."] [returnLogons=true|false] [returnInstructions=true|false] [uidMatch=substring|equal]


注意:

uidMatchが指定されていない場合、equalが指定されているものとして処理されます。returnLogonsおよびreturnInstructionsが指定されていない場合、falseが指定されているものとして処理されます。

EXT_SEARCH CATALOG=EventLog [startDate=mm/dd/yyyy] [endDate=mm/dd/yyyy] [eventType=amducs]

eventTypeに使用できる値は次のとおりです。

a ログオンの追加
m ログオンの変更
d ログオンの削除
c ユーザーの削除
u リクエストの取消し
s ステータスのリクエスト

一致イベントを返すために組み合せて使用できます。

SET_SETTINGS name="key1,key2,..." value="value1,value2,..."

GET_SCHEMAを使用し、有効なキーを取得できます。キーと値の数は同一である必要があります。名前リストの各キーは、値リストの対応する値とペアになっています(位置に基づく)。

GET_SETTINGS このコマンド用のパラメータはありません。
GET_SCHEMA このコマンド用のパラメータはありません。
CHECK_SERVER このコマンド用のパラメータはありません。

7.4.3 カンマのエスケープ

カンマ区切りの値を取るパラメータは、「\」 (バックスラッシュ)をカンマのエスケープ文字としてサポートしています。たとえば、Active DirectoryのUserPathCN=USERS,DC=DOMAIN,DC=COMの値を入力するには、次のコマンドを発行します。

SET_SETTINGS name="Storage\AD\UserPath" value="CN=USERS\,DC=DOMAIN\,DC=COM"

エスケープされていないコマンドは、複数の値またはキーの区切りとして処理されます。

7.4.3.1

次の例では、CLIの使用方法を示しています。

7.4.3.1.1 スイッチ

pmcli -username=johns

pmcli -username johns

pmcli -username:johns

pmcli -u:johns

pmcli -u=johns

pmcli -u johns

pmcli /u:johns

pmcli --u:johns

前述の呼出しは同じ意味を持ち、すべてのスイッチに適用されます。

7.4.3.1.2 スマート・デフォルト

pmcli -p:Password

urlのデフォルトはhttp://localhost/v-go%20pm%20service/up.asmxです。

agentのデフォルトagentマシン名です。

usernameは現在ログオン中のユーザーです。

pmcli -u:Administrator -p:Password

urlのデフォルトはhttp://localhost/v-go%20pm%20service/up.asmxです。

agentのデフォルトagentマシン名です。

pmcli -url:http://test.com/v-go%20pm%20service/up.asmx -p:mypassword

agentのデフォルトagentマシン名です。

usernameは現在ログイン中のユーザーです。

pmcli

urlのデフォルトはhttp://localhost/v-go%20pm%20service/up.asmxです。

agentのデフォルトagentマシン名です。

usernameは現在ログイン中のユーザーです。

パスワードの入力が要求されます(CLIがパスワードの入力を要求します)。

7.4.3.1.3 資格証明の追加

次の例では、SSOユーザーであるjoeuserのLotus Notes資格証明を追加します。

pmcli -url "http://example.com/v-GO PM Service/UP.asmx" -agent "PM Agent" -username=PMAdmin -password=mysecretpassword add_credential sso_userid=joeuser sso_application="Lotus Notes" sso_app_userid=lotususer sso_password=password123 sso_other1=mydomain

CLIに対する最初の4つのスイッチが示しているものは、次のとおりです。

  • Provisioning Gateway Webサービスの場所

  • このエージェントの識別子

  • Webサービスの認証に使用する資格証明

  • 操作およびそのパラメータ

この場合、プロビジョニングするSSOユーザーはjoeuserで、mydomainドメインでLotus Notesの資格証明、lotususerの資格証明、およびpassword123が追加されています。

7.4.3.1.4 ユーザーのすべての資格証明の削除

次の例では、SSOユーザーであるjoeuserの資格証明をすべて削除します。

pmcli -url "http://example.com/v-GO PM Service/UP.asmx" -agent "PM Agent" -username=PMAdmin -password=mysecretpassword delete_user sso_userid=joeuser

7.4.3.1.5 特定のユーザーのリストを返す

この例では、ユーザーおよびシステム上のプロビジョニング済のログオンと指示のリストを返します。

pmcli -url "http://example.com/v-GO PM Service/UP.asmx" -agent "PM Agent" -username=PMAdmin -password=mysecretpassword ext_search catalog=users returnLogons=true returnInstructions=true

7.4.3.1.6 バッチ・ファイルからの操作の実行

次の例は、バッチ・ファイルから操作を実行する方法です。

pmcli -url:"http://example.com/v-GO PM Service/UP.asmx" -agent:"PM Agent" -u:PMAdmin -p:mysecretpassword -f=c:\operations.txt

operations.txtファイルでは、行ごとにプロビジョニング操作が1つ記述されています。

add_credential sso_userid=joeuser sso_application="Lotus Notes" ...

add_credential sso_userid=janeuser sso_application="Lotus Notes" ...

delete_credential sso_userid=jackuser sso_application="Lotus Notes"

7.4.3.1.7 対話モードでのCLIの実行

次の例は、対話モードでCLIを実行する方法です。

pmcli -url:"http://example.pass.com/v-GO PM Service/UP.asmx" -agent:

"PM Agent" -u:PMAdmin -p:mysecretpassword

CLIは対話モードに入り、次のように表示されます。

Passlogix (R) v-GO PM CLI Version 6.0.0

Copyright (C) Passlogix, Inc. 1998-2005. All rights reserved.

URL: http://example.pass.com/v-GO PM Service/UP.asmx

AGENT: PM Agent"

USERNAME: PMAdmin

EXECUTE: 10/17/2005-15:07:04

-------------------------------------

セッションを終了するには、「e」[xit] または「q」[uit]を入力します。

7.4.3.1.8 ヘルプの表示

HELP

HELP [operation]

operation - その操作のヘルプ情報を表示します。

ユーザーは、中断または終了するまで、バッチ・モードでの操作と同様のプロンプトにプロビジョニング操作を入力できます。

7.4.3.1.9 プロビジョニング操作の実行時刻の指定

次の例は、プロビジョニング操作の実行時刻を指定する方法です。

コマンド行で-tスイッチを指定し、その後に続けて時間を指定すると、Logon Manager Agentはプロビジョニング操作を指定された時刻またはその後に実行します。操作はディレクトリ・サービスおよびそれを実行するProvisioning Gateway Agentに存在しますが、指定された時刻までSSOユーザーはログオンできません。

-tの書式は次のとおりです。

Java:MM/DD/YYYY-HH:MM:SS

.NET:"MM/DD/YYYY HH:MM:SS"

7.5 SDKとしての.NET CLIの使用

この項の手順を実施する前に、Provisioning Gateway .NET CLIをインストールする必要があります。Provisioning Gateway .NET CLIのインストールの詳細は、『Oracle Enterprise Single Sign-On Suiteインストレーション・ガイド』を参照してください。

.NET CLIは<Passlogix home>\v-GO PM\Client\CLI\DotNetの下にあります。

.NET CLIをSDKとして使用するには、次の手順を実行します。

  1. .NETプロジェクトにおいて、Passlogix.Provisioning.dllへの参照を追加します。

  2. IProvisioningインタフェースのインスタンスを作成します。

  3. このインタフェースに使用可能なメソッド(AddCredentialなど)を呼び出します。

  4. 返されたIProvisioningResultインタフェースを使用して、成功したかを判断し、結果を取得します。

7.5.1 Passlogix.Provisioningへの参照の追加

.NETプロジェクトにPasslogix.Provisioning.dllへの参照を追加します。

  1. Visual Studioから、ソリューションをロードし、Solution Explorerを起動します。

  2. 該当する.NETプロジェクトを選択し、展開します。

  3. 「References」ノードを右クリックし、「Add Reference」を選択します。

  4. ダイアログから「Browse」を選択し、(<Passlogix home>\v-GO PM\Client\DotNet下にある)Passlogix.Provisioning.dllを指定します。

  5. 「Open」をクリックします。アセンブリへの新しい参照が作成されます。

  6. APIが呼び出されるソース・ファイル(拡張子.cs)を開き、ファイルの先頭に次の行を追加します。

    using Passlogix.Provisioning;

    using Passlogix.Provisioning.Exceptions;

7.5.2 IProvisioningインタフェースのインスタンスの作成

同じファイル内で、IProvisioningインタフェースのインスタンスを初期化するメソッドを作成し、次の行のうち1つをメソッドに追加します。

メソッド1。フルパスがわかっている場合

IProvisioning iprov =

ProvisioningFactory.CreateFrom(@"<Path to .NET CLI>");

メソッド2。プロビジョニング・アセンブリと同じディレクトリからロードする

IProvisioning iprov = ProvisioningFactory.CreateFromPrivate();

メソッド3。(%PATH%で指定された)パスからファイルをロードする

IProvisioning iprov = ProvisioningFactory.CreateFromPath();

ロードするためのメソッドを選択した後、誤りがないか確認し、Provisioning Gatewayサービスの接続用の資格証明を設定します。

ロードするアセンブリ・メソッドを選択した後、次のコードを使用します。

if (iprov != null)

{

try

{

メソッドへのすべての結果の呼出しが失敗しないようにするには、最初に接続を確立する必要があります。このメソッドは、プロビジョニング・サービスに接続するための資格証明を設定します。プロビジョニング・リクエストが行われるまで、実際にサービスには接続されません。

3通りの接続方法があります。

メソッド1

iprov.Connect("Administrator", "password");

http://localhost/v-go pm service/up.asmxおよび%COMPUTERNAME%をエージェント名とします。

メソッド2

URLおよびエージェント名を指定します。

iprov.Connect(

"http://<server>/v-go pm service/up.asmx",

"My Agent",

"Administrator", "password");

メソッド3

URLを指定します。

iprov.Connect(

"http://<server>/v-go pm service/up.asmx",

"Administrator", "password");

iprovインタフェース経由でプロビジョニング・リクエストを作成します。Webサービスはローカルではないものの、ユーザーがエージェント名を必ず指定するとは限らないため(デフォルトは %COMPUTERNAME%)、望ましいメソッドです。例は「サンプル・コード」を参照してください。

}

catch (ProvisioningException ex) { // Handle exception } }

正常に接続されると、iprov変数のメソッドにより、リクエストをProvisioning Gateway Webサービスに送ることができます。各メソッドはIProvisioningnResultインタフェースに結果を返します。エラー処理のため、try…catchブロック内でメソッドを呼び出すことをお薦めします。CLIがスローした例外は、ProvisioningExceptionクラスをキャッチすることで十分に処理できます。その他の例外は、catch (Exception)を追加することにより処理できます。

7.5.2.1 iProvインタフェースで使用可能なメソッド

この項では、各プロビジョニング操作に使用可能なメソッドおよびパラメータについて説明しています。使用可能な各メソッドの詳細は次のとおりです。

  • メソッド名と説明

  • メソッドのオーバーロード・リスト

  • メソッドのパラメータの説明(該当する場合)

パラメータのうち1つは、特別に説明する必要があります。optionsパラメータは、キーと値のペアのディクショナリです。キーは、コマンド行でCLIが使用する引数の名前です。値はキーの値です。開発者は、キーのリテラル名(コマンド行で渡す)またはOperationKeysクラスで定義されたキー定数を使用して、ディレクトリにキーと値のペアを設定できます。

  • CLIが使用するコマンド行構文(CLI_Syntax)(該当する場合)

コマンド行引数は、メソッドのオプション・パラメータの入力に使用できる有効なキーに直接マップします。OperationKeysクラスは、各キーのリテラル値への定数マッピングの利便性のために用意されています。オプション配列の入力または索引付けに使用できます。煩雑さを避けるため、CLI構文では完全な構文は表示されません。詳しい情報は、「CLI構文」を参照してください。操作名は大文字で始まります。括弧内に指定された引数はオプションです。

メソッド 説明
Connect Webサービスへの接続の確立。このメソッドは実際の接続は行わず、他のメソッドが接続に使用する資格証明を保存します。
オーバーロード・リスト

void Connect(string strUsername, string strPassword);

void Connect(string strURL, string strUsername, string strPassword);

void Connect(

string strURL,

string strAgent,

string strUsername,

string strPassword);


パラメータ 説明
strURL WebサービスのURL。デフォルトはhttp://localhost/v-GO%20PM%20Service/up.asmx
strAgent このエージェントの識別子。デフォルトは%COMPUTERNAME%
strUsername Webサービスの認証に使用するユーザー名。
strPassword Webサービスの認証に使用するパスワード。

メソッド 説明
SetExecTime プロビジョニングの指示の実行時間の設定。指示を作成した後、将来の日付または時間に指示をエージェントで実行するよう伝えるために使用します。設定されていない場合、デフォルトの"Now"が使用されます。
オーバーロード・リスト

void SetExecTime(DateTime dtExec);


メソッド 説明
AddCredential 新しい資格証明を持つユーザーのプロビジョニング。
オーバーロード・リスト

IProvisioningResult AddCredential(

string strUserId,

string strApplication,

string strDescription,

string strAppUserId,

string strPassword);

IProvisioningResult AddCredential(

string strUserId,

string strApplication,

StringDictionary options);


パラメータ 説明
strUserId プロビジョニングされるユーザーのユーザーID。
strApplication プロビジョニングするためのアプリケーションの名称。
strDescription プロビジョニングの指示の説明。
strAppUserId 資格証明のアプリケーション・ユーザーID。
strPassword 資格証明のパスワード。
options オプションのハッシュ表(OperationKeysで指定したキー)。
CLI構文
ADD_CREDENTIAL sso_userid sso_application [sso_app_userid] sso_password]
[sso_description] [sso_other1] [sso_other2]

メソッド 説明
CancelRequest プロビジョニング・リクエストの取消し(エージェントの動作前)。
オーバーロード・リスト

IProvisioningResult CancelRequest(string strUserId, string strGuid);


パラメータ 説明
strUserId プロビジョニングされるユーザーのユーザーID。
strGuid 取消し可能な、取消しのためのプロビジョニング指示のID(複数のメソッドにより返される)。
CLI構文
CANCEL sso_userid=<username> command_id=<guid>

メソッド 説明
DeleteCredential プロビジョニングされた資格証明の削除。
オーバーロード・リスト

IProvisioningResult DeleteCredential(string strUserId,

string strApplication, string strAppUserId, string strOther1,

string strOther2);

IProvisioningResult DeleteCredential(string strUserId,

string strApplication, StringDictionary options);


パラメータ 説明
strUserId プロビジョニングされるユーザーのユーザーID。
strApplication プロビジョニングするためのアプリケーションの名称。
strAppUserId 資格証明のアプリケーション・ユーザーID。
strOther1 他のフィールド値(1)。
strOther2 他のフィールド値(2)。
options オプションのハッシュ表(OperationKeysで指定したキー)。
CLI構文
DELETE_CREDENTIAL sso_userid sso_application [sso_app_userid]
[sso_password] [sso_other1] [sso_other2]

メソッド 説明
ModifyCredential プロビジョニングされた資格証明の変更。
オーバーロード・リスト

IProvisioningResult ModifyCredential(string strUserId, string strApplication, string strAppUserId, string strDescription, string strPassword, string strOther1, string strOther2);

IProvisioningResult ModifyCredential(string strUserId, string strApplication, string strAppUserId, StringDictionary options);


パラメータ 説明
strUserId 変更するユーザーのユーザーID。
strApplication 変更する資格証明のアプリケーションの名称。
strAppUserId 変更する資格証明のアプリケーション・ユーザーID。
strAppUserId 変更する資格証明のパスワード。
strDescription プロビジョニングの指示の説明。
strOther1 他のフィールド値(1)。
strOther2 他のフィールド値(2)。
options オプションのハッシュ表(OperationKeysで指定したキー)。
CLI構文
MODIFY_CREDENTIAL sso_userid sso_application sso_app_userid [sso_description] [sso_password] [sso_other1] [sso_other2] [sso_password] [sso_other1] [sso_other2]

メソッド 説明
DeleteUser ユーザー・コンテナの削除(特定のユーザーの全資格証明の削除とほぼ同じ)。
オーバーロード・リスト
IProvisioningResult DeleteUser(string strUserId);

パラメータ 説明
strUserId 削除するコンテナのユーザーID。
CLI構文
DELETE_USER sso_userid=<username>

メソッド 説明
GetStatus サーバーにpingを打つ。エラーなしで正常に返されれば、サーバーは機能しています。
オーバーロード・リスト

IProvisioningResult GetStatus();

CLI構文
CHECK_SERVER

メソッド 説明
StatusRequest 保留中のプロビジョニング指示のステータスのリクエスト。
オーバーロード・リスト

IProvisioningResult StatusRequest(string strUserId, string strGuid);


パラメータ 説明
strUserId 問い合わせるUser ID。
strGuid プロビジョニング指示のID(複数メソッドにより返される)。
CLI構文
STATUS sso_userid=<username> command_id=<guid>

メソッド 説明
GetSettings PM Webサービスのディレクトリ設定を返す。
オーバーロード・リスト

IProvisioningResult GetSettings();

CLI構文
GET_SETTINGS

メソッド 説明
GetSchema スキーマ(またはSetSettingsに使用可能なオプションのリスト)の取得。
オーバーロード・リスト

IProvisioningResult GetSchema();

CLI構文
GET_SCHEMA

メソッド 説明
SetSettings Webサービスで使用される設定の変更。
オーバーロード・リスト

IProvisioningResult SetSettings(IDictionary map);


パラメータ 説明
Map 各設定のキーと値のペア。
CLI構文
SET_SETTINGS name="key1, key2, ..." value="value1, value2, ..."

メソッド 説明
ExtSearch ディレクトリ・サービスを検索し、ユーザー、アプリケーション、およびログの情報を返す。特定のユーザーまたはすべてのユーザーに対してプロビジョニング可能なアプリケーションのリストを返します。
アプリケーション用のオーバーロード・リスト

IProvisioningResult ExtSearchApplications();

IProvisioningResult ExtSearchApplications(string strUserId);


パラメータ 説明
strUserId 返すアプリケーション・リストのユーザーの名前。
ユーザー用のオーバーロード・リスト

IProvisioningResult ExtSearchUsers();

IProvisioningResult ExtSearchUsers(string strUserId,

StringCollection logons, bool fRetLogons, bool fRetInsts,

bool fMatchExact);

IProvisioningResult ExtSearchUsers(StringDictionary options);


パラメータ 説明
strUserId 情報を返すユーザー。
logons ログオンのみを返す(csv形式)。
fRetLogons ログオン情報を返す。
fRetInsts 保留中のプロビジョニング指示を返す。
fMatchExact strUserIdで完全一致を使用。
options オプションのハッシュ表(ExtSearchKeysで指定)。
ロギング用のオーバーロード・リスト

IProvisioningResult ExtSearchLog();

IProvisioningResult ExtSearchLog(EventType evt);

IProvisioningResult ExtSearchLog(DateTime dtStart, DateTime dtEnd,

EventType evt);


パラメータ 説明
evt 返すEventType
dtStart 返す日付範囲の開始日。
dtEnd 返す日付範囲の終了日。
CLI構文
EXT_SEARCH CATALOG=Applications [userId=<username>]

EXT_SEARCH CATALOG=Users [userId=<username>]

[logon="logon1,logon2,..."] [returnLogons=true|false]

[returnInstructions=true|false] [uidMatch=substring|equal]

EXT_SEARCH CATALOG=EventLog [startDate=mm/dd/yyyy] [endDate=mm/dd/yyyy]

[eventType=amducs]


7.5.3 結果の取得

Provisioning Gateway Webサービスに対するプロビジョニング・リクエストの完了後、呼び出されたメソッドによりIProvisioningResultインタフェースが返されます。アプリケーションは、リクエストが正常に成功したかどうか判断し、関連する結果を取得するため、このインタフェースを使用できます。この項では、IProvisioningResultインタフェースで使用可能なプロパティ、およびIProvisioningで呼び出されるメソッドの値の解釈方法を説明します。

7.5.3.1 インタフェース定義

public interface IProvisioningResult { string Response { get; }

bool Success { get; }

string CommandID { get; }

string ErrorMessage { get; }

IDictionary AttributesCollection { get; } }

プロパティ 説明
Success コマンドが正常に完了した場合、trueとなります。
ErrorMessage SuccessFalseの場合のエラー文字列。必ずしも設定する必要はありません。
CommandID 完了したコマンドに関連付けられた一意のID(32桁のGUID)。ExtSearch以外のすべてのメソッドはGUIDを返します。ただし、次のメソッドのみがCancelRequestおよびStatusRequest操作で使用できるGUIDを提供します。
  • AddCredential

  • ModifyCredential

  • DeleteCredential

Response Webサービスが返すraw XMLレスポンス。結果の再解析が必要な場合に便利です。
AttributesCollection 成功時に、詳細な結果がWebサービスにより返されます。形式は、キーと値のペアのディクショナリです。このプロパティに入力するメソッドは次のとおりです。
  • GetSettings

  • GetSchema

  • StatusRequest

  • ExtSearch


7.5.4 属性コレクション

属性コレクションは、GetSettingsGetSchemaExtSearch、およびStatusRequestによって返される属性のディクショナリです。キーは属性名を示す文字列です。値はIDictionaryIList、または文字列のいずれかを参照できます。ただし、同一のコレクションで複数のタイプが混じり合うことはありません。タイプの確定後、すべてのキーは同一のタイプを参照します。

次の表は、プロビジョニング操作により返されるキーと値、およびその意味の一覧です。

メソッド 説明
GetSettings 文字列キーと値のペアのコレクションを返します。キーは設定の名前です。値はキーの値です。Provisioning Gateway Webサービスによりレジストリに設定されるストレージ値です。
StatusRequest 文字列キーと値のペアのコレクションを返します。キーはステータス・プロパティの名前です。値はキーの値です。サポートされているステータス・キーは次のとおりです。

ステータス・キー

InstructionState PENDING, PROCESSED

Result SUCCESS, FAILED

Description SUCCESS, <Reason for failure>

Modified <Date modified>
GetSchema キーは記憶域設定のグループの名前を示す文字列です。値はIListです。各IListエントリには、このグループの設定が1つ記述されています。エントリは、文字列キーと値のペアのIDictionaryです。キーは次のいずれかで、使用可能な値のうちいずれか1つが後に続きます。

キー

DataType 文字列またはブール。

DisplayDesc この設定の説明。空にできます。

DisplayName 表示するための、設定のわかりやすい名前。

Flags 設定が非永続的かどうかを示す使用する内部値で、必須です。

RegDefault この設定のデフォルト値。空にできます。

RegName レジストリ・キーの名前。

RegPath この設定の相対レジストリ・パス。

RegType レジストリ・タイプ(DWORDまたはstring)。

注意: このエントリにより記述される設定は、GetSettingsおよびSetSettingsで取得または設定できる値になります。
ExtSearch ハッシュ表の集まり。(詳細は、次の項を参照してください)。キーは文字列ですが、戻り値のタイプは呼び出されたExtSearchXXXにより異なります。


注意:

AttributesCollectionプロパティによって返されるキーと値のペアの構造および形式は、実際のCLIからのコンソール出力を細密に反映するように設計されています。CLIを使用するだけで、これらのメソッドにより返されるコレクションの形式および構造を理解できます。

7.5.5 ExtSearchの結果

この項では、ExtSearchが返すAttributesCollectionマップの形式について説明します。

7.5.5.1 ExtSearchApplications

戻り値: .NET: ハッシュ表のハッシュ表

Java: ハッシュマップのハッシュマップ


キー
Application Name ハッシュ表(文字列キーと値のペア)

キー

HasFourthField True | False

HasPassword True | False

HasThirdField True | False

HasUserId True | False

IsSecurId True | False

IsSecurIdがtrueの場合、最初の4つのフィールドの名前が変更されます。
  • SecurID-UserId

  • SecurID-Other[4th]

  • HasPassword

  • PassKeyType


検索結果の例を次に示します。

Adobe Acrobat Readers

HasFourthField: False

HasPassword: True

HasThirdField: False

IsSecurID: False

HasUserId: False

MSNメッセンジャー

HasFourthField: False

HasPassword: True

HasThirdField: False

IsSecurID: False

HasUserId: True

Visual SourceSafe

HasFourthField: False

HasPassword: True

HasThirdField: True

IsSecurID: False

HasUserId: True

7.5.5.2 ExtSearchUsers

戻り値: .NET: ハッシュ表のリストのHashTable

Java: ハッシュマップのリストのHashMap


キー
ユーザー名


ログオンエントリ

キー

name アプリケーション名

modifiedDate 最終更新日

lastUsedDate SSOによる最終使用日

Id GUID識別子

保留中のエントリ

applicationName アプリケーション

createDate 作成日

executeDate 実行予定日

id GUID識別子

instructionType ADD | MODIFY | DELETE

provisioningAgent エージェント名

status SUCCESS | Pending

7.5.5.2.1 CLI出力

ext_search catalog=users returnLogons=true

すべてのユーザーのログオンのリストを返します。

johnd

modifiedDate: 2005-08-24 16:43:41Z

lastUsedDate: 2005-08-24 16:43:41Z

name: Adobe Acrobat Reader

id: a75f58c8-a3bd-4d00-bc27-99a587dd98f8

modifiedDate: 2005-08-24 16:43:41Z

lastUsedDate: 2005-08-24 16:43:41Z

name: Adobe Acrobat Reader

id: d6bc375d-3f90-400b-a012-6b80aff4ef49

modifiedDate: 2005-09-09 16:28:15Z

lastUsedDate: 2005-09-09 16:28:15Z

name: Visual SourceSafe

id: 80cdc929-61a6-4b86-8763-d5f02b0dbb8b

modifiedDate: 2005-09-01 17:30:26Z

lastUsedDate: 2005-09-01 17:30:26Z

name: Visual SourceSafe

id: 065f5cff-b651-4a3a-a99c-c606059cbad7

modifiedDate: 2005-09-09 16:41:33Z

lastUsedDate: 2005-09-09 16:41:33Z

name: Visual SourceSafe

id: 0a0686b5-3e38-4830-8e02-79b8177de0b4

7.5.5.3 ExtSearchLog

戻り値: .NET: ハッシュ表のハッシュ表

Java: ハッシュマップのハッシュマップ


キー
エントリ番号 ハッシュ表(文字列キーと値のペア)

キー

applicationName アプリケーション名

eventType イベントのタイプ(DWORDフラグ)

executeDate 実行日

id GUID識別子

provisionedUser プロビジョニングされたユーザー

provisioningAgent エージェント名

timeStamp タイムスタンプ

7.5.5.3.1 CLI出力

ext_search catalog=eventLog

すべてのユーザーのログオンのリストを返します。

エントリ1

applicationName:

eventType: 64

executeDate: 0001-01-01 00:00:00.000Z

id: a09b9de7-4b65-464c-8dcb-90219e222991

provisionedUser:

provisioningAgent: SSO PM Console

timestamp: 2005-11-17 18:33:37.290Z

エントリ2

applicationName:

eventType: 64

executeDate: 0001-01-01 00:00:00.000Z

id: bd444f6c-e3cf-4efc-bbd8-c5e82d55ed96

provisionedUser:

provisioningAgent: SSO PM Console

timestamp: 2005-11-17 18:33:37.370Z

エントリ3

applicationName:

eventType: 64

executeDate: 0001-01-01 00:00:00.000Z

id: 6eebd1dd-a904-43db-8c22-38ef941e83b3

provisionedUser:

provisioningAgent: SSO PM Console

timestamp: 2005-11-17 18:33:38.960Z

エントリ4

applicationName: Visual SourceSafe

eventType: 4

executeDate: 2005-11-17 19:28:51.427Z

id: 2c45f078-c9c7-4268-9abd-4e50111ba644

provisionedUser: davidh

provisioningAgent: SSO PM Console

timestamp: 2005-11-17 19:28:51.427Z

7.5.6 サンプル・コード

次のコードは、IProvisioningインタフェースからAddCredentialメソッドを呼び出す方法を示します。この例では、Logon Managerユーザーjohndoeの資格証明を追加しています。追加されるアプリケーションはYahoo、アプリケーションの資格証明はjdoeおよびpasswordです。この資格証明の説明はTestAppです。

try

{

IProvisioningResult ipr = iprov.AddCredential(

"johndoe",

"Yahoo",

"Test App",

"jdoe",

"password");

//Process results in ipr

if (!ipr.Success)

{

Console.WriteLine(ipr.ErrorMessage);

return;

}

//Display GUID

Console.WriteLine("SUCCESS" + ipr.CommandID);

}

catch (ProvisioningException ex)

{

// Handle Exception...

}

よりフレキシブルな方法として、オプションの引数を使用して資格証明を追加することもできます。このメソッドでは、追加パラメータ(アプリケーションによってはOTHER1およびOTHER2フィールドが必要です)、およびそれらのパラメータの組み合わせを使用できます。

次の例では、SSOユーザーjohndoeVisual SourceSafeアプリケーションの資格証明を追加する方法を示します。このアプリケーションにはOTHER1フィールドが必要なため、この方法が資格証明を追加する唯一の方法です。

StringDictionary options = new StringDictionary();

options.Add(OperationKeys.DESCRIPTION, "Test App");

options.Add(OperationKeys.APP_USERID, "jdoe");

options.Add(OperationKeys.PASSWORD, "password");

options.Add(OperationKeys.OTHER1, "VGO");

IProvisioningResult ipr = iprov.AddCredential("johndoe",

"Visual SourceSafe", options);

7.6 SDKとしてのJava CLIの使用

この項の手順を実施する前に、Provisioning Gateway CLIをインストールする必要があります。Provisioning Gateway CLIのインストールの詳細は、『Oracle Enterprise Single Sign-On Suiteインストレーション・ガイド』を参照してください。

Java CLIは<home directory>\v-GO PM\Client\Java\<version>の下にあります。

Java CLIをSDKとして使用するには、次の手順を実行します。

  • pmcli.jarおよびサポートしているライブラリをCLASSPATHに追加します。

  • プロビジョニング・クラスをアプリケーションにインポートします。

  • ProvisioningConnectionクラスのインスタンスを作成します。

  • CLIOperationParserクラスのインスタンスを作成します。

  • StringMapを使用し、操作および操作パラメータを定義します。

  • 手順4で作成したオブジェクト・インスタンスを使用し、Operationのインスタンスを作成します。

  • 実行時間を設定します(設定しない場合、デフォルトの"Now"が使用されます)。

  • ProvisioningConnection(手順3)インスタンスを使用し、WebサービスにOperationインスタンス(手順6)を送信します。

  • 操作の成功および結果を取得します。

7.6.1 サンプル・コード

次のコードは、それぞれの手順を実行する簡単なプログラムです。

  1. これらのクラスをアプリケーションにインポートします。

    import com.passlogix.vgo.pm.cli.*; import com.passlogix.vgo.pm.operations.*;

    Webサービスを呼び出すサンプル・ルーチンです。

    void CallWebService(/* Parameters */) {

    ProvisioningConnectionへの引数は次のように定義されます。

    URL: WebサービスのURL strAgent: クライアント・エージェントのユーザー定義名 strUsername: 接続するユーザー名 strPassword: 接続に使用するパスワード ProvisioningConnection conn = new ProvisioningConnection(strURL, strAgent, strUsername, strPassword); try {

  2. 指示の実行を開始します。

    CLIOperationParser opParser = CLIOperationParser.newInstance(); Operation.StringMap options = new Operation.StringMap();

  3. ほとんどのオプションに対してはOperationKeysクラスを使用します。ExtSearch操作にはExtSearchKeysクラスを使用します。

    options[OperationKeys.USERID] = "davidh"; options[OperationKeys.APPLICATION] = "Visual SourceSafe";

    strOperは、CLIOperationParserで定義された操作と同一にすることができます。: Operation oper = opParser.parse(strOper, options);

  4. 命令の実行時間を設定します。実行時間を指定しない場合は、デフォルトでNowに設定されます。oper.setExecTime(dtExec); conn.sendInstruction(oper);

  5. 操作が正常に実行された場合、結果を取得します。if (!oper.getSuccess()) { String strMsg = String.format(

    "The command failed: id=%s, msg=%s", oper.getCommandID(), oper.getError()); return; }

  6. コマンドIDおよび結果属性を取得します。

    String strID = oper.getCommandID()); CollectionsMap map = oper.getResultAttributes()); } catch (Exception ex) { // print exception } }

    コマンドによっては、片方または両方が空です。コマンドIDと結果属性のフォーマットの詳細、および各操作に使用可能なオプションについては、「SDKとしての.NET CLIの使用」の項を参照してください。使用可能な操作は、CLIOperationParserクラスの静的メンバーとして定義されます。サポートされている操作に対して使用可能なオプションおよびパラメータは、すべてこの文書の「OperationKeysインタフェース」および「ExtSearchKeysインタフェース」の項で定義されています。

7.6.2 クラス定義

次のクラス定義では、リクエストをProvisioning Gateway Webサービスにプログラム的に送信するために必要な、重要な定数およびメソッドについて記載します。

7.6.2.1 CLIOperationParserクラス

このクラスはOperationParserを継承しています。それ自身のインスタンスは、newInstance()を呼び出すことにより作成できます。インスタンスが存在する場合、サーバー上で実行される特定のリクエストを示すOperationオブジェクトの作成に使用できます。

定数文字列として定義された、サポートされているすべての操作は次のとおりです。

static public final String ADD_CREDENTIAL = "add_credential";

static public final String MODIFY_CREDENTIAL = "modify_credential";

static public final String DELETE_CREDENTIAL = "delete_credential";

static public final String DELETE_USER = "delete_user";

static public final String STATUS = "status";

static public final String CANCEL = "cancel";

static public final String CHECK_SERVER = "check_server";

static public final String GET_SETTINGS = "get_settings";

static public final String GET_SCHEMA = "get_schema";

static public final String SET_SETTINGS = "set_settings";

static public final String EXT_SEARCH = "ext_search";

このパーサーの新しいインスタンスの作成

static public CLIOperationParser newInstance();

選択した出力ストリームへの結果の出力

public void printResults(PrintStream out, Operation oper);

7.6.2.2 OperationParserクラス

このクラスは、CLIOperationParserのベース・クラスです。追加の操作をサポートし、Operationオブジェクトを作成するためのメソッドを定義します。

  • 新規プロビジョニング操作およびそのサポート・クラスを追加します。

    public void addOperation(String strOper, Class<? extends Operation> c)

    サポート・クラスは、抽象Operationクラスから派生したものである必要があります。このメソッドは内部使用用です。

  • 特定のプロビジョニング指示のOperationオブジェクトのインスタンス作成:

    public Operation parse(String strInstr) throws InstantiationException, IllegalAccessException

    この指示の形式は、コマンド行で渡されたものと同じです。

  • 操作名に基づくOperationオブジェクトのインスタンス作成:

    public Operation parseNoOpt(String strOper) throws InstantiationException, IllegalAccessException

  • 操作名およびパラメータ(キーと値のペアのマップとして指定された)に基づくOperationオブジェクトのインスタンス作成:

    public Operation parse(String strOper, Operation.StringMap options) throws InstantiationException, IllegalAccessException

7.6.2.3 Operationクラス

OperationクラスはJava CLIがサポートするすべての操作のベース・クラスです。このクラスは正しいメッセージを構成してWebサービスに送信し、レスポンスの取得と保存を行います。結果の問合せに使用できるメソッドは次のとおりです。

  • サーバーからraw xmlレスポンスを取得します。

    public String getResponse()

  • 操作が正常に実行されたかどうかを問い合わせます。

    public boolean getSuccess()

  • 操作の実行後、関連付けられたGUIDを取得します。

    public String getCommandID()

    操作に関連付けられたGUIDがない場合、空の文字列にすることができます。

  • getSuccessがfalseを返した場合、エラー・メッセージを取得します。

    public String getError()

  • サーバー上でのこの操作の実行時間を設定します。

    public void setExecTime(Date dtExec)

    このパラメータの値を指定しない場合、操作はただちに実行されます。それ以外の場合、操作は指定された時間まで実行されません。

  • 操作が正常に実行された場合、結果属性を取得します。

    public CollectionsMap getResultAttributes()

    success以外の結果が返されなかった場合、空のCollectionsMapが返されます。CollectionsMapの形式は、リストの名前と値のペアのマップ、またはその他のマップです。正確な形式は実行された操作により異なります。詳細は、「SDKとしての.NET CLIの使用」を参照してください。

  • 操作を実行します。

    public String send(ProvisioningConnection conn) throws PMCLIException, RemoteException

    通常は、メソッドを直接呼び出さないでください。かわりに、次のように呼び出します。

    ProvisioningConnection.sendInstruction(...)

    これによりOperationオブジェクトが渡されます。

7.6.2.4 OperationKeysインタフェース

OperationKeysインタフェースは、操作に使用できるすべてのパラメータを定義します。パラメータはStringMapに対するキーとして指定し、その値が後に続きます。操作でサポートされるキーのサブセットの詳細については、Provisioning Gatewayに関する説明の「SDKとしての.NET CLIの使用」を参照してください。

public interface OperationKeys

{

static public final String USERID = "sso_userid";

static public final String APPLICATION = "sso_application";

static public final String DESCRIPTION = "sso_description";

static public final String APP_USERID = "sso_app_userid";

static public final String PASSWORD = "sso_password";

static public final String OTHER1 = "sso_other1";

static public final String OTHER2 = "sso_other2";

static public final String GUID = "command_id";

static public final String NAME = "name";

static public final String VALUE = "value"; }

7.6.2.5 ExtSearchKeysインタフェース

ExtSearchKeysインタフェースは、ExtSearch操作に対してサポートされるパラメータを定義します。OperationKeysインタフェースはこの操作に適用されません。このリストに記載されているパラメータを使用できます。

public interface ExtSearchKeys

{

ExtSearchでサポートされるキー

static public final String OPTION_CATALOG = "catalog";

static public final String OPTION_USERID = "userId";

static public final String OPTION_APPLICATION= "applicationName";

static public final String OPTION_EVENTTYPE = "eventType";

static public final String OPTION_STARTDATE = "startDate";

static public final String OPTION_ENDDATE = "endDate";

static public final String OPTION_LOGON = "logon";

static public final String OPTION_SHOWLOGONS = "returnlogons";

static public final String OPTION_SHOWPENDING = "returnInstructions";

static public final String OPTION_UIDMATCH = "uidMatch";

OPTION_UIDMATCHキーに使用可能な値

static public final String MATCH_EQUAL = "equal";

static public final String MATCH_SUBSTRING = "substring";

OPTION_CATALOGキーに使用可能な値

static public final String CATALOG_APPS = "Applications";

static public final String CATALOG_EVENTLOG = "EventLog";

static public final String CATALOG_USERS = "Users"; }

7.6.3 SSLを使用するためのJavaの設定

Java CLIにSSLサポートを設定するためには、Java Keystore Fileのルートを示すプロパティ・ファイルを変更する必要があります。

  1. 使用するSSL資格証明のパブリック・バージョン(秘密鍵なし)をダウンロードします。IISをホストしているサーバーから取得できます。次の手順に従い、公開証明書をssl.cerファイルとして保存します。

    1. SSL証明書を使用しているサーバーから、「Start」→「Run」を選択してMicrosoft Management Consoleを開き、MMCと入力し、「OK」をクリックします。

    2. 「File」→「Add/Remove Certificates Snap-in」をクリックします。「Standalone」タブの「Add」をクリックします。

    3. 「Certificate」スナップインを選択して、「Add」をクリックします。

    4. 「Computer Account」を選択して、「次へ」をクリックします。

    5. 「Local Computer」を選択して、「Finish」をクリックします。

    6. 「Console Root」下の「Certificates (Local Computer)」を展開します。

    7. 「Personal」を展開し、「Certificates」をクリックします。

    8. 「SSL certificate」を右クリックし、「All Tasks」→「Export」を選択します。

    9. 「Certificate Export Wizard」パネルで、「次へ」をクリックします。

    10. 「Export Private Key」パネルで、「No, do not export the private key」をクリックします。

    11. 使用するファイル形式(DERまたはBASE-64)を選択し、「次へ」をクリックします。

    12. エクスポートするファイルを参照して選択します。「次へ」をクリックします。

    13. ssl.cerファイルとして保存します。

    14. 「Finish」をクリックしてから「OK」をクリックします。ファイルは(次に作成する)クライアントのJavaキーストアにインポートされます。

  2. JDK 1.42+がクライアント・ワークステーションにインストールされていることを確認します。キーストアの作成に使用する、keytool.exeというバイナリがあります。

  3. 次の手順に従い、pmcli.jksという名前のファイルをpmsslという別名で作成します。

    1. 実行: keytool -import -trustcacerts -file ssl.cer -alias pmssl -keystore pmcli.jks

    2. キーストアに対するパスワードを入力します。

    3. 証明書の信頼を要求された場合は、「Yes」をクリックします。

    4. pmcli.jksファイルをpmcli.jarが格納されているフォルダにコピーします。

  4. pmcli.batでプロパティ・ファイルに対して定義されたフォルダに、pmcli.propertiesファイルを作成します。

  5. pmcli.propertiesを編集して次の行を追加します。rmi.ssl.trust.keystore.location=pmcli.jks

  6. ファイルを保存します。

  7. pmcli.propertiesがあるディレクトリへのフルパスを(ファイルへのフルパスではなく)CLASSPATHに追加します。

  8. pmcli.batを実行し、https URLを-urlスイッチに渡します。


注意:

SSLを有効にしても、CLIのhttpサービスとの通信が妨げられることはありません。