ヘッダーをスキップ
Oracle® Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド
リリース 4.1
B66450-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

アプリケーション属性について

アプリケーション属性は、アプリケーション全体に適用されます。アプリケーションを作成した後、アプリケーション属性を確認し、必要に応じて更新します。

内容は次のとおりです。


関連項目:

サポートするオブジェクト・ユーティリティを使用したパッケージ・アプリケーションの作成方法の詳細は、「パッケージ・アプリケーションの作成方法」を参照してください。

アプリケーション定義の編集

アプリケーションの編集ページの属性を使用して、アプリケーションの名前と可用性の編集、および静的置換文字列の定義を行うことができます。また、アプリケーションの編集ページには、定義済のビルド・オプション、関連するテーマ、テンプレートのデフォルト、およびコンポーネントのデフォルト値が表示されます。必須の値には赤いアスタリスク(*)が付いています。

内容は次のとおりです。

Edit Definitionページへのアクセス

アプリケーション定義を編集するには、次のステップを実行します。

  1. 「ワークスペース」ホームページで、「アプリケーション・ビルダー」アイコンをクリックします。

  2. アプリケーションを選択します。

  3. アプリケーション名の右側にある「アプリケーション・プロパティの編集」ボタンをクリックします。

    図bldr_hm_top.gifの説明が続きます
    図bldr_hm_top.gifの説明

    アプリケーションの編集ページが表示されます。

ナビゲーションの選択肢について

アプリケーションの編集ページは、「名前」、「プロパティ」、「可用性」、「エラー処理」、「グローバル通知」、「置換」、「ロゴ」、「ビルド・オプション」、「テーマ」、「テンプレートのデフォルト」および「コンポーネントのデフォルト値」の各セクションから構成されます。これらのセクションにはページをスクロール・ダウンするか、ページ上部のナビゲーション・ボタンをクリックすることでアクセスできます。

図app_attribute_tabs.gifの説明が続きます
図app_attribute_tabs.gifの説明

ページ上部のボタンを選択すると、選択されたセクションが表示され、その他のセクションはすべて一時的に非表示になります。ページのすべてのセクションを表示するには、「すべて表示」をクリックします。

アプリケーションの編集ページについて

次のセクションでは、アプリケーションの編集ページで使用可能な属性について説明します。

内容は次のとおりです。

名前

「名前」を使用して、アプリケーションの基本特性(アプリケーション名、英数字の別名(オプション)、バージョン番号など)を定義します。表7-1に、「名前」のすべての属性を示します。

表7-1「アプリケーション定義」の「名前」

属性 説明

名前

アプリケーションに説明的な短い名前を指定します。この名前によって、アプリケーションを開発環境に存在する他のアプリケーションと区別します。

アプリケーションの別名

代替の英数字アプリケーション識別子を割り当てます。アプリケーションIDのかわりにこの識別子を使用できます。

たとえば、アプリケーション105にmyappという別名を作成するとします。この場合、f?p構文を使用して、アプリケーション105を次のいずれかでコールできます。

  • f?p=105:1

  • f?p=myapp:1

参照: 「f?p構文を使用したページのリンク」

バージョン

アプリケーションのバージョン番号がページに表示されます。次に示す書式マスクを使用して、自動的にバージョンを最終更新日に結び付けることもできます。

  • YYYY.MM.DD

  • MM.DD.YYYY

  • DD.MM.YYYY

アプリケーションのバージョンで「YYYY.MM.DD」を使用している場合、アプリケーション・ビルダーは、この書式マスクをすべてのアプリケーション属性の最終更新日に置換します。

イメージ接頭辞

アプリケーション・ビルダーによって分散されたイメージ・ディレクトリを指すためにWebサーバーが使用する仮想パスを決定します。インストール時、仮想パスは/i/として構成されます。

静的テキスト(ページ、リージョン・ヘッダー、リージョン・フッターなど)にイメージを埋め込む場合は、置換文字列#IMAGE_PREFIX#を使用してイメージを参照できます。たとえば、イメージgo.gifを参照するには、次の構文を使用します。

<img src="#IMAGE_PREFIX#go.gif">

参照: 「IMAGE_PREFIX」「イメージの管理」および「イメージの参照」

メディア・タイプ

インターネット・メディア・タイプを入力します。インターネット・メディア・タイプは、2つの部分で構成される、インターネット上のファイル形式を表す識別子です。メディア・タイプは、少なくともタイプとサブタイプの2つの部分で構成され、オプションで1つ以上のパラメータを指定します。メディア・タイプは、ページ描画の際にHTTPヘッダーのContent-Typeで使用されます。

ページ・レベルのメディア・タイプが、アプリケーション・レベルのメディア・タイプを上書きします。この属性のデフォルト値はNULLです。ページ・レベルとアプリケーション・レベルの両方でメディア・タイプの値がNULLの場合、メディア・タイプとしてtext/htmlが使用されます。

プロキシ・サーバー

プロキシ・サーバーを指定する場合は、このフィールドを使用します。

たとえば、URLリージョン・ソース・タイプを使用する場合、プロキシ・サーバーが必要になる場合があります。URLリージョン・ソースは、URLの結果(URLにナビゲートすると戻されるページ)をリージョン・ソースとして埋め込みます。ファイアウォールを使用している場合に、URLがアプリケーション・ビルダーに対してファイアウォールの外側にある場合は、プロキシ・サーバーを指定する必要があります。

PL/SQLパッケージ変数APEX_APPLICATION.G_PROXY_SERVERを使用すると、PL/SQLからこのフィールドに入力した値を参照できます。

解析対象スキーマ

アプリケーション内のすべてのSQLおよびPL/SQLが解析対象となるスキーマを指定します。#OWNER#置換文字列を使用すると、SQL問合せおよびPL/SQL(リージョンやプロセスなど)でこの値を参照できます。


プロパティ

「プロパティ」を使用して、属性「ロギング」、「デバッグ」、「完全置換」、「アプリケーション・グループ」、「フィードバック」および「デフォルトのエラー表示位置」を有効化します。表7-2に、「名前」のすべての属性を示します。

表7-2「アプリケーション定義」の「プロパティ」

属性 説明

ロギング

ユーザー・アクティビティをOracle Application Expressアクティビティ・ログに記録するかどうかを決定します。「はい」に設定した場合、すべてのページ・ビューがログに記録されるため、管理者はアプリケーションごとにユーザー・アクティビティを監視できます。

高容量アプリケーションでは、ロギングを無効にすることをお薦めします。

デバッグ

カレント・アプリケーションのデバッグ・モードを制御します。使用可能なオプションは次のとおりです。

  • 「はい」に設定すると、デバッグ・モードでのアプリケーションの実行が有効になります。

  • 「いいえ」に設定すると、デバッグ・モードでのアプリケーションの実行が無効になります。

デバッグ・モードでのアプリケーションの実行は、アプリケーションが開発中の場合に役立ちます。ただし、本番アプリケーションの場合は、デバッグを無効にし、ユーザーがアプリケーション・ロジックを参照できないようにすることをお薦めします。

完全置換

完全置換をサポートするかどうかを決定します。完全置換を使用します。非完全置換は非推奨の機能です。

完全置換では、次の構文を使用します。

&ITEM.

非完全置換では、次の構文を使用します。

&ITEM

参照: 「置換文字列の理解」

アプリケーション・グループ

このアプリケーションに現在関連付けられているアプリケーション・グループを表示します。別のアプリケーション・グループを選択するには、リストから選択します。既存のグループからアプリケーションを削除するには、「未割当て」を選択します。

参照: 「アプリケーション・グループの作成」

フィードバックを許可

このアプリケーションに対するエンド・ユーザーのフィードバックへのサポートを有効にします。「はい」または「いいえ」を選択します。

参照: 「フィードバックの管理」

デフォルトのエラー表示位置

Application Expressまたはプラグインによって実行される基本検証の検証エラー・メッセージを表示する位置を指定します。検証エラー・メッセージは、「通知」領域(ページ・テンプレートの一部として定義)またはフィールド・ラベル内に表示できます。


可用性

「可用性」を使用して、アプリケーション・ステータスおよびビルド・ステータスを定義することによって、アプリケーションを管理します。たとえば、ステータス「制限されたアクセス」を選択すると、アプリケーションにアクセスして実行できるユーザーを指定できます。詳細は、表7-3を参照してください。

表7-3「アプリケーション定義」の「可用性」

属性 説明

ステータス

アプリケーションが使用可能または使用不可であることを指定します。オプションは次のとおりです。

  • 使用可能: アプリケーションは制限なしで使用可能です。

  • 編集リンクで使用可能: アプリケーションは使用可能です。開発者に対して、各ページの下部に開発者ツールバーが表示されます。開発者は同じブラウザ・セッションでアプリケーション・ビルダーにログインする必要があります。

  • 開発者のみ使用可能: 開発者権限を持つユーザーがアプリケーションを使用できます。

  • 制限されたアクセス: カンマ区切りのユーザー・リスト限定に指定された開発者がアプリケーションを使用できます。

  • 使用不可: アプリケーションを実行または編集できません。ユーザーがアプリケーションへのアクセスを試みると、「使用できないアプリケーションに対するメッセージ」内のメッセージが表示されます。

  • 使用不可(PL/SQLで表示されるステータス): アプリケーションは実行も編集もできません。

  • 使用不可(URLにリダイレクト): アプリケーションは実行できません。ユーザーは、「使用できないアプリケーションに対するメッセージ」に入力されたURLにリンクされます。

参照: Oracle Application Express管理ガイドの「複数のアプリケーションのビルド・ステータスの変更」と「デプロイ時のアプリケーションのビルド・ステータス・セットの変更」、および「アプリケーション、ページおよびページ・コンポーネントへのアクセスの制御」

ビルド・ステータス

カレント・アプリケーションのビルド・ステータスを指定します。オプションは次のとおりです。

  • アプリケーションの実行および構築: 開発者とユーザーのどちらもアプリケーションを実行および開発できます。

  • アプリケーションの実行のみ: ユーザーはアプリケーションの実行のみが可能です。このオプションは、本番インスタンスのアプリケーション用です。

参照: Oracle Application Express管理ガイドの「デプロイ時のアプリケーションのビルド・ステータス・セットの変更」

使用できないアプリケーションに対するメッセージ

この属性は、「ステータス」と組み合せて使用します。「ステータス」を「使用不可」「使用不可(PL/SQLで表示されるステータス)」または「使用不可(URLにリダイレクト)」に設定すると、この属性に入力したテキストが表示されます。「ステータス」を「使用可能」に設定した場合、この属性に入力したテキストは表示されません。

カンマ区切りのユーザー・リスト限定(ステータスが「制限されたアクセス」の場合のみ)

この属性はステータス「制限されたアクセス」と組み合せて使用します。ステータスを「制限されたアクセス」に設定すると、この属性に示されているユーザーのみがアプリケーションを実行できます。この属性を使用するには、次のステップを実行します。

  1. 「ステータス」リストから、「制限されたアクセス」を選択します。

  2. 表示されたフィールドに、アプリケーションを実行できるユーザーのカンマ区切りのリストを入力します。


エラー処理

表7-4で説明する属性を使用して、アプリケーションがエラーのログを記録する方法を制御または変更します。ここで指定するエラー処理ファンクションは、同様のページ・レベル属性によって上書きされます。詳細は、ページ属性の概要を参照してください。

表7-4 「アプリケーション定義」の「エラー処理」

属性 説明

デフォルトのエラー表示位置

検証、プロセス、プラグインに対して、またはOracle Application Expressエンジンから表示される検証エラー・メッセージの表示位置を指定します。オプションは次のとおりです。

  • フィールドおよび通知でインライン表示: エラー・メッセージは、ページ・テンプレートの一部として定義される通知領域に表示されます。

  • フィールドでインライン表示: エラー・メッセージはフィールド・ラベル内に表示されます。

  • 通知でインライン表示: ページでエラーが発生した場合に#NOTIFICATION_MESSAGE#テンプレート置換文字列に表示するエラー・テキストを入力します。

エラー処理ファンクション

既存のエラー・メッセージと表示位置を変更するか、エラーが発生した場合にそれをログに記録するための、PL/SQLエラー・ファンクションの名前を入力します。「エラー処理ファンクション」は常に、アプリケーション、検証またはApplication Expressのエラーがユーザーに表示される前にコールされます。これは、既存のエラー・メッセージと表示位置を変更するために使用できます。

このファンクションは、データベース内のパッケージ・ファンクションまたはスタンドアロンのファンクションを参照できます。次に例を示します。

log_apex_error

データベースのPL/SQLパッケージまたはスタンドアロンのファンクションを参照する場合、#OWNER#置換文字列を使用して、カレント・アプリケーションの解析対象スキーマを参照します。次に例を示します。

#OWNER#.log_apex_error

apex_errorパッケージで説明されている構文を使用してエラー処理ファンクションを実装する必要があります。

function <name of function> (
    p_error in apex_error.t_error )
    return apex_error.t_error_result

参照: 『Oracle Application Express APIリファレンス』apex_errorに関する説明

注意: ここで指定するエラー処理ファンクションは、ページ・レベルで指定されるエラー処理により上書きされます。詳細は、ページ属性の概要を参照してください。


グローバル通知

「グローバル通知」属性は、アプリケーション・ユーザーに対するシステム・ステータスの通知に使用します。たとえば、この属性を使用して、スケジュールされた停止時間をユーザーに通知したり、アプリケーションの可用性に関するその他のメッセージを通知できます。アプリケーションで使用されるページ・テンプレートに#GLOBAL_NOTIFICATION#置換文字列が含まれている場合は、ここに入力するテキストがその文字列の場所に表示されます。

グローバル通知を作成するには、次のステップを実行します。

  1. ページ・テンプレートに#GLOBAL_NOTIFICATION#置換文字列を含めます。

  2. アプリケーションの編集ページにナビゲートし、「グローバル通知」属性にメッセージを入力します。

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

置換

これらのフィールドは、アプリケーションで使用する静的置換文字列を定義する際に使用します。アプリケーション内の多くの場所に出現する文字列やラベルに静的置換文字列を使用できます。置換文字列を作成するには、「置換文字列」列に文字列名を、「置換値」列に文字列値を入力します。

静的置換文字列を定義すると、このページで定義した「置換値」を変更するだけで、アプリケーション内の複数の場所のテキスト文字列をまとめて変更できます。

ロゴ

「ロゴ」属性は、アプリケーション・ロゴを定義する際に使用します。アプリケーション・ロゴは、テキスト・ベースにもイメージ・ベースにもできます。この機能を使用するには、ページ・テンプレートに#LOGO#置換文字列が含まれている必要があります。

アプリケーション・ロゴを定義するには、次のステップを実行します。

  1. 「ロゴ・タイプ」で次のいずれかを選択します。

    • アプリケーション・ロゴにイメージを使用する場合は、「イメージ」を選択します。

    • アプリケーション・ロゴにテキストを使用する場合は、「テキスト」を選択します。

  2. 「ロゴ」で、次のように入力します。

    • イメージの場合、イメージの完全な名前(ファイル名拡張子を含む)を入力してください。次に例を示します。

      /i/oracle.gif
      
    • テキストの場合、テキスト文字列全体を入力してください。次に例を示します。

      Sample Application
      
  3. 「ロゴ属性」で、ロゴの適切な属性を入力するか、またはリストから選択します。

    イメージの例:

    width="100" height="20" alt="Company Logo"
    

    テキストの例:

    style="font-family:Arial; color:#000000; font-size:18; white-space:nowrap; font-weight:bold;"
    

ビルド・オプション

既存のビルド・オプションを表示します。ほとんどのアプリケーションには、ビルド・オプション属性があります。ビルド・オプションは、INCLUDEまたはEXCLUDEという2つの値をとることができます。属性を含めるように指定すると、Application Expressエンジンは、実行時にその属性を認識します。ただし、属性を除外するように指定すると、Application Expressエンジンは、その属性を存在しないものとして処理します。

オブジェクトを特定のインストールから除外する場合を除き、ビルド・オプションは指定しないでください。

テーマ

アプリケーションに適用される現行のテーマを表示します。テーマは、アプリケーション全体のレイアウトおよびスタイルの定義に使用できるテンプレートのコレクションです。各テーマには多数のテンプレートが集められ、アプリケーションに必要となる可能性があるすべてのユーザー・インタフェース・パターンが収録されています。


関連項目:

「テーマの管理」

テンプレートのデフォルト

このアプリケーションのデフォルトのテンプレートが表示されます。アプリケーション・レベルでデフォルト・テンプレートを指定するには、次のいずれかを実行します。

ページ属性ページの「ページ・テンプレート」リストから選択しても、このデフォルトを上書きできます。

表7-5に、カレント・アプリケーションのテンプレートのデフォルト属性を示します。

表7-5「アプリケーション定義」の「テンプレートのデフォルト」

属性 説明

デフォルト・ページ・テンプレート

ページを表示するためのデフォルトのページ・テンプレートを指定します。ページ属性ページの「ページ・テンプレート」リストから選択すると、この値を上書きできます。

参照: 「ページ属性の変更」

出力モード・ページ・テンプレート

Application Expressエンジンが印刷用モードの場合に使用するテンプレートを指定します。

ページのレンダリングのためにApplication Expressエンジンをコールする際、指定の出力モード・ページ・テンプレートを使用してページを表示するかどうかを指定するオプションがあります。

「はい」に指定すると、印刷用テンプレートを使用してページが表示されます。Application Expressエンジンは、HTMLフォーム・フィールド内のすべてのテキストをテキストとして表示します。印刷用テンプレートには、#FORM_OPEN#置換文字列または#FORM_CLOSE#置換文字列は必要ありません。

参照: 「印刷用ページの最適化」

エラー・ページ・テンプレート

オプションです。インライン表示されるエラーではなく、個別のページに表示されるエラーに使用するページ・テンプレートを指定します。


コンポーネントのデフォルト値

ウィザードの実行時に使用するデフォルトのテンプレートを表示します。これらの設定は、各コントロールまたはコンポーネントの属性ページで上書きできます。表7-6に、カレント・アプリケーションのコンポーネントのデフォルトを示します。

表7-6 「アプリケーション定義」の「コンポーネントのデフォルト値」

属性 説明

カレンダ

カレンダを作成する場合に使用するデフォルトのカレンダ・テンプレートです。

ラベル

ページ・アイテムを作成する場合に使用するデフォルトのラベル・テンプレートです。

レポート

レポートを作成する場合に使用するデフォルトのレポート・テンプレートです。

リスト

リストを作成する場合に使用するデフォルトのテンプレートです。

ブレッドクラム

ブレッドクラムを作成する場合に使用するデフォルトのテンプレートです。

ボタン

テンプレートによって制御されるボタンを作成する場合に使用するデフォルトのテンプレートです。

リージョン

リージョンを作成する場合に使用するデフォルトのテンプレートです。

チャート・リージョン

チャートまたはマップを作成する場合に使用するデフォルトのリージョン・テンプレートです。

フォーム・リージョン

フォームを作成する場合に使用するデフォルトのリージョン・テンプレートです。

レポート・リージョン

レポートを作成する場合に使用するデフォルトのリージョン・テンプレートです。

表形式フォーム・リージョン

表形式フォームを作成する場合に使用するデフォルトのリージョン・テンプレートです。

ウィザード・リージョン

ウィザード・コンポーネントを作成する場合に使用するデフォルトのリージョン・テンプレートです。

ブレッドクラム・リージョン

ブレッドクラムを作成する場合に使用するデフォルトのリージョン・テンプレートです。

リスト・リージョン

リストを作成する場合に使用するデフォルトのリージョン・テンプレートです。


セキュリティ属性の構成

アプリケーションに対するセキュリティを提供するには、セキュリティ属性の編集ページで属性を編集します。選択したセキュリティ属性は、アプリケーション内のすべてのページに適用されます。

内容は次のとおりです。

「セキュリティ属性の編集」ページへのアクセス

セキュリティ属性の編集ページにアクセスするには、次のステップを実行します。

  1. 「ワークスペース」ホームページで、「アプリケーション・ビルダー」アイコンをクリックします。

  2. アプリケーションを選択します。

  3. 「共有コンポーネント」をクリックします。

    共有コンポーネント・ページが表示されます。

  4. 「セキュリティ」で、「セキュリティ属性」をクリックします。

セキュリティ属性の編集ページが表示されます。

ナビゲーションの選択肢について

セキュリティ属性の編集ページは、「認証」、「認可」、「データベース・スキーマ」、「セッション・ステート保護」、「ブラウザ・セキュリティ」および「データベース・セッション」の各セクションから構成されます。これらのセクションにはページをスクロール・ダウンするか、ページ上部のナビゲーション・ボタンをクリックすることでアクセスできます。

図sec_attribute_tabs.gifの説明が続きます
図sec_attribute_tabs.gifの説明

ページ上部のボタンを選択すると、選択されたセクションが表示され、その他のセクションはすべて一時的に非表示になります。ページのすべてのセクションを表示するには、「すべて表示」をクリックします。

Security Attributesページについて

次のセクションでは、セキュリティ属性の編集ページで使用可能な属性について説明します。

内容は次のとおりです。

認証

認証は、ユーザーがアプリケーションにアクセスする前に、そのユーザーの本人確認を行うプロセスです。アプリケーションに対して複数の認証スキームを定義できますが、一度にカレントに設定できるスキームは1つだけです。表7-7に、「認証」で使用可能な属性を示します。

表7-7 「認証」属性

属性 説明

ホーム・リンク

URL、またはアプリケーションを実行するときに実行されるプロシージャを指定します。

たとえば、「ホーム・リンク」には、アプリケーションのホームページの位置を特定するために使用される相対URLを含めることができます。たとえば、f?p=6000:600は、ホームページ番号600を持つアプリケーション6000を指定します。この例では、アプリケーション・テンプレート内の#HOME_LINK#置換文字列は、「ホーム・リンク」に入力した値で置き換えられます。

この属性を使用してプロシージャに名前を付けることもできます。たとえば、アプリケーション・ホームとして機能するHTMLページをレンダリングするpersonal_calendarなどのプロシージャを作成できます。

注意: 認証後に表示されるページを決定するために「ホーム・リンク」属性は使用しないでください。認証後に表示されるページは、アプリケーションの認証スキーム内の他のコンポーネントによって決定されます。

参照: 「HOME_LINK」

ログインURL

HTMLの&LOGIN_URLまたはテンプレート内の#LOGIN_URL#置換文字列と置き換えられます。

参照: 「LOGIN_URL」および「認証スキームの作成」

パブリック・ユーザー

データベース・アクセス記述子を介したデータベースへの接続に使用するOracleスキーマを示します。デフォルト値は、データベース・サーバーのバージョンがOracle Database Express Editionの環境ではANONYMOUS、その他すべてのバージョンのデータベース・サーバー環境ではAPEX_PUBLIC_USERです。

ユーザーの本人確認が行われると、Application Expressエンジンが組込み置換文字列APP_USERの値を設定して、各ユーザーを追跡します。

注意: 以前のバージョンのOracle Application Expressでは、組込み置換文字列HTMLDB_PUBLIC_USERが使用されていました。

APP_USERがこの値と等しいと、Application Expressエンジンはカレント・セッションをパブリック・ユーザー・セッションとみなします。Application Expressエンジンは、次の組込み表示条件をサポートしています。

  • USER_IS_PUBLIC_USER

  • USER_IS_NOT_PUBLIC_USER

カレント・アプリケーション・ユーザー(APP_USER)がこの属性の値と等しい場合、ユーザーはパブリック・ユーザーとしてログインされます。一部のアプリケーションには、パブリック・モード(ログインが不要)およびプライベート・モード(ログインが必要)があります。ユーザーがパブリック・ユーザーかどうかを判断して、条件付きで情報の表示と非表示を切り替えることができます。

たとえば、ユーザーがパブリック・ユーザーの場合はログイン・ボタンを表示し、ユーザーがパブリック・ユーザーでない場合にはログアウト・リンクを表示するように設定できます。この値を参照するには、APEX_APPLICATION.G_PUBLIC_USERを使用します。また、Application Expressエンジンには、組込み条件タイプUSER_IS_PUBLIC_USERおよびUSER_IS_NOT_PUBLICもあります。

参照: 「HOME_LINK」および「条件付きのレンダリングおよびプロセスの理解」

認証スキーム

認証スキームを定義するには、このリンクをクリックします。

参照: 「認証の仕組みの理解」および「認証スキームの作成」


認可

認可は、ユーザー権限に基づいて、特定のコントロールまたはコンポーネントへのユーザーのアクセスを制御します。「認可スキーム」リストから選択して、アプリケーションの認可スキームを指定できます。アプリケーション全体に割り当てることができる認可スキームは1つのみです。ただし、認可スキームは、個々のページ、ページ・コントロール(リージョン、ボタン、アイテムなど)または共有コンポーネント(メニュー、リスト、タブなど)に割り当てることができます。

認可スキームを作成するには、「認可スキームの定義」をクリックします。

認可スキームはバイナリ操作で、結果は成功(true)または失敗(false)のいずれかになります。成功すると、コンポーネントまたはコントロールを表示できます。失敗するとコンポーネントやコントロールの表示または処理のいずれも行うことはできません。認可スキームをページに割り当てることに失敗すると、そのページではなくエラー・メッセージが表示されます。ただし、認可スキームをページ・コントロール(リージョン、ボタン、アイテムなど)に割り当てる場合は、失敗してもエラー・ページは表示されません。かわりに、コントロールが表示されないか、またはその処理や実行が行われません。

データベース・スキーマ

カレント・アプリケーションのデータベース・スキーマを指定するには、解析対象スキーマを使用します。定義後は、アプリケーションによって発行されるすべてのSQLおよびPL/SQLコマンドが、定義したデータベース・スキーマの権限で実行されます。

セッション・タイムアウト

オープンWebブラウザで、取り消されたコンピュータにアプリケーションが公開される時間を短くするには、次の属性を使用します。

  • 最大セッションの長さ: セッションが存在し、このアプリケーションにより使用される秒数を制御する正の整数を入力します。インスタンス・レベルの設定に値を戻すには、この値をNULLのままにします。セッションが無期限に存在するようにするには、0を入力します。セッション存続期間より、8時間ごとに実行され、12時間より前から存在するセッションを削除するジョブの操作が優先される場合があります。

  • セッション・タイムアウト時に、このURLにダイレクト: 最大セッション存続期間を超えた際にリダイレクトされるオプションのURLを入力します。このURLのターゲット・ページは、Application Expressで実装された場合、パブリック・ページである必要があります。このページの一般的な用途は、ユーザーにセッションの有効期間を知らせ、ログイン・リンクや他のオプションを表示することです。URLを指定しない場合、リダイレクト先はアプリケーションのホームページになります。

    このURLでは次の3つの置換アイテムのみがサポートされます:

    • &APP_SESSION.

    • &SESSION.

    • &APP_ID.

    このURLは特別な目的を持つため、リンクに&APP_SESSION.および&SESSION.のいずれも含める必要はありません。

  • 最大セッション・アイドル時間: このアプリケーションが使用するセッションの停止時間またはアイドル時間を制御する正の整数を秒数で入力します。アイドル時間は、あるページ・リクエストと次のページ・リクエストとの間の時間です。インスタンス・レベルの設定に値を戻すには、この値をNULLのままにします。0に設定すると、セッションのアイドル時間のチェックは行われません。

  • セッション・アイドル時間のタイムアウト時に、このURLにダイレクト: 最大セッション・アイドル時間を超えた場合にリダイレクト先となるオプションのURLを入力します。このURLのターゲット・ページは、Application Expressで実装された場合、パブリック・ページである必要があります。このページの一般的な用途は、ユーザーにセッションのタイムアウトを知らせ、ログイン・リンクや他のオプションを表示することです。URLを指定しない場合、リダイレクト先はアプリケーションのホームページになります。

    このURLでは次の3つの置換アイテムのみがサポートされます:

    • &APP_SESSION.

    • &SESSION.

    • &APP_ID.

    このURLは特別な目的を持つため、リンクに&APP_SESSION.および&SESSION.のいずれも含める必要はありません。


関連項目:

「セッション・タイムアウトの理解」およびOracle Application Express管理ガイドの「セッション・タイムアウトの構成」

セッション・ステート保護

セッション・ステート保護を有効にすると、ハッカーがアプリケーション内のURLを改ざんするのを防ぐことができます。URL改ざんにより、プログラム・ロジック、セッション・ステートの内容および情報プライバシが悪影響を受ける可能性があります。

アプリケーションのセッション・ステート保護を有効または無効にするには、「セッション・ステート保護」リストから選択します。セッション・ステート保護を有効に設定すると、ページおよびアイテム・レベルで定義されたセッション・ステート保護コントロールがオンになります。

ブックマーク済リンクにチェックサムが含まれ、セッション・ステート保護がアプリケーションに対して有効な場合、「この後に作成されるURLの許可」に、ブックマーク済リンクをこのアプリケーションのページへのアクセスに使用できるようになった日時がリストされます。

この日付および時間より前に作成されたブックマークは、ブックマーク済リンクにチェックサムが含まれ、セッション・ステート保護がアプリケーションに対して有効な場合、このアプリケーションへのアクセスに使用できません。チェックサムを含まないブックマークまたは不要なチェックサムを含むブックマークは、この属性による影響を受けません。これらの有用性は、他の基準を使用して決定されます。非表示のアプリケーション属性(チェックサム・ソルト)は、計算時と、ページのレンダリング時に生成されたf?p= URLに含まれるチェックサムのその後の検証時に使用されます。チェックサムは、「セッション・ステート保護」がアプリケーションに対して有効な場合に含まれます。このチェックサム・ソルト属性は、「ブックマークの無効化」ボタンをクリックすると、いつでもリセットできます。このボタンをクリックすると、以前に生成されたチェックサムを含むブックマーク済URLは、その後にアプリケーションへのアクセスに使用されるときに失敗します。

セッション・ステート保護を構成するには、「セッション・ステート保護の管理」をクリックします。

ブラウザ・セキュリティ

「キャッシュ」を使用して、アプリケーションのページ・コンテンツのブラウザによるキャッシュを有効化または無効化します。有効化すると、ブラウザでこのアプリケーションのページ・コンテンツを、メモリー内とディスク上の両方のキャッシュに保存できます。キャッシュが有効になっている場合に、ブラウザの「戻る」ボタンがクリックされると、通常、ページはサーバーからではなくキャッシュからロードされます。無効にすると、ブラウザはアプリケーションのページ・コンテンツを保存しないように指示され、URLが変更されるたびにサーバーから最新のページ・コンテンツをリクエストします。

機密データが保存されないようにするために、この属性を無効にすることをお薦めします。そうしない場合、ログアウト後にブラウザ履歴で前に戻り、以前のセッションのキャッシュされたコンテンツを表示できる可能性があります。ブラウザのキャッシュを無効にすると、部分ページ・リフレッシュを使用するページ(対話モード・レポートを含むページなど)での問題も回避できます。

「フレームへの埋込み」を使用して、ブラウザでアプリケーションのページをフレーム内に表示できるかどうかを制御します。使用可能なオプションは次のとおりです。

  • 拒否: 実行するサイトに関係なく、ページをフレームに表示できません。

  • 同じ起点から許可: ページ自体と同じ起点のフレームにのみ、ページを表示できます。

  • 許可: ページを任意のフレームで表示できます。

フレーム内のページの表示は、クリックジャック攻撃で不正に使用される場合があります。クリックジャック攻撃では、攻撃者は複数のレイヤーを使用して、ユーザーがトップ・レベル・ページをクリックしようとしたときに、別のページ上のボタンやリンクをクリックさせます。したがって、意図したページに対するクリック(またはキーストローク)が攻撃者によりハイジャックされ、別のページに移動させられます。


ヒント:

これらのいずれの機能にも、HTTPヘッダー・レスポンス変数x-frame-optionsをサポートする最新のブラウザが必要です。

データベース・セッション

「データベース・セッション」で使用できる属性には、次のものがあります。

  • 初期化PL/SQLコード

    この属性を使用して、現在の「ページの表示」または「ページの受入れ」リクエストに関連付けられたデータベース・セッションに対してコンテキストを設定するPL/SQLブロックを入力します。ここに入力したブロックは、ページ・リクエスト時の非常に早い段階(APP_USER値が確立された直後)で実行されます。APP_USERの値(:APP_USERまたはv('APP_USER')を使用)をブロック内で使用できます。セッション・ステート内の他のアイテムの値も参照できますが、これらのアイテムは現在のページ・リクエストが開始する前にセッション・ステートに確立されている必要があります。次に例を示します。

    dbms_session.set_context('CTX_USER_QRY','USERPRIV',my_package.my_function(:APP_USER));
    

    前の例では、CTX_USER_QRYという名前のコンテキストでUSERPRIVの値を、my_packageパッケージのmy_functionファンクションによって戻された値に設定します。ファンクションには、入力引数としてAPP_USERの現行の値が渡されます。指定したコンテキストがVPDポリシー(すでにアプリケーションの解析対象スキーマ内で作成されている)内で使用され、認証されたユーザーに適した条件の生成が行われます。

    ファイングレイン・アクセス制御(FGAC)とも呼ばれる仮想プライベート・データベースは、開発者がセキュリティ・ポリシーをデータベースの表およびビューに割り当てることができるApplication Program Interface(API)を提供するOracle Databaseの機能です。開発者はPL/SQLを使用して、ストアド・プロシージャを含むセキュリティ・ポリシーを作成し、RDBMSパッケージをコールしてそのプロシージャを表またはビューにバインドできます。このようなポリシーは、データベース内に格納されているアプリケーション・データのコンテンツか、またはOracle Databaseが提供するコンテキスト変数に基づいています。これによって、VPDではアクセス・セキュリティ・メカニズムをアプリケーションから取り除き、特定のスキーマに近い状態にできます。

    このセクションで入力するコードはVPD/FGACに関連付ける必要はありません。このコードはセキュリティにまったく関連していない場合があります。ページ・リクエストの最初の時点で実行する必要があるコードは、すべてここに指定できます。たとえば、各ページ・リクエストに対してデータベース・セッションのタイムゾーンを設定するには、次のように指定します。

    BEGIN
      EXECUTE IMMEDIATE 'alter session set time_zone = ''Australia/Sydney'' ';
    END;
    
  • PL/SQLコードのクリーンアップ

    この属性を使用して、ページ・プロセスの最後に実行するPL/SQLブロックを入力します。これは、VPDコンテキストまたはデータベース・リンクなど、使用されたリソースの解放またはクリーンアップに使用できます。

    例1:

    dbms_session.clear_context('CTX_USER_QRY');
    

    このコールでは、データベース・セッションがセッション・プールに戻される前にCTX_USER_QRYというアプリケーション・コンテキストが再設定され、データベース・セッションが再利用される際に情報が漏洩しないようにします。

    例2:

    dbms_session.close_database_link('SALES');
    

    このコールでは、リンクを介してデータを問い合せることにより、「初期化PL/SQLコード」でまたは暗黙的に開かれているデータベース・リンクSALESが閉じられます。この場合も同様に、リソースが解放され、データベース・セッションの再利用時のリソースの漏洩が防止されます。


関連項目:

「認可を介したセキュリティの提供」およびOracle Label Security管理者ガイド

グローバリゼーション属性の構成

アプリケーション・ビルダーでは、異なる言語で同時に実行可能なアプリケーションを開発できます。1つのアプリケーションを、異なる言語をサポートするよう変換できます。グローバリゼーション属性の編集ページの属性を使用して、プライマリ・アプリケーション言語などのグローバリゼーション・オプションを指定します。

内容は次のとおりです。

グローバリゼーション属性のページへのアクセス

グローバリゼーション属性の編集ページにアクセスするには、次のステップを実行します。

  1. 「ワークスペース」ホームページで、「アプリケーション・ビルダー」アイコンをクリックします。

  2. アプリケーションを選択します。

    アプリケーションのホームページが表示されます。

  3. 「共有コンポーネント」をクリックします。

    共有コンポーネント・ページが表示されます。

  4. 「グローバリゼーション」で、「グローバリゼーション属性」をクリックします。

    グローバリゼーション属性の編集ページが表示されます。

Edit Globalization Attributesページについて

次のセクションでは、グローバリゼーション属性の編集ページで使用可能な属性について説明します。

アプリケーションのプライマリ言語

アプリケーションを開発する言語を指定します。この言語が、すべての変換の元となるベース言語になります。たとえば、英語で作成されたアプリケーション100が、フランス語に変換され、アプリケーション101として公開されたとします。英語がアプリケーションのプライマリ言語になります。

アプリケーションに対するすべての変更は、ここで指定したプライマリ言語で行う必要があります。

アプリケーション言語の派生元

アプリケーション・ビルダーでのアプリケーション言語の特定または導出の方法を決定します。

アプリケーションのプライマリ言語は静的にすることも、Webブラウザ言語から導出したり、ユーザー・プリファレンスやアイテムから特定することもできます。また、データベース言語設定により、日付の表示方法や特定の情報のソート方法を決定することもできます。

このオプションを使用すると、派生したブラウザ言語のサポートを無効にできます。アプリケーションのプリファレンスから派生したアプリケーション言語を指定するオプションも表示されます。詳細は、「フィールドレベル・ヘルプ」を参照してください。

アプリケーション日付書式

アプリケーションで使用する日付書式を決定します。

この日付書式を使用して、NLS_DATE_FORMATデータベース・セッションの設定が変更されてから、アプリケーション内のページが表示または送信されます。この値には、有効なOracle日付書式マスクを含むリテラル文字列、または置換構文を使用したアイテム参照を指定できます。値が指定されていない場合は、データベース・セッションからデフォルトの日付書式が実行時に取得されます。次に例を示します。

Month DD, YYYY
&MY_DATE_FORMAT.

アプリケーションの日時書式

アプリケーションで使用する日時書式を指定します。

この日時書式は、置換参照&APP_DATE_TIME_FORMAT.を使用するか、PL/SQLでv('APP_DATE_TIME_FORMAT')ファンクションを使用して、アプリケーション内で参照できます。この属性によってNLS設定が変更されることはありません。この値には、有効なOracle日付書式マスクを含むリテラル文字列、または置換構文を使用したアイテム参照を指定できます。この属性値を指定しない場合、APP_DATE_TIME_FORMATへの参照はNLSデータベース・セッションの日付書式とNLS時刻書式を返します。次に例を示します。

Month DD, RRRR HH24:MI
&MY_DATE_TIME_FORMAT.

アプリケーションのタイムスタンプ書式

アプリケーションで使用するタイムスタンプ書式を決定します。LOVからタイムスタンプ書式を選択します。

このタイムスタンプ書式を使用して、NLS_TIMESTAMP_FORMATデータベース・セッションの設定が変更されてから、アプリケーション内のページが表示または送信されます。この値には、有効なOracleタイムスタンプ書式マスクを含むリテラル文字列、または置換構文を使用したアイテム参照を指定できます。値が指定されていない場合は、データベース・セッションからデフォルトのタイムスタンプ書式が実行時に取得されます。次に例を示します。

DD-MON-RR HH.MI.SSXFF AM
&MY_TIMESTAMP_FORMAT.

アプリケーションのタイムスタンプ・タイムゾーン書式

アプリケーションで使用するタイムゾーン付きのタイムスタンプ書式を決定します。

この日付書式を使用して、NLS_TIMESTAMP_TZ_FORMATデータベース・セッションの設定が変更されてから、アプリケーション内のページが表示または送信されます。この値には、有効なOracleタイムスタンプ書式マスクを含むリテラル文字列、または置換構文を使用したアイテム参照を指定できます。値が指定されていない場合は、データベース・セッションからデフォルトのタイムゾーン付きのタイムスタンプ書式が実行時に取得されます。次に例を示します。

DD-MON-RR HH.MI.SSXFF AM TZR
&MY_TIMESTAMP_TZ_FORMAT.

自動タイムゾーン

データベース・セッションのタイムゾーンの設定を制御します。「はい」に設定すると、クライアント・タイムゾーンがクライアントのWebブラウザから取得され、Application Expressセッションの継続時間用に設定されます。

その後のページ・ビューには、ページ・ビューごとに適切なデータベース・セッション・タイムゾーンが設定されます。設定後、この設定はAPEX_UTIL.SET_SESSION_TIME_ZONEを使用して上書きしたり、APEX_UTIL.RESET_SESSION_TIME_ZONEを使用して再設定することができます。


関連項目:

『Oracle Application Express APIリファレンス』

自動CSVエンコーディング

自動CSVエンコーディングは、アプリケーションのすべてのカンマ区切り(CSV)レポートの出力エンコーディングを制御します。自動CSVエンコーディングのデフォルト値は「いいえ」です。自動CSVエンコーディングを「はい」に設定した場合、CSVレポートの出力は、ローカライズされたデスクトップ・アプリケーションと互換性のあるキャラクタ・セットに変換されます。CSVエンコーディングのキャラクタ・セットは、「アプリケーション言語の派生元」の設定によって決まります。

アプリケーション・ビルダーのページのエンコーディングは、Oracle Application Expressへのアクセスに使用されるデータベース・アクセス記述子(DAD)のキャラクタ・セットによって決まります。たとえば、データベース・アクセス記述子のキャラクタ・セットがAL32UTF8である場合、Oracle Application Expressユーザー・インタフェースの全アプリケーションのすべてのページはUTF-8でエンコードされます。

デフォルトでは、レポート・リージョンからのCSV出力は、データベース・アクセス記述子と同じキャラクタ・セットでエンコードされます。ただし、一部のデスクトップ・スプレッドシート・アプリケーションでは、データがクライアント・デスクトップのオペレーティング・システムのキャラクタ・セットでエンコードされる必要があります。マルチバイト・データの場合、レポート・リージョンからのCSV出力をデスクトップのスプレッドシート・アプリケーションで開くと壊れて表示されることがよくあります。これは、CSV出力のエンコーディングが、デスクトップ・アプリケーションで必要とされるエンコーディングと異なるためです。自動CSVエンコーディングを有効にすると、この問題が解決します。

たとえば、アプリケーションに対するユーザーの言語プリファレンスがdeである場合、データベース・アクセス記述子のキャラクタ・セット設定にかかわらず、CSVデータは西ヨーロッパ語(Windows 1252)でエンコードされます。ユーザーの言語プリファレンスがzh-cnの場合、CSVデータは中国語(GBK)でエンコードされます。