VeriCheck.jws サンプル
Web サービス VeriCheck は、WebLogic Workshop がサポートする宣言的セキュリティ モデルおよびプログラミングによるセキュリティ モデルを示します。
Web サービスをセキュア化するための SSL(HTTPS)プロトコルの使用
Web サービスをセキュア化するための基本認証の使用
サービス コントロールを介してのセキュア サービスの呼び出し
コールバック インタフェースを介したセキュア サービスのコールバック
このサンプルは、samples WebLogic Workshop プロジェクトの security/async フォルダにあります。ファイル システムでの場所は次のとおりです。
BEA_HOME\weblogic700\samples\workshop\applications\samples\security\async\VeriCheck.jws
この Web サービス用に WebLogic Server のセキュリティをコンフィグレーションするには
適切なドメインにある WebLogic Server を起動します。
Microsoft Windows システムでは、[スタート] メニューから次のように選択します。
[BEA WebLogic Platform 7.0|WebLogic Workshop|WebLogic Workshop Examples|Start Examples Server]
Linux システムまたは Solaris システムでは、次のスクリプトを実行します。
BEA_HOME/weblogic700/samples/workshop/startWebLogic.sh
Web ブラウザで、WebLogic Server Administration Console ページ
http://localhost:7001/console
にアクセスします。ユーザ名とパスワードの入力を求められたら次のように入力します。
[ユーザ名] installadministrator
[パスワード] installadministrator
[以前のセキュリティ|ユーザ] を開きます。
[新しいユーザの作成] で次のように入力します。
[名前] : someMerchant
[パスワード] testpassword
[パスワードの確認] testpassword
[作成] をクリックします。
[新しいユーザの作成] で次のように入力します。
[名前] : VeriCheck
[パスワード] testpassword
[パスワードの確認] testpassword
[作成] をクリックします。
[新しいユーザの作成] で次のように入力します。
[名前] : theBank
[パスワード] testpassword
[パスワードの確認] testpassword
[作成] をクリックします。
[以前のセキュリティ|グループ] を開きます。 Click Create a New Group...
[グループ] タブで次のように入力します。
[名前] : VeriCheckUsers
[ユーザ] someMerchant, theBank
[適用] をクリックします。
[以前のセキュリティ|グループ] を開きます。[新しい Group の作成...] をクリックします。
[グループ] タブで次のように入力します。
[名前] : BankUsers
[ユーザ] VeriCheck
[適用] をクリックします。
WebLogic Server Administration Console を表示していたブラウザを閉じます。
この Web サービスを実行するには
Web ブラウザのアドレス バーに https://localhost:7002/samples/security/async/VeriCheck.jws と入力して、サービスを起動します。適切なドメインにある WebLogic Server がこのマシン上で実行されている場合は、ここをクリックしてサンプルを実行することもできます。
デジタル証明書を受け入れるかどうかの入力を求められたら、[はい] をクリックします。
ネットワーク認証情報の入力を求められたら、次のように入力します。
[ユーザ名] someMerchant
[パスワード] testpassword
必要な場合は、テスト ビューの [Test Form] タブに移動します。
checkForSufficientBalance メソッドに checkingAccountID および amount の値を入力します。checkingAccountID は任意の文字列値、checkForSufficientBalance は整数値です。[checkForSufficientBalance] ボタンをクリックしてメソッドを呼び出します。
ここで、再度、デジタル証明書を受け入れるかどうかの入力を求められます。[はい] をクリックします。
ネットワーク認証情報の入力を求められますので、次のように入力します。
[ユーザ名] someMerchant
[パスワード] testpassword
(認証情報の入力を 2 回求められるのは、テスト ビューが Web サービス VeriCheck の制限された URL 空間に、テスト ビューを開いたときと checkForSufficientBalance メソッドを呼び出したときの 2 回の呼び出しを行うためです。)
Web サービス VeriCheck は、Web サービス Bank に checking account パラメータと amount パラメータを送信します。Web サービス Bank は、checking account に指定された amount に見合うだけの資金があるかどうかを調べます。Web サービス Bank は処理を完了すると、Web サービス VeriCheck をコールバックして口座に十分な資金があるかどうかを知らせます。次に、Web サービス VeriCheckは元々のクライアントをコールバックして、口座に十分な資金があるかどうかを知らせます。
Web サービス VeriCheck と Bank はともに基本認証を要求します。VeriCheck が Bank の doesAccountHaveSufficientBalance メソッドを呼び出際には、setUsername() と setPassword() のメソッド呼び出しにより認証情報を送信します。
同様に、Bank が VeriCheck をコールバックする際には、setCallbackUsername() と setCallbackPassword() のメソッド呼び出しにより認証情報を送信します。
[Message Log] にコールバック callback.onCheckDone が表示されるまで [更新] をクリックします。
[Message Log] でログ エントリを選択して、各会話に関連したメッセージ トラフィックを確認します。