クロスオリジン・リソース共有 (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 を構成するには、以下の手順を実行します。

手順

  1. Domino サーバーのサーバー・ドキュメントで CORS を有効にします。
    注: または、Web サイトのドキュメントで CORS を有効にします ([構成] タブ)。
    1. Domino ディレクトリーで、サーバー・ドキュメントを開きます。(インターネット・サイトのドキュメントを使用した構成はサポートされていません)。
    2. [インターネット・プロトコル] > [HTTP] タブを選択します。
    3. DSAPI セクションで、[DSAPI フィルターファイル名] フィールドに次の値を追加します。
      • (Windows) ncorsext
      • (その他のすべてのプラットフォーム) corsext
  2. Domino サーバーにアクセスできるオリジンを定義する JSON ファイルを作成します。
    注: Web サイトのドキュメントを介して CORS を有効にした場合は、Web サイトに関連付けられている各サーバーでこの手順と次の手順を実行します。
    1. サーバーの ...Domino\data\domino フォルダーに新規フォルダー cors を作成します。
    2. cors フォルダに新規ファイル cors-rules.json を作成します。
    3. cors-rules.json で、Domino サーバーがアクセスできるオリジンを定義します。詳しくは、CORS JSON 設定を参照してください。
  3. HTTP サーバーのタスクを停止してから、再始動します。
    tell http quit 
    load http  

タスクの結果

HTTP サーバーの起動時の次のメッセージは、CORS が正しく構成されていることを示します。
HTTP Server:DSAPI CORS フィルタが正常に読み込まれました
HTTP サーバーの起動時の次のメッセージは、CORS 構成に問題があることを示します。
HTTP Server:DSAPI モジュールの ncorsext を読み込めませんでした