構成¶
OData サービスの構成は、 <DENODO_HOME>/resources/apache-tomcat/webapps/denodo-odata4-service/WEB-INF/classes/configuration.properties
ファイルにあります。
このファイルでは、以下のプロパティを変更できます。
odataserver.address
: サービス名。たとえば、これを/odata-interface.svc
に変更すると、サービスにアクセスするための URL はhttp://localhost:9443/denodo-odata4-service/odata-interface.svc/<database name>/
になります。odataserver.serviceRoot
(オプション): サービスのルート URI。ゲートウェイを通じてサービスにアクセスする場合は、OData 応答に記述されるリンクでこの URI がルートとして使用されるように、このプロパティの値を設定します。たとえば、このプロパティの値をhttps://gw.denodo.com:9000/ODATA/
とすると、http://server001:9090/denodo-odata4-service/denodo-odata.svc/movies
に対するリクエストに対して、URLhttps://gw.denodo.com:9000/ODATA/denodo-odata.svc/movies
が記述された応答が返されます。server.pageSize
: リクエストあたりで返されるレコード数。詳細については、「 改ページ 」を参照してください。enable.adminUser
:false
の場合、ユーザーアカウントadmin
(他の管理者アカウントは除きます) からこのサービスにアクセスできません。この機能は、Basic 認証でのみ使用でき、Kerberos 認証や OAuth では使用できません。debug.enabled
:true
の場合、クエリパラメータ?odata-debug=json
を使用したリクエストに対する応答には、目的のデータのほか、デバッグ情報が追加されます。disable.basicAuthentication
: このサービスで HTTP の Basic 認証を無効にするにはtrue
に設定します。有効にするにはfalse
に設定します。disable.kerberosAuthentication
: このサービスで Kerberos 認証を無効にするにはtrue
に設定します。有効にするにはfalse
に設定します。enable.streaming
: エンティティコレクションストリーミング をサポートする場合はtrue
に設定し、無効にする場合はfalse
に設定します。デフォルト値はtrue
です。このサービスで Kerberos 認証を有効にするには、まず Denodo サーバーで Kerberos 認証を有効にする必要があります。その手順については「 Kerberos 認証 」を参照してください。
disable.oauth2Authentication
: このサービスで OAuth 2.0 認証を無効にするにはtrue
に設定します。このサービスで OAuth 認証を有効にするには、まず Denodo サーバーで OAuth 認証を有効にする必要があります。その手順については「 OAuth 認証 」を参照してください。
このサービスの認証メカニズムを有効または無効にする場合、少なくとも 1 つの認証メカニズムを有効にした状態を維持する必要があります。
このファイルの変更を有効にするには、Virtual DataPort サーバーを再起動します。
OData サービスでの Kerberos 認証の有効化¶
OData サービスは、Kerberos プロトコルを使用したシングルサインオンをサポートしています。このサポートを有効にするには以下の手順に従います。
『インストールガイド』の「 Kerberos 認証の設定 」で説明されているインストール後のタスクを実行します。
管理ガイドの「 Virtual DataPort サーバーでの Kerberos 認証の設定 」の説明に従って、Virtual DataPort サーバーで Kerberos を有効にします。
<DENODO_HOME>/resources/apache-tomcat/webapps/denodo-odata4-service/WEB-INF/classes/configuration.properties
ファイルでdisable.kerberosAuthentication
プロパティをfalse
に設定します。
重要
Denodo OData 4.0 サービスにアクセスするには、Virtual DataPort サーバーで構成したサーバープリンシパル名の完全修飾ドメイン名を使用します。たとえば、サーバープリンシパル名が HTTP/denodo-prod.subnet1.contoso.com@CONTOSO.COM
である場合、 http://denodo-prod.subnet1.contoso.com:9090/denodo-odata4-service/denodo-odata.svc
または https://denodo-prod.subnet1.contoso.com:9443/denodo-odata4-service/denodo-odata.svc
の URL で Denodo OData 4.0 サービスにアクセスする必要があります。
オリジン間リソース共有 (CORS) の有効化¶
このサービスは、オリジン間リソース共有 (CORS) をサポートしています。CORS の詳細については、「 オリジン間リソース共有 (CORS) 」 (公開されている REST Web サービスの設定) を参照してください。
OData サービスで CORS サポートを有効にするには以下の手順に従います。
「 CORS の初期設定 」の手順に従って設定を行います (CORS が有効な状態で Denodo REST Web サービスを公開している場合は、実施済みです)。
この Denodo インストール環境のサーバーを起動する前に、
<DENODO_HOME>/resources/apache-tomcat/webapps/denodo-odata4-service/WEB-INF/web.xml
ファイルを編集し、次の記述をファイルの 先頭に 追加します。<!DOCTYPE doc [ <!ENTITY cors_settings SYSTEM "cors_settings.xml"> ]>
ファイルは以下のようになります。
<!DOCTYPE doc [ <!ENTITY cors_settings SYSTEM "cors_settings.xml"> ]> <web-app ...
以下のように Filters セクションに参照を追加します。
<!-- ******************* --> <!-- Filters --> <!-- ******************* --> &cors_settings;
<DENODO_HOME>/resources/apache-tomcat/webapps/denodo-odata4-service/WEB-INF/
フォルダのcors_settings.xml
ファイルを編集します。ファイルの内容のコメント指定を解除します。
デフォルトでは、
cors.allowed.origins
プロパティの値は * です。この場合は、あらゆるドメインから受け取った CORS リクエストがこのサービスで許可されます。許可する CORS リクエストの送信元ドメインを制限するには、このプロパティの値 * を、許可する URL のリストに置き換えます (各 URL はカンマで区切ります)。
たとえば、
https://foo.com, http://foo.com, https://foo.bar.com
と指定します。他の生成元からの CORS リクエストは、HTTP コード 403 (Forbidden) で拒否されます。
重要
URL ごとに、そのプロトコルも入力します。プロトコルが含まれていない URL は無効です。たとえば、foo.com は無効です。
Virtual DataPort サーバーを再起動して変更を適用します。