パブリック・サービス・レジストリおよび外部サービス・レジストリの管理
この章では、パブリック・サービス・レジストリおよび外部サービス・レジストリを管理する方法を説明します。これらのレジストリは目的は異なりますが、構造とユーザ・インタフェースは似ています。
パブリックと外部の両方のサービス・レジストリのフィールド
この節では、パブリック・サービス・レジストリと外部サービス・レジストリのフィールドについて説明します。パブリック・サービス・レジストリと外部サービス・レジストリではほとんどのフィールドが同じです。両方のレジストリに共通のフィールドに加えて、パブリック・サービス・レジストリにはプライベート・フィールドがいくつかあります。このようなフィールドには、レジストリ管理者のみがアクセスでき、パブリック REST API を使用してアクセスすることはできません。
[名前]
[名前] は、サービスを特定します。サービスを特定するその他の属性は、[ドメイン] と [バージョン] です。それぞれのレジストリは、これらの属性の使用方法に関する規則を採用する必要があります。[ドメイン] は通常、サービスのカテゴリを特定し、[バージョン] はバージョン番号を表す文字列です。[ドメイン] と [バージョン] が組み合わさった [名前] は、エントリごとに一意である必要があります。例えば、ドメインが異なるか、バージョンが異なる限り、複数のエントリの名前が同じである可能性があります。
[バージョン]
[バージョン] は、サービスのバージョンを特定します。
[ドメイン]
[ドメイン] は、サービスのカテゴリを指定します。
[ライフサイクルの段階]
[ライフサイクルの段階] は、サービスの開発状態を表します。これは、以下のいずれかの値を持つことができます。[概念]、[開発]、[テスト]、[ステージング]、[稼働中]、[廃止]、および [非アクティブ]。
[サービス・プロトコル]
[サービス・プロトコル] は、クライアントがサービスへのアクセスに使用するプロトコルを表します。これは、以下のいずれかの値を持つことができます。[File]、[FTP]、[HL7]、[HTTP]、[REST]、[SOAP]、[SQL]、[X12]、および任意のカスタム値。外部サービス・レジストリでは、Service Protocol によって、ビジネス・オペレーションのプロパティの設定に Endpoint をどのように使用するかが決定されます。サービス・プロトコルとして TCP を明示的に入力することができますが、ドロップダウンの選択肢としては一覧に含まれていません。
[エンドポイント]
[エンドポイント] は、サービスの場所を指定します。パブリック・サービス・レジストリでは、エンドポイントは通常、ESB 上のビジネス・サービスの URL です。外部サービス・レジストリでは、エンドポイントは、データまたはサービスの場所に関する情報を提供し、ESB ホストのプロパティの設定に使用されます。
外部サービス・レジストリのエンドポイントの形式は、サービス・プロトコルによって異なります。それぞれのタイプのサービス・プロトコルでの Endpoint の使用方法の詳細は、“ESB ホストの構成での外部サービス・レジストリの使用” を参照してください。
[応答スタイル]
[応答スタイル] は、サービスが値を返す方法を表します。これは、以下のいずれかの値を持つことができます。[同期]、[コールバック]、[リモート・デポジット]、または空白の値。
[トピック]
[トピック] では、管理者ページおよびパブリック API からレジストリ・エントリの検索に役立つ検索用語を定義できます。レジストリ・エントリの作成時に値を入力することはできませんが、[詳細] パネルで値を入力することによって追加できます。カンマで区切った用語のリストを入力するか、ドロップダウン・メニューから 1 つ以上のトピックにチェックを付けることによってトピックを指定できます。ドロップダウン・メニューには、レジストリ・エントリに既に定義されているトピックが一覧表示されます。
[スキーマ]
[スキーマ] は、サービス・メッセージの構造を表します。[スキーマ] には、構造の定義を表すサブフィールドや、構造の定義を含むサブフィールドが含まれます。レジストリ・エントリの作成時にスキーマを指定することはできませんが、[詳細] パネルで値を入力することによってスキーマを追加できます。[スキーマ] には、以下のサブフィールドが含まれます。
-
[タイプ] — スキーマの記述に使用するスキーマ定義メカニズムの名前を指定します。WSDL、XSD、HL7、SEF、X12、AST、または EDF を選択することも、その他のスキーマ定義メカニズムの名前を入力することもできます。
-
[リファレンス] — スキーマ定義の URL を指定します。
-
[備考] — スキーマに関する補足情報を提供します。
-
[サムネイル] — スキーマの短いテキスト抜粋を提供します。
-
[コンテンツ] — スキーマ定義の完全なテキスト・コンテンツを表します。
[アクション]
[アクション] は、指定した URL と共に使用できる SOAP アクションまたは REST HTTP 要求メソッドを指定します。SOAP アクションは、WSDL で定義されている情報の概要を提供します。レジストリ・エントリの作成時にアクションを追加することはできませんが、[詳細] パネルで [アクション] のプラス記号を選択することによってアクションを追加できます。[アクション] には、以下のサブフィールドが含まれます。
-
[名前] — レジストリで対象のアクションの特定に使用する名前を指定します。
-
[リファレンス] — アクションまたは Web メソッドの識別子です。
-
[動詞] — HTTP 要求メソッドを指定します。通常、これは GET、PUT、POST、または DELETE ですが、任意の HTTP 要求メソッドを入力できます。
-
[読み取り専用] — チェックを付けると、呼び出しによってサーバの状態は変更されないことが指定されます。
-
[べき等] — チェックを付けると、同じ呼び出しの複数回の実行が、1 回の呼び出しと同じ影響をサーバに与えることが指定されます。
-
[説明] — アクションのテキストによる説明を指定します。
-
[要求スキーマ] — 受信メッセージ本文の形式を指定します。以下のサブフィールドで構成されます。[タイプ]、[リファレンス]、[備考]、[サムネイル]、および [コンテンツ]。
-
[応答スキーマ] — 応答メッセージ本文の形式を指定します。以下のサブフィールドで構成されます。[タイプ]、[リファレンス]、[備考]、[サムネイル]、および [コンテンツ]。
[属性]
[属性] は、名前と値のペアのリストを指定します。名前と値のペアを使用して、レジストリ・エントリの任意のフィールドを指定できます。レジストリ・エントリの作成時に属性を追加することはできませんが、[詳細] パネルで [属性] の + (プラス記号) を選択することによって属性を追加できます。それぞれの属性は、名前と文字列の値で構成されます。属性を定義すると、値を更新することも、その属性を削除することもできますが、属性の名前を変更することはできません。
[連絡先]
[連絡先] は、サービスをサポートまたは使用するユーザまたは組織を指定します。レジストリ・エントリの作成時に連絡先を追加することはできませんが、[詳細] パネルで [連絡先] のプラス記号を選択することによって連絡先を追加できます。[連絡先] には、以下のサブフィールドが含まれます。
-
[ID] — そのユーザまたは組織の、名前またはその他の ID を指定します。
-
[連絡先タイプ] — 連絡先がサービスの [作成者]、[コンシューマ]、[プロバイダ]、[オペレータ]、[マネージャ]、[スポンサ] のいずれであるかを指定します。
-
[ビジネス・パートナー] — ビジネス・パートナー・オブジェクトへのリンクを示します。このオブジェクトは、住所や電話番号などの連絡先情報を提供します。パブリック API はビジネス・パートナー名のみを示し、ビジネス・パートナー・オブジェクトからの連絡先情報は含みません。
-
[詳細] — 連絡先に関する詳細を指定します。例えば、電話番号、電子メール・アドレス、またはパブリック API からアクセス可能なその他の連絡先情報を入力できます。
-
[備考] — そのユーザまたは組織に関する補足情報を指定します。
連絡先を定義すると、[ID] を除くすべてのサブフィールドを更新できます。赤い X を選択することによって、連絡先を削除することもできます。
[ファイル]
[ファイル] は、レジストリ・エントリに任意のテキスト・ファイルまたはバイナリ・ファイルを格納する方法を表します。例えば、サービスに関する説明や、大きなサイズのスキーマ定義が含まれるファイルを格納できます。サービスの作成時にファイルを追加することはできませんが、[詳細] パネルで [ファイル] のプラス記号を選択することによってファイルを追加できます。ローカル・システムまたは InterSystems IRIS® サーバ上にあるファイルを追加できます。[ファイル] には、以下のサブフィールドが含まれます。
-
[ファイル名] — ファイルの名前を表します。レジストリ内のファイルの名前を、ローカル・ファイル・システムまたは InterSystems IRIS® サーバ上の元のファイルの名前と同じにする必要はありません。
-
[ファイル拡張子] — ファイルの形式と目的に関する情報を提供します。このフィールドは、ファイル名の最後の部分で設定されます。
-
[MIME タイプ] — ファイルにアクセスするために使用するアプリケーションに関する情報を提供します。
-
[文字エンコード] — 文字エンコーディングに関する情報を提供します。
-
[ファイル・サイズ] — ファイル・サイズを表します。このフィールドは、ファイルの内容から計算されます。
-
[コンテンツ] — ファイルの作成時に、このサブフィールドはファイルの内容に設定されます。
パブリック・サービス・レジストリの内部フィールド
以下に、内部属性を示します。これらはパブリック・サービス・レジストリでのみ使用されます。これらの内部属性には、管理ポータルを使用している管理者のみがアクセスできます。これらの属性には、サービス・レジストリからパブリック API を使用してアクセスすることはできません。
[パブリック]
このチェック・ボックスは、対象のサービスに関する情報をレジストリのパブリック API から取得できるかどうかを制御します。[パブリック] が真の場合 (ボックスにチェックが付いている場合)、[必要なロール] の設定に基づいてユーザが表示を許可されているなら、API は対象のサービスに関する情報を返します。[パブリック] が偽の場合、パブリック API から、対象のサービスに関する情報は何も返されません。
[必要なロール]
[必要なロール] は、レジストリ・エントリへのパブリック API アクセスを提供するロールのリストを指定します。ユーザがレジストリ・エントリに関する情報を取得するには、そのユーザには [必要なロール] のリストに含まれているいずれかのロールが必要です。ユーザは、InterSystems IRIS へのログインを通じて、あるいはロールを有した Web アプリケーションを通じて、指定のロールを取得します。これらのロールの定義方法の詳細は、“パブリック・サービス・レジストリに対するロールとユーザの定義” を参照してください。
[インスタンス]
[インスタンス] は、指定されたエンドポイントでサービスを提供している InterSystems IRIS インスタンスを特定します。通常、これは、ESB レジストリおよびサービス・レジストリに使用される InterSystems IRIS インスタンスです。ビジネス・サービスからエンドポイント・サービスが提供されていない場合、このフィールドは空白のままにします。
[ネームスペース]
[ネームスペース] は、指定されたエンドポイントでサービスを提供している相互運用対応ネームスペースを特定します。通常、これは、ESB レジストリおよびサービス・レジストリに使用される相互運用対応ネームスペースです。ビジネス・サービスからエンドポイント・サービスが提供されていない場合、このフィールドは空白のままにします。
[プロダクション]
[プロダクション] は、指定されたエンドポイントでサービスを提供しているプロダクションを特定します。通常、これは ESB プロダクションです。ビジネス・サービスからエンドポイント・サービスが提供されていない場合、このフィールドは空白のままにします。
[構成名]
[構成名] は、指定されたエンドポイントでサービスを提供しているプロダクション構成項目を特定します。通常、この構成項目は、ESB プロダクション内のビジネス・サービスです。ビジネス・サービスからエンドポイント・サービスが提供されていない場合、このフィールドは空白のままにします。
サービス・レジストリ・エントリの作成と保守管理
パブリック・サービス・レジストリまたは外部サービス・レジストリの新しいエントリを作成するには、[新しいサービス] を選択します。新しいサービス・エントリをパブリック・サービス・レジストリに作成する場合、InterSystems IRIS から以下の [サービスの登録] フォームが表示されます。
新しいサービス・エントリを外部サービス・レジストリに作成する場合、[内部情報] のフィールドと [表示] フィールドがない、同様のフォームが InterSystems IRIS から表示されます。
新しいサービス・エントリを作成する場合、必須フィールドである [名前]、[ドメイン]、および[バージョン] に値を入力してから、[保存] ボタンを押します。これら 3 つのフィールドの値は、レジストリ・エントリの保存後に変更することはできません。これらのフィールドに新しい値を入力したレジストリ・エントリのコピーを作成することができ、そのためには、対象のレジストリ・エントリを選択してから、[アクション] パネルの [名前を付けて保存] を選択します。
その他のプロパティについて、[サービスの登録] フォームで値を入力できます。
-
[サービス・プロトコル]
-
[ライフサイクルの状態]
-
[応答スタイル]
-
[エンドポイント]
-
[説明]
パブリック・サービス・レジストリのエントリを作成する場合、[内部情報] のフィールドにも値を入力できます。
-
[必要なロール]
-
[インスタンス]
-
[ネームスペース]
-
[プロダクション]
-
[構成名]
-
[表示]
レジストリ・エントリを保存したら、リストからそのレジストリ・エントリを選択し、[詳細] パネルを使用して、3 つの必須フィールド以外のこれらいずれかのフィールドを変更することができます。[詳細] パネルでは、以下のフィールドの入力または変更を行うこともできます。
-
[トピック]
-
[スキーマ]
-
[アクション]
-
[属性]
-
[連絡先]
-
[ファイル]
[アクション]、[属性]、[連絡先]、および [ファイル] フィールドは複数の値を取ります。新しい項目を追加するには、[アクション追加]、[属性追加]、[連絡先追加]、または [ファイル追加] のプラス記号を選択します。フォームに入力して、[適用] を選択します。既存の項目を更新するには、その項目のクリップボードを選択します。項目を削除するには、その項目の赤い X を選択します。
[アクション] パネルを使用すると、レジストリ・エントリの削除、以下の 1 つ以上の必須フィールドに変更を加えたコピーの保存を実行できます。[名前]、[ドメイン]、および [バージョン]。
サービス・レジストリの検索と表示
[次] ボタンと [前] ボタン、および検索パネルを使用して、レジストリ・エントリを表示できます。1 ページに収まらない数のレジストリ・エントリがある場合は、[次] ボタンと [前] ボタンを使用して、エントリ全体をスクロールできます。検索パネルでは、クエリに一致するレジストリ・エントリを検索できます。
検索パネルでは、以下の操作を実行できます。
-
[ページ・サイズ] を指定できます。ここには、1 ページに表示できるレジストリ・エントリの最大数を指定します。
-
名前、ドメイン、バージョン、サービス・プロトコル、ライフサイクルの段階、および最終更新日時で、レジストリ・エントリをソートできます。昇順 (デフォルト) または降順でソートできます。
-
以下のいずれかの条件を指定して、表示するレジストリ・エントリを選択できます。
-
[表示の変更] フィールドを使用して、サービスのリストに、特定の属性の値を表示することもできます。