SOAP サービス向けのプロダクションの構成
ここでは、Web ポートを通じて HTTP および SOAP サービスを使用できるようにシステムを構成する方法を簡単に説明します。ここで紹介する情報は、これらのサービス用の開発システムやテスト・システムをセットアップするのに役立ちます。これらのトピックに関する包括的な情報は、ドキュメントに記載されています。詳細は、"システム情報の構成" を参照してください。
InterSystems IRIS® の開発システムまたはテスト・システムを HTTP または SOAP サービス向けにセットアップするには、以下の手順を実行します。
-
既存のネームスペースを使用しない場合は、新しいネームスペースを作成します。
-
空のロールを作成して、このロールを不明ユーザに割り当てます。
-
[システム管理]、[セキュリティ]、[ロール] の順に選択して、[ロール] ポータル・ページを表示します。
-
[新規ロール作成] ボタンをクリックして、ロールに名前を付けて (例 : Services_Role)、[保存] ボタンをクリックします。
-
[メンバ] タブを選択して、[不明ユーザ] を選択して、右矢印をクリックして、[割り当てる] ボタンをクリックします。
-
-
Web ポートへの呼び出しを処理する Web アプリケーションを定義します。この Web アプリケーションの名前によって、サービスを呼び出す URL のルートが指定されます。単一の Web アプリケーションは複数のビジネス・サービスをサポートできますが、これらのビジネス・サービスはすべて、同じクラスを持っているか、その Web アプリケーションのディスパッチ・クラスのサブクラスを持っている必要があります。
-
[システム管理]、[セキュリティ]、[アプリケーション]、[Web アプリケーション] の順に選択して、[Web アプリケーション] ポータル・ページを表示します。[新規 Web アプリケーション作成] ボタンをクリックします。
-
この Web アプリケーションに名前を付けます (例 : /weatherapp や /math/sum)。名前の先頭には / (スラッシュ) を付加する必要があります。
-
[ネームスペース] で、当該プロダクションが実行されているネームスペースを指定します (例 : SERVICESNS)。[ネームスペースのデフォルト・アプリケーション] チェック・ボックスのチェックは外したままにします。
-
[有効] の場合、[REST] ラジオ・ボタンを選択します。
-
[ディスパッチ・クラス] でコンポーネント・クラスを指定します (例 : EnsLib.REST.GenericServiceOpens in a new tab や EnsLib.SOAP.GenericServiceOpens in a new tab)。
-
[必要なリソース] フィールドと [ID でグループ化] フィールドは空白のままにします。
-
[許可された認証方法] 行の [認証なし] チェック・ボックスにチェックを付けます。
またはこれに代わる方法について、このリストの後のヒントを参照してください。
-
[保存] をクリックします。
-
[マッチングロール] タブを選択します。
-
[マッチングロールを選択:] フィールドで、前の手順で作成したロールを選択します。
-
[選択されたマッチングロールに対して追加するターゲットロールを選択] フィールドで、当該ネームスペースのグローバルとルーチンに関連付けられた 1 つまたは複数のロールを選択します。これらのグローバルとルーチンは、同じデータベース内にあっても別々のデータベース内にあってもかまいません。お使いのサービスが別の InterSystems IRIS データベースにアクセスする場合は、そのデータベースのロールも選択する必要があります。 複数のロールを選択するには、Ctrl キーを押しながら選択します。
Note:グローバル用データベースには、二次データベースおよび対応するロールも存在する場合があります (例 : %DB_GDBSECONDARY)。この二次データベースにはパスワードが保管されます。パススルー・サービスとパススルー・オペレーションのためにこのデータベースにアクセスする必要はありませんが、パスワード・アクセスを使用するカスタム Web サービスを作成する場合は、二次データベースのロールをターゲット・データベースに追加する必要もあります。
-
選択したロールがハイライト表示された状態で、右矢印をクリックしてこれらのロールを [選択済み] テキスト・ボックスに移動します。
-
[割り当てる] ボタンをクリックします。
-
ユーザを認証する場合は、以下の操作を行います。
-
EnsLib.SOAP.GenericServiceOpens in a new tab を拡張する新規クラスを作成します。
-
このクラスで、パラメータ SECURITYIN を ALLOW または REQUIRE に設定してオーバーライドします。
-
ビジネス・サービスの構成時に、この新規クラスを使用します。
-
サービスを呼び出す際に、WS-Security ユーザ名トークンを使用します。
-
Web アプリケーションの構成で、[認証なし] オプションをクリアします。