REST サービスの保護
REST サービスで機密データにアクセスする場合、サービスに認証を使用する必要があります。それぞれのユーザに異なるレベルのアクセス権を付与する必要がある場合は、エンドポイントに必要な特権も指定します。
ここでは、"REST サービスの作成と編集" の手順に従って REST サービス・クラスを生成済みであることを前提としています。
REST サービスの認証の設定
InterSystems IRIS データ・プラットフォームの REST サービスでは、以下のいずれかの認証形式を使用できます。
-
HTTP 認証ヘッダ — REST サービスにはこの認証形式を使用することをお勧めします。
-
Web セッション認証 — URL で疑問符に続けてユーザ名とパスワードを指定します。
-
OAuth 2.0 認証 — 次のサブセクションを参照してください。
REST アプリケーションおよび OAuth 2.0
OAuth 2.0 を使用して REST アプリケーションを認証するには、以下の作業をすべて行います。
-
REST アプリケーションを含むリソース・サーバを、OAuth 2.0 リソース・サーバとして構成します。
-
%Service_WebGateway の代行認証を許可します。
-
代行認証を使用するように Web アプリケーション (REST アプリケーション用) が構成されていることを確認します。
-
%SYS ネームスペースで ZAUTHENTICATE という名前のルーチンを作成します。インターシステムズが提供するサンプル・ルーチン REST.ZAUTHENTICATE.mac をコピーして変更することができます。このルーチンは GitHub の Samples-Security サンプルに含まれています (https://github.com/intersystems/Samples-SecurityOpens in a new tab)。"InterSystems IRIS で使用するサンプルのダウンロード" で説明されているようにサンプル全体をダウンロードすることもできますが、単に GitHub でルーチンを開いて、その内容をコピーするほうが簡単です。
ルーチンで、applicationName の値を変更し、必要に応じてその他の変更を加えます。
"Web クライアントの代行認証の定義 (オプション)" も参照してください。
HealthShare® で認証を使用している場合は、インターシステムズが提供する ZAUTHENTICATE ルーチンOpens in a new tabを使用する必要があります。独自のルーチンは作成できません。