3.3.2.1 サービスレベルのセキュリティ設定の構成

インスタンス管理者は、「インスタンスの管理」、「セキュリティ」、「セキュリティ設定」でサービスレベルのセキュリティ設定を構成できます。

ノート:

開発環境のセキュリティとパフォーマンスを確保するために、この機能はOracle Cloudで実行されているApplication Expressインスタンスでは使用できません。

サービスレベルのセキュリティ設定には、ログイン制御の構成、ファイル・アップロード機能の制御、IPアドレスによるアクセスの制限、インスタンスに対するプロキシ・サーバーの構成、セッションIDを含むURLに対するサポートの制御、Oracle Application Expressで未処理のエラーを表示する方法などが含まれます。

3.3.2.1.1 ワークスペースCookieの制御

Application Expressが永続Cookieをブラウザに保存するかどうかを決定します

Application Expressでは、次の永続Cookieが使用されます。

  • ORA_WWV_REMEMBER_UN - 開発環境ログイン・ページでは、ワークスペースおよびユーザー名のデータがこのCookieに格納されます。これは、再度ログインする際に、これらの属性にデフォルト値を移入するために使用されます。

  • LOGIN_USERNAME_COOKIE - 顧客アプリケーション・ログイン・ページでは、このCookieを使用してユーザー名が格納されます。これは、顧客が再度ログインする際に、属性にデフォルト値を移入するために使用されます。

  • ORA_WWV_REMEMBER_LANG - 開発環境およびWebシートで言語選択を使用するときに、Application Expressでは言語および地域がこのCookieに格納されます。アプリケーションが次に使用されるときに、選択した言語で自動的にアプリケーションを表示するために使用されます。

システムでCookieをすでに受信している場合、ブラウザ・ツールまたはシステム・ユーティリティを使用してこれをディスクの永続位置から物理的に削除できます。

永続Cookieを保存するようにApplication Expressを構成するには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「ワークスペースCookieの設定」で、次のいずれかを選択します。
    • はい - Application Expressで永続Cookieをブラウザに保存できます。

    • いいえ - このCookieが送信されないようにします。
  6. 「変更の適用」をクリックします。

3.3.2.1.2 Oracle Application Express管理サービスへのアクセスの無効化

ユーザーはOracle Application Express管理サービスにログインできなくなります。

インスタンス管理者は、ユーザーがOracle Application Express管理サービスにログインするのを防ぐことができます。管理者によるログイン本番環境を無効にすると、権限のないユーザーによるApplication Express管理サービスへのアクセスおよび他のユーザー・ログイン資格証明の破損を防止できます。

Oracle Application Express管理サービスへのユーザー・アクセスを無効にするには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「管理者ログインの無効化」で「はい」を選択します。

    ノート:

    「はい」を選択してサイン・アウトすると、Oracle Application Express管理サービスに他のユーザーがアクセスできなくなります。

  6. 「変更の適用」をクリックします。

3.3.2.1.3 Oracle Application Express管理サービスへのアクセスの有効化

Oracle Application Express管理サービスへのアクセスが無効になっている場合、インスタンス管理者は次のSQL文を実行して再び有効にできます。

無効になっている場合に、Oracle Application Express管理サービスへのユーザー・アクセスを許可するには:

  1. SQL*Plusに接続し、SYSとしてOracle Application Expressがインストールされているデータベースに接続します。次に例を示します。
    • Windowsの場合:

      SYSTEM_DRIVE:\ sqlplus /nolog
      SQL> CONNECT SYS as SYSDBA
      Enter password: SYS_password
      
    • UNIXおよびLinuxの場合:

      $ sqlplus /nolog
      SQL> CONNECT SYS as SYSDBA
      Enter password: SYS_password
      
  2. 次の文を実行します。
    ALTER SESSION SET CURRENT_SCHEMA = APEX_200200;
    
  3. 次の文を実行します。
    BEGIN
      APEX_INSTANCE_ADMIN.SET_PARAMETER('DISABLE_ADMIN_LOGIN', 'N');
      commit;
    END;
    /
    

3.3.2.1.4 ワークスペース・ログイン・アクセスの無効化

ワークスペース・ログインを無効化して、Application Expressへのユーザー・アクセスを制限します。本番環境でワークスペース・ログインを無効にすると、ユーザーはアプリケーション・ビルダーなどのApplication Expressアプリケーションを実行できなくなります。

内部ワークスペースへのユーザー・アクセスを無効にするには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「ワークスペース・ログインの無効化」で「はい」を選択します。

    「はい」を選択すると、ランタイムのみの環境が効果的に設定されますが、インスタンス管理者は引き続き管理サービスにサインインできます。本番環境で「はい」を選択すると、開発者はアプリケーションまたはデータを変更できなくなります。

  6. 「変更の適用」をクリックします。

3.3.2.1.5 パブリック・ファイルのアップロードの制御

「パブリック・ファイルのアップロードを許可」属性を使用して、認証されていないユーザーがファイルのアップロード制御を提供するアプリケーションでファイルをアップロードできるかどうかを制御します。

ファイルのアップロードを制御するには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「パブリック・ファイルのアップロードを許可」で、次のいずれかを選択します。
    • はい: 認証されていないユーザーがファイルのアップロード制御を提供するアプリケーションでファイルをアップロードできるようにします。

    • いいえ - 認証されていないユーザーがファイルのアップロード制御を提供するアプリケーションでファイルをアップロードできないようにします。

  6. 「変更の適用」をクリックします。

3.3.2.1.6 IPアドレスによるユーザー・アクセスの制限

使用可能なIPアドレスのカンマ区切りのリストを指定して、Oracle Application Expressインスタンスへのユーザー・アクセスを制限します。

IPアドレスでユーザー・アクセスを制限するには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「管理者ログインの無効化」で、「いいえ」を選択します。
  6. 「IPアドレス別にアクセスを制限」に、カンマで区切られた使用可能なIPアドレスのリストを入力します。ワイルドカードを指定するには、アスタリスク(*)を使用します。

    1つから4つのレベルのIPアドレスを入力できます。次に例を示します。

    141, 141.* ...
    192.128.23.1 ...
    

    ノート:

    ワイルドカードを使用する場合は、ワイルドカードの後ろに数値を追加して入力しないでください。たとえば、138.*.41.2などです。

  7. 「変更の適用」をクリックします。

3.3.2.1.7 インスタンスに対するプロキシ・サーバーの構成

すべてのアウトバウンドHTTPトラフィックにプロキシを使用するようにOracle Application Expressインスタンス全体を構成します。

インスタンス・レベルでのプロキシの設定は、アプリケーション・レベルまたはWebサービス参照で定義されているすべてのプロキシより優先されます。プロキシが指定されている場合、URLタイプのリージョン、Webサービスおよびレポート出力で、そのプロキシが使用されます。

Oracle Application Expressインスタンスに対してプロキシを構成するには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「インスタンス・プロキシ」で、インスタンス全体で使用するプロキシのアドレスとポートを入力します。「プロキシなしドメイン」で、プロキシ・サーバーを使用しないドメインのリストを入力します。
  6. 「変更の適用」をクリックします。

3.3.2.1.8 チェックサム・ハッシュ関数の選択

Application Expressがチェックサムに一方向のハッシュ文字列を生成するときに使用するハッシュ関数を選択します。

「チェックサム・ハッシュ関数」属性を使用すると、最近の開発に対応して、新しい調査に基づいてアルゴリズムを切り替えることができます。「チェックサム・ハッシュ関数」属性を使用して、Oracle Application Expressがチェックサムに一方向のハッシュ文字列を生成するときに使用するハッシュ関数を選択します。この属性は、新しいアプリケーションでセキュリティ・ブックマーク・ハッシュ関数属性のデフォルト値にもなります。アプリケーションは、ブックマークのURLを定義するときにブックマーク・ハッシュ関数を使用します。

ヒント:

チェックサム・ハッシュ関数を変更しても、エンド・ユーザーが保存した既存のすべてのブックマークが無効になるため既存のアプリケーションに現在定義されているブックマーク・ハッシュ関数は変更されません。既存のアプリケーションに移動し、既存のブックマークを期限切れにしてから、ブックマーク・ハッシュ関数をチェックサム・ハッシュ関数に定義した値と同じ値に更新することをお薦めします。

チェックサム・ハッシュ関数を選択するには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「チェックサム・ハッシュ関数」で、Application Expressがチェックサムに一方向のハッシュ文字列を生成するときに使用するハッシュ関数を選択します。

    Oracle Database 12c以降でサポートされているのは、SHA-2アルゴリズムのみです。「最もセキュア」では、使用できる最も安全なアルゴリズムが自動的に選択されます。したがって、これが推奨の設定です。Oracle Database 12c以降では、これはSHA-2、512ビットに評価され、Oracle Database 11gではSHA-1が最もセキュアなアルゴリズムです。MD5アルゴリズムは非推奨となったため、この設定は推奨されません。

  6. 「変更の適用」をクリックします。

3.3.2.1.9 インスタンスへのセッション再結合の構成

このアプリケーション内のURLにセッションIDを含めるかどうかを、アプリケーションレベルで制御します。

「セッションを再結合」属性を構成すると、インスタンス管理者はセッションIDを含むURLをOracle Application Expressでサポートするかどうかを制御できます。セッションの再結合を有効にすると、URLにセッションIDが含まれていない場合、Oracle Application Expressはセッションcookieを使用して既存のセッションを結合しようとします。

セッション再結合をアプリケーションまたはページレベルで使用するには、管理者がセッション再結合をインスタンスレベルで有効化する必要があります。インスタンスレベルで指定したより制限的な設定は、アプリケーションおよびページの設定をオーバーライドします。

警告:

セキュリティ上の理由から、「ホスト名の許可」属性を構成してワークスペース分離を実装していないかぎり、管理者がセッション結合のサポートを無効にすることをお薦めします。ブラウザ攻撃を防ぐためのワークスペースの分離およびインスタンスのすべてのワークスペースの分離を参照してください。

注意:

セッションの再結合を有効にすると、攻撃者が既存のエンド・ユーザー・セッションを乗っ取ることが可能になることで、アプリケーションのセキュリティが侵害される可能性があります。詳細は、Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドセッション再結合の概要を参照してください。

「セッションを再結合」を構成するには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「セッションを再結合」から、次のオプションを選択します。
    • 無効 - URLにセッションIDが含まれていない場合、Oracle Application Expressは新しいセッションを作成します。
    • パブリック・セッションに対して有効 - URLがパブリック・ページのもので、セッションIDが含まれていない場合、Application Expressはそのアプリケーションに対して確立された既存のセッションCookieの利用を試みます。パブリック・ページと認証済ページの両方を持つアプリケーションの場合、エンド・ユーザーの認証後にセッションIDが定義されます。Application Expressは、セッションがまだ認証されていない場合にのみCookieを使用して結合します。
    • すべてのセッションに対して有効 - URLにセッションIDが含まれていない場合、次のいずれかの条件が満たされていれば、Oracle Application Expressはそのアプリケーションで設定されている既存のセッションCookieを使用しようとします。
      • セッション・ステート保護がそのアプリケーションに対して有効で、URLに有効なチェックサムが含まれています。パブリック・ブックマークの場合、最も制限的なアイテム・レベルの保護は「制限なし」または「チェックサムが必要 - アプリケーション・レベル」である必要があります。

      • URLにペイロードは含まれていません(リクエスト・パラメータ、クリア・キャッシュまたはデータ値ペア)。この設定には、アプリケーションで「フレームへの埋込み」が「同じ起点から許可」、または「拒否」に設定されている必要があります。

      「すべてのセッションに対して有効」には、「フレームへの埋込み」「同じ起点から許可」または「拒否」に設定されている必要があります。これはURLペイロードの条件に関連付けられませんが、セッション・ステート保護されるURLにも適用されます。

  6. 「変更の適用」をクリックします。

参照:

3.3.2.1.10 未処理のエラーの構成

Oracle Application Expressで未処理のエラーをどのように表示するかを制御します

Oracle Application Expressが処理中に未処理のエラーを確認した場合、アプリケーションのエンド・ユーザーに対してエラー・ページが表示されます。セキュリティ上の観点からは、これらのメッセージとエラー・コードはエンド・ユーザーに表示せず、HTTP 400(不正リクエスト)エラー・コードをクライアント・ブラウザに返すのみにすることをお薦めします。

未処理のエラーを構成するには:

  1. Oracle Application Express管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「セキュリティ」セクションに移動します。
  5. 「未処理エラー」で、次のいずれかのオプションを選択します。
    • エラー・ページを表示 - これがデフォルトの動作です。アプリケーションのエラー処理によって処理されないエラーまたは例外がある場合には、特定のエラーとエラー・コードでエンド・ユーザーにエラー・ページが表示されます。

    • HTTP 400を返す - Application Expressエンジンが未処理のエラーを確認したとき、エンド・ユーザーのクライアント・ブラウザにHTTP 400ステータスを返します。

  6. 「変更の適用」をクリックします。