クロスオリジン・リソース共有 (CORS) の構成
別のオリジンの Web アプリケーションが Domino Web サーバー上のリソースにアクセスできるように、クロスオリジン・リソース共有 (CORS) を構成します。
このタスクについて
セキュリティー上の理由から、ほとんどのブラウザは同一オリジンのポリシー・ルールに準拠しています。このルールは、あるオリジンから読み込まれた Web ページが、別のサーバー (またはオリジン) のリソースにアクセスすることを制限します。CORS では、同一オリジンのポリシーに対する例外を定義できます。ほとんどのブラウザは CORS をサポートしています。
注
- CORS は、Domino 10.0.1 Fix Pack 2 でサポートされています。
- CORS は、Windows、Linux、IBM AIX でサポートされています。IBM i ではサポートされていません。
たとえば、サーバー A (Apache サーバー) から読み込まれた Web アプリケーションが、サーバー B (Domino サーバー) に REST API 要求を行うとします。サーバー B で CORS を構成して、サーバー A から読み込まれた Web ページがサーバー B に REST API 要求を行えるようにします。
CORS は、Domino アクセス・サービス (DAS) API および Domino でホストされているその他の種類の REST API で動作します。実際、CORS はあらゆる種類の Domino HTTP リソースで機能します。
Domino サーバーで CORS を構成するには、以下の手順を実行します。
手順
-
To enable CORS:
- If not using internet sites, enable CORS in the Server document of the Domino server:
- Domino ディレクトリーで、サーバー・ドキュメントを開きます。
- タブを選択します。
- DSAPI セクションで、[DSAPI フィルターファイル名] フィールドに次の値を追加します。
- (Windows) ncorsext
- (その他のすべてのプラットフォーム) corsext
- If using internet sites, enable CORS in the Internet site document for sites on which it is wanted:
- Open the Internet site document, then select the configuration tab.
- DSAPI セクションで、[DSAPI フィルターファイル名] フィールドに次の値を追加します。
- (Windows) ncorsext
- (その他のすべてのプラットフォーム) corsext
- If not using internet sites, enable CORS in the Server document of the Domino server:
-
Domino サーバーにアクセスできるオリジンを定義する JSON ファイルを作成します。
Note: If you enabled CORS through an Internet site document, complete this step and the next one on each server that is associated with the Web site.
- サーバーの ...Domino\data\domino フォルダーに新規フォルダー cors を作成します。
- cors フォルダに新規ファイル cors-rules.json を作成します。
- cors-rules.json で、Domino サーバーがアクセスできるオリジンを定義します。 For details, see CORS JSON configuration.
-
HTTP サーバーのタスクを停止してから、再始動します。
tell http quit load http
結果
HTTP サーバーの起動時の次のメッセージは、CORS が正しく構成されていることを示します。
HTTP Server:DSAPI CORS フィルタが正常に読み込まれました
HTTP サーバーの起動時の次のメッセージは、CORS 構成に問題があることを示します。
HTTP Server:DSAPI モジュールの ncorsext を読み込めませんでした