3.4.1 サービスレベルのセキュリティ設定の構成
インスタンス管理者は、「インスタンスの管理」、「セキュリティ」、「セキュリティ設定」でサービスレベルのセキュリティ設定を構成できます。
ノート:
開発環境のセキュリティとパフォーマンスを確保するために、一部の管理機能はOracle Cloudで実行されているOracle APEXインスタンスでは使用できません。- ワークスペースCookieの制御
Application Expressが永続Cookieをブラウザに保存するかどうかを決定します - 管理サービスへのアクセスの無効化
ユーザーがOracle APEX管理サービスにログインできないようにします - 管理サービスへのアクセスの有効化
管理サービスへのアクセスが無効になっている場合、インスタンス管理者は次のSQL文を実行して再び有効にできます。 - ワークスペース・ログイン・アクセスの無効化
ワークスペース・ログインを無効化して、Application Expressへのユーザー・アクセスを制限します。本番環境でワークスペース・ログインを無効にすると、ユーザーはアプリケーション・ビルダーなどのApplication Expressアプリケーションを実行できなくなります。 - パブリック・ファイルのアップロードの制御
「パブリック・ファイルのアップロードを許可」属性を使用して、認証されていないユーザーがファイルのアップロード制御を提供するアプリケーションでファイルをアップロードできるかどうかを制御します。 - IPアドレスによるユーザー・アクセスの制限
使用可能なIPアドレスのカンマ区切りのリストを指定することで、Oracle Application Express開発環境および管理サービスへのユーザー・アクセスを制限します。 - インスタンスに対するプロキシ・サーバーの構成
すべてのアウトバウンドHTTPトラフィックにプロキシを使用するようにOracle APEXインスタンス全体を構成します。 - チェックサム・ハッシュ関数の選択
Application Expressがチェックサムに一方向のハッシュ文字列を生成するときに使用するハッシュ関数を選択します。 - インスタンスへのセッション再結合の構成
このアプリケーション内のURLにセッションIDを含めるかどうかを、アプリケーションレベルで制御します。 - 未処理のエラーの構成
Oracle APEXで未処理のエラーをどのように表示するかを制御します
親トピック: セキュリティの構成
3.4.1.1 ワークスペースCookieの制御
Application Expressが永続Cookieをブラウザに保存するかどうかを決定します
Application Expressでは、次の永続Cookieが使用されます。
-
ORA_WWV_REMEMBER_UN
- 開発環境ログイン・ページでは、ワークスペースおよびユーザー名のデータがこのCookieに格納されます。これは、再度ログインする際に、これらの属性にデフォルト値を移入するために使用されます。 -
LOGIN_USERNAME_COOKIE
- 顧客アプリケーション・ログイン・ページでは、このCookieを使用してユーザー名が格納されます。これは、顧客が再度ログインする際に、属性にデフォルト値を移入するために使用されます。 -
ORA_WWV_REMEMBER_LANG
- 開発環境で言語選択を使用するときに、Application Expressでは言語および地域がこのCookieに格納されます。アプリケーションが次に使用されるときに、選択した言語で自動的にアプリケーションを表示するために使用されます。
システムでCookieをすでに受信している場合、ブラウザ・ツールまたはシステム・ユーティリティを使用してこれをディスクの永続位置から物理的に削除できます。
永続Cookieを保存するようにApplication Expressを構成するには:
- Oracle Application Express管理サービスにサインインします。
- 「インスタンスの管理」をクリックします。
- 「インスタンスの設定」で、「セキュリティ」をクリックします。
- 「セキュリティ」セクションに移動します。
- 「ワークスペースCookieの設定」で、次のいずれかを選択します。
-
はい - Application Expressで永続Cookieをブラウザに保存できます。
- いいえ - このCookieが送信されないようにします。
-
- 「変更の適用」をクリックします。
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.2 管理サービスへのアクセスの無効化
ユーザーがOracle APEX管理サービスにログインできなくなります。
インスタンス管理者は、ユーザーが管理サービスにログインできないようにすることができます。本番環境で管理者によるログインを無効にすると、権限のないユーザーが管理サービスにアクセスしたり、他のユーザーのログイン資格証明が危険にさらされたりするのを防ぐことができます。
管理サービスへのユーザー・アクセスを無効にするには:
参照:
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.3 管理サービスへのアクセスの有効化
管理サービスへのアクセスが無効になっている場合、インスタンス管理者が次のSQL文を実行して再び有効にできます。
管理サービスが無効になっている場合に、そのサービスへのユーザー・アクセスを有効にするには:
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.4 ワークスペース・ログイン・アクセスの無効化
ワークスペース・ログインを無効化して、Application Expressへのユーザー・アクセスを制限します。本番環境でワークスペース・ログインを無効にすると、ユーザーはアプリケーション・ビルダーなどのApplication Expressアプリケーションを実行できなくなります。
内部ワークスペースへのユーザー・アクセスを無効にするには:
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.5 パブリック・ファイルのアップロードの制御
「パブリック・ファイルのアップロードを許可」属性を使用して、認証されていないユーザーがファイルのアップロード制御を提供するアプリケーションでファイルをアップロードできるかどうかを制御します。
ファイルのアップロードを制御するには:
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.6 IPアドレスによるユーザー・アクセスの制限
使用可能なIPアドレスのカンマ区切りのリストを指定することで、Oracle Application Express開発環境および管理サービスへのユーザー・アクセスを制限します。
IPアドレスでユーザー・アクセスを制限するには:
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.7 インスタンスに対するプロキシ・サーバーの構成
すべてのアウトバウンドHTTPトラフィックにプロキシを使用するようにOracle APEXインスタンス全体を構成します。
ノート:
開発環境のセキュリティとパフォーマンスを確保するために、この機能は、Oracle Cloudで実行されているOracle APEXインスタンスでは使用できません。インスタンス・レベルでのプロキシの設定は、アプリケーション・レベルまたはWebサービス参照で定義されているすべてのプロキシより優先されます。プロキシが指定されている場合、URLタイプのリージョン、Webサービスおよびレポート出力で、そのプロキシが使用されます。
Oracle APEXインスタンスに対してプロキシを構成するには:
- 管理サービスにサインインします。
- 「インスタンスの管理」をクリックします。
- 「インスタンスの設定」で、「セキュリティ」をクリックします。
- 「セキュリティ」セクションに移動します。
- 「インスタンス・プロキシ」で、インスタンス全体で使用するプロキシのアドレスとポートを入力します。「プロキシなしドメイン」で、プロキシ・サーバーを使用しないドメインのリストを入力します。
- 「変更の適用」をクリックします。
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.8 チェックサム・ハッシュ関数の選択
Application Expressがチェックサムに一方向のハッシュ文字列を生成するときに使用するハッシュ関数を選択します。
「チェックサム・ハッシュ関数」属性を使用すると、最近の開発に対応して、新しい調査に基づいてアルゴリズムを切り替えることができます。「チェックサム・ハッシュ関数」属性を使用して、Oracle Application Expressがチェックサムに一方向のハッシュ文字列を生成するときに使用するハッシュ関数を選択します。この属性は、新しいアプリケーションでセキュリティ・ブックマーク・ハッシュ関数属性のデフォルト値にもなります。アプリケーションは、ブックマークのURLを定義するときにブックマーク・ハッシュ関数を使用します。
ヒント:
チェックサム・ハッシュ関数を変更しても、エンド・ユーザーが保存した既存のすべてのブックマークが無効になるため既存のアプリケーションに現在定義されているブックマーク・ハッシュ関数は変更されません。既存のアプリケーションに移動し、既存のブックマークを期限切れにしてから、ブックマーク・ハッシュ関数をチェックサム・ハッシュ関数に定義した値と同じ値に更新することをお薦めします。
チェックサム・ハッシュ関数を選択するには:
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.9 インスタンスへのセッション再結合の構成
このアプリケーション内のURLにセッションIDを含めるかどうかを、アプリケーションレベルで制御します。
「セッションを再結合」属性を構成すると、インスタンス管理者はセッションIDを含むURLをOracle Application Expressでサポートするかどうかを制御できます。セッションの再結合を有効にすると、URLにセッションIDが含まれていない場合、Oracle Application Expressはセッションcookieを使用して既存のセッションを結合しようとします。
セッション再結合をアプリケーションまたはページレベルで使用するには、管理者がセッション再結合をインスタンスレベルで有効化する必要があります。インスタンスレベルで指定したより制限的な設定は、アプリケーションおよびページの設定をオーバーライドします。
警告:
セキュリティ上の理由から、「ホスト名の許可」属性を構成してワークスペース分離を実装していないかぎり、管理者がセッション結合のサポートを無効にすることをお薦めします。ブラウザ攻撃を防ぐためのワークスペースの分離およびインスタンスのすべてのワークスペースの分離を参照してください。
ノート:
セッションの再結合を有効にすると、攻撃者が既存のエンド・ユーザー・セッションを乗っ取ることが可能になることで、アプリケーションのセキュリティが侵害される可能性があります。さらに学習するには、Oracle APEXアプリケーション・ビルダー・ユーザーズ・ガイドのセッション再結合の概要を参照してください。
「セッションを再結合」を構成するには:
- Oracle Application Express管理サービスにサインインします。
- 「インスタンスの管理」をクリックします。
- 「インスタンスの設定」で、「セキュリティ」をクリックします。
- 「セキュリティ」セクションに移動します。
- 「セッションを再結合」から、次のオプションを選択します。
- 無効 - URLにセッションIDが含まれていない場合、Oracle Application Expressは新しいセッションを作成します。
- パブリック・セッションに対して有効 - URLがパブリック・ページのもので、セッションIDが含まれていない場合、Application Expressはそのアプリケーションに対して確立された既存のセッションCookieの利用を試みます。パブリック・ページと認証済ページの両方を持つアプリケーションの場合、エンド・ユーザーの認証後にセッションIDが定義されます。Application Expressは、セッションがまだ認証されていない場合にのみCookieを使用して結合します。
- すべてのセッションに対して有効 - URLにセッションIDが含まれていない場合、次のいずれかの条件が満たされていれば、Oracle Application Expressはそのアプリケーションで設定されている既存のセッションCookieを使用しようとします。
-
セッション・ステート保護がそのアプリケーションに対して有効で、URLに有効なチェックサムが含まれています。パブリック・ブックマークの場合、最も制限的なアイテム・レベルの保護は「制限なし」または「チェックサムが必要 - アプリケーション・レベル」である必要があります。
-
URLにペイロードは含まれていません(リクエスト・パラメータ、クリア・キャッシュまたはデータ値ペア)。この設定には、アプリケーションで「フレームへの埋込み」が「同じ起点から許可」、または「拒否」に設定されている必要があります。
「すべてのセッションに対して有効」には、「フレームへの埋込み」が「同じ起点から許可」または「拒否」に設定されている必要があります。これはURLペイロードの条件に関連付けられませんが、セッション・ステート保護されるURLにも適用されます。
-
- 「変更の適用」をクリックします。
参照:
-
Oracle APEXアプリケーション・ビルダー・ユーザーズ・ガイドのページに対するセッション再結合の構成
-
アプリケーション・レベルの再結合セッションを構成する方法を学習するには、Oracle APEXアプリケーション・ビルダー・ユーザーズ・ガイドのセッション管理
親トピック: サービスレベルのセキュリティ設定の構成
3.4.1.10 未処理のエラーの構成
Oracle APEXで未処理のエラーをどのように表示するかを制御します
ノート:
開発環境のセキュリティとパフォーマンスを確保するために、この機能は、Oracle Cloudで実行されているOracle APEXインスタンスでは使用できません。Oracle APEXが処理中に未処理のエラーを確認した場合、アプリケーションのエンド・ユーザーに対してエラー・ページが表示されます。セキュリティ上の観点からは、これらのメッセージとエラー・コードはエンド・ユーザーに表示せず、HTTP 400(不正リクエスト)エラー・コードをクライアント・ブラウザに返すのみにすることをお薦めします。
未処理のエラーを構成するには:
親トピック: サービスレベルのセキュリティ設定の構成