Oracle® Fusion Middleware Oracle Adaptive Access Manager管理者ガイド 11g リリース2 (11.1.2) B70199-02 |
|
![]() 前 |
![]() 次 |
この付録では、SOAP Webサービス・アクセスの構成に関する手順を示します。
Webサービスを使用すると、リモート・コンピュータ上で使用可能となっているOracle Adaptive Access Manager機能にアクセスできます。OAAM Webサービスでは、アクションの実行をOAAMに要求できます。
OAAM Webサービスの利点は、すでに作成されているアプリケーション・ロジックを再作成する必要がないことです。
アプリケーション内のリモートWebサービスを参照することを、Webサービスを消費すると言います。.NETまたはJavaアプリケーションの一部として実装されたWebサービスを消費できます。
OAAM Webサービスにアクセスするための要件は、次のとおりです。
SOAP Webアクセスを構成するには、SOAPを使用したネイティブ統合のためにOAAM拡張共有ライブラリが必要です。
構成可能なプロパティをoaam_custom.properties
で指定する必要があり、このファイルがクライアント・アプリケーションのJavaクラスパスにある必要があります。
Webサービスへのアクセスは、コンピュータ上のライブラリを参照するのではなく、インターネットでリモート機能を参照することを除けば、ファンクション・コールに似ています。
SOAPによって、Webサービスのリクエストおよびレスポンスを送受信するための標準XML構造が提供されます。SOAPメッセージはHTTPを使用して送信されます。
Webサービス/SOAPクライアントは、OAAM Webサービスとの正常な通信のために、ユーザー名とパスワードを送信する必要があります。
セキュリティのために、パスワードはキーストアに格納される必要があります。
Webサービスを他者がリモート・アクセスで利用できるようにすることを、Webサービスを公開すると言います。
何も設定しないと、OAAMはWebサービスをURL /oaam_server/servicesで公開します。このURLはHTTP認証によって保護されています。
このURLへのアクセスは、OAAMSOAPServicesGroupロールを持つユーザーに許可されます。OAAMSOAPServicesGroupロールを持つユーザー(SOAPユーザー)をOAAMドメインに追加する必要があります。
注意: この手順は、OAAMサーバーでSOAP認証が無効の場合は不要です。 |
クライアント側設定について次に説明します。
ネイティブ・クライアントWebサービスのセキュリティを設定するには:
$ORACLE_HOME/oaam/cli
ディレクトリで、ファイル(soap_key.file
など)を作成し、それにHTTP認証ユーザー・パスワードを入力します。(OAAMSOAPServicesGroupロール/グループに追加されたユーザーのパスワード)。
sample.config_3des_input.properties
をsoap_3des_input.properties
にコピーします。
cp sample.config_3des_input.properties soap_3des_input.properties
soap_3des_input.properties
をキーストア・パスワード、別名パスワードおよびパスワード・ファイルで更新します。
#This is the password for opening the keystore. keystorepasswd= #This is the password reading alias (key) in the keystore keystorealiaspasswd= #File containing from key. Please note, keys in AES could be binary. Also note algorithms like 3DES require minimum 24 characters in the key #keyFile=soap_key.file keyFile= keystorefilename=system_soap.keystore keystorealias=vcrypt.soap.call.passwd
ORACLE_MW_HOME
およびJAVA_HOME
とソースsetCliEnv.sh
を設定します。
キーストアを生成します。
Unix/Linuxの場合は、次を実行します。
$JAVA_EXE -Djava.security.policy=conf/jmx.policy -classpath $CLSPTH com.bharosa.vcrypt.common.util.KeyStoreUtil updateOrCreateKeyStore readFromFile=soap_3des_input.properties
Windowsの場合は、次を実行します。
genkeystore.cmd soap_3des_input.properties
KeyStore
コマンドが成功した場合は、次のような出力が表示されます。
updateOrCreateKeyStore done! Keystore file:system_soap.keystore,algorithm=DESede KeyStore Password=ZG92ZTEyMzQ= Alias Password=ZG92ZTEyMw==
画面に出力されたキーストア・パスワードと別名パスワードを書き留めます。これらをoaam_custom.properties
に追加する必要があります。
system_soap.keystoreファイルをソース・コード制御システムに保存します。このファイルの処理ではセキュリティについて十分に注意してください。ファイルには重要なパスワード情報が含まれています。認可された担当者のみがこのファイルに読取りアクセスできるようにします。これを失うと、暗号化されたデータをOracle Adaptive Access Managerでリカバリできません。
system_soap.keystoreをネイティブ・クライアントのデプロイメント・フォルダのクラスパスにコピーします。
soap_key.file
ファイルとsoap_3des_input.properties
ファイルを両方とも削除します。
次のプロパティをエンコードされたパスワード(手順6)および認証ユーザー名とともにoaam_custom.properties
に追加します。
vcrypt.soap.auth.keystorePassword=<base64 encoded keystore password> vcrypt.soap.auth.aliasPassword=<based64 encoded password to the alias> vcrypt.soap.auth.username=<user configured for accessing the soap services> vcrypt.soap.auth.keystoreFile=system_soap.keystore
注意: この手順は、OAAMサーバーでSOAP認証が無効の場合は不要です。
クライアント側からの認証の無効化の詳細は、「SOAP認証の無効化」の項を参照してください。
Adaptive Strong AuthenticatorのHTTP認証を無効化または有効化するには、次のプロパティをtrue (有効)またはfalse (無効)に設定します。
vcrypt.soap.auth=
vcrypt.common.util.vcryptsoap.impl.classnameプロパティを設定します。
この設定によって、OAAMサービスと交換するSOAPメッセージを作成するときにアプリケーションがどのライブラリを使用するかが指定されます。
使用可能なオプションは、次のとおりです。
com.bharosa.vcrypt.common.impl.VCryptSOAPGenericImpl
vcrypt.tracker.soap.url
プロパティを設定します。
次に例を示します。
vcrypt.tracker.soap.url=http://localhost:14300/oaam_server/services/
この設定は、アプリケーションが通信するWebサービスのロケーションです。
vcrypt.soap.call.timeout
プロパティをミリ秒単位で設定します。
次に例を示します。
vcrypt.soap.call.timeout=10000
Oracle Enterprise Manager Fusion Middleware ControlからOracle Web Services Manager (OWSM)ポリシーを使用して、認証を有効化または無効化できます。
サーバーでSOAP Webサービス認証を無効化すると(デフォルトでは有効)、クライアントは認証されなくてもWebサービスを使用できます。
URL http://<host-name>:7001/em
とWebLogic管理ユーザー名およびパスワードを使用して、アイデンティティ管理ドメインのOracle Enterprise Manager Fusion Middleware Controlにログインします。
左側のメニューで「WebLogicドメイン」およびその下にあるOAAMドメインを展開して、oaam_server_server1を見つけます。
oaam_server_server1を右クリックして、「Webサービス」メニュー・オプションを選択します。
「Oracle Infrastructure Web Services」タブをクリックします。
ページの右上にある「ポリシーのアタッチ」リンクをクリックします。
次のページでOAAM Webサービスに関連する行をすべて選択し、「次」ボタンをクリックします。
行oracle/no_authentication_service_policyおよびoracle/no_authorization_service_policyを選択し、「次」ボタンをクリックします。
次のページで「アタッチ」ボタンをクリックします。
必要に応じてOAAMサーバーを再起動します。