ヘッダーをスキップ
Oracle® Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド
リリース4.2 for Oracle Database 12c
B71338-03
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

15.2 セキュリティに関する開発者のベスト・プラクティスの理解

このセクションでは、Oracle Application Express開発者のためのセキュリティのベスト・プラクティスについて説明します。

内容は次のとおりです。

15.2.1 タイプ・パスワードのアイテムの理解

パスワード・アイテムは、Webブラウザ画面に入力されたテキストを表示しません。パスワード・アイテムを作成するときは、セッション・ステートを保存しないパスワード属性を使用することをお薦めします。これによって、パスワードがセッション・ステート表のデータベースに保存されるのを回避できます。

設定可能なパスワード・アイテム・タイプ属性は、次のとおりです。

  • 必須の値: 「はい」に設定し、ページ・アイテムが表示されている場合、Oracle Application Expressでは、ページの送信時にNOT NULL検証が自動的に実行されます。「いいえ」に設定すると、検証が行われず、NULL値が受け入れられます。

  • [Enter]を押すと送信: 「はい」に設定した場合、ユーザーがフィールドで[ENTER]キーを押すと、ページが送信されます。

  • 状態を保存しない: 「はい」に設定すると、パスワードがセッション・ステートに保存されません。セキュリティ上の理由により、この属性は常に「はい」に設定する必要があります。「いいえ」に設定する場合は、「セッション・ステートに暗号化された値を保存」属性を「はい」に設定することを考慮してください。

  • 認可スキーム: オプションで認可スキームを選択します。このコンポーネントをレンダリングまたは処理するためには、この認可スキームがTRUEと評価される必要があります。

  • セッション・ステート保護: この属性を「制限なし」または「制限付き」に設定して、セッション・ステート保護のレベルを選択できます。

    • 制限なし: URLまたはフォームでアイテムを渡して、アイテムを設定できます。URLにチェックサムは必要ありません。

    • 制限付き: アイテムをブラウザから設定することはできません。アイテムの値を内部プロセス、計算などに設定できる方法を制限する場合は、このオプションを使用します。この属性は、データ・エントリ・アイテムとして使用できないアイテムのみに適用され、「セッション・ステート保護」が無効になっていても常に監視されます。

  • セッション・ステートに暗号化された値を保存: 機密のセッション・ステートは、Application Expressセッション・ステート管理表に格納するときに暗号化することができます。このアイテムの暗号化されたセッション・ステートを保持するには、この値を「はい」に設定します。詳細は、「セッション・ステートおよびセキュリティの概要」を参照してください。

15.2.2 問題を引き起こす可能性のあるパスワード・アイテムの識別

問題を引き起こす可能性のあるパスワード・アイテムは、次のいずれかです。

  • セッション・ステートを保存しないパスワード・アイテム・タイプを1つも使用しないもの

  • 暗号化していない値をセッション・ステートに格納するもの

問題を引き起こす可能性のあるパスワード・アイテムを識別するには、「セキュリティ・プロファイル」および「パスワード・アイテム」レポートを使用します。

内容は次のとおりです。

15.2.2.1 「セキュリティ・プロファイル」レポートの表示

「セキュリティ・プロファイル」レポートを表示するには、次のステップを実行します。

  1. 「ワークスペース」ホームページにナビゲートします。

  2. 「アプリケーション・ビルダー」アイコンをクリックします。

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

  3. 「タスク」リストで「アプリケーション間レポート」をクリックします。

  4. 「セキュリティ」で、「セキュリティ・プロファイル」レポートをクリックします。

    このレポートには、現在のワークスペース内のすべてのアプリケーションに関する次の情報が表示されます。

    • アプリケーション

    • 名前

    • 解析対象スキーマ

    • アプリケーション・レベル認可スキーム

    • 認証

    • 認可スキーム

    • 認可スキーム

    • ページ

    • 暗号化アイテム

    • 問題を引き起こす可能性のあるパスワード・アイテム

15.2.2.2 「パスワード・アイテム」レポートの表示

問題を引き起こす可能性のあるパスワード・アイテムを識別するには、次のステップを実行します。

  1. 「ワークスペース」ホームページにナビゲートします。

  2. 「アプリケーション・ビルダー」アイコンをクリックします。

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

  3. 「タスク」リストで「アプリケーション間レポート」をクリックします。

  4. 「セキュリティ」で、「パスワード・アイテム」をクリックします。

    「パスワード・アイテム」レポートには、アプリケーション内にあるすべてのパスワード・アイテムが、暗号化を使用するかどうかおよびステートを保存するかどうかとともに表示されます。いずれも行わないパスワード・アイテムは、「問題を引き起こす可能性」とハイライトされます。


ヒント:

パスワード・アイテムを含むページで、ページ属性「フォームのオートコンプリート」「オフ」に設定します。この属性を「オフ」に設定すると、Webブラウザによって、ページでアイテムのオートコンプリートが試行されなくなります。

15.2.3 クロスサイト・スクリプティング保護の理解

クロスサイト・スクリプティング(XSS)は、動的に生成されるWebページを利用するセキュリティ攻撃です。XSS攻撃では、ユーザーのブラウザに読み込まれたときにアクティブになるスクリプトがWebアプリケーションに送信されます。これらのスクリプトがアクティブになると、データまたは場合によってはセッション資格証明が盗まれ、それらの情報が攻撃者に送信される可能性があります。

悪意のあるコードがOracle Application Expressアプリケーションに侵入すると、通常のページ・レンダリング時に、そのコードがアプリケーション内のHTMLリージョンや他の場所にレンダリングされる可能性があります。セッション・ステートへの不正なコードの挿入を阻止するため、Application Expressエンジンは特定の場合に文字をエスケープします。

内容は次のとおりです。

15.2.3.1 HTMLリージョンなどの静的領域の保護

HTMLリージョンなどの静的表示領域では、&ITEM.表記法を使用してセッション・ステートを参照できます。静的表示領域の例には、HTMLリージョン、ページのヘッダーとフッター、リージョンのヘッダーとフッター、リージョン・タイトル、ボタン・ラベル、ヘルプ・テキスト、フォーム・アイテム・ラベルおよび要素の後のテキスト、テンプレート、(フィールド・テキストの前後の)ラジオ・グループ、イベント成功メッセージ、イベント・エラー・メッセージ、ナビゲーション・バー属性、アプリケーション静的置換文字列値、チャート・ラベルおよび凡例、ブレッドクラムおよびリスト・フレーム・テキスト、カレンダ・テキスト、ラベル、凡例などがあります。

15.2.3.1.1 安全なアイテム表示タイプについて

セッション・ステートがこのように参照される場合、ページに表示される値には、参照されるアイテムが「表示のみ」で「セッション・ステートの保存」属性が「いいえ」に設定されている場合にエスケープされる特殊文字(<>&")が含まれません。

参照されるアイテムに「セッション・ステートの保存」属性が「いいえ」に設定されている「表示のみ」以外の表示タイプが含まれている場合、ページに表示される値には、エスケープされる特殊文字が含まれます。また、アプリケーション・レベルのアイテムには、安全な表示タイプが含まれているとみなされますが、実際にフォーム・アイテムに含まれているような表示プロパティは含まれていません。

15.2.3.1.2 値をエスケープするかどうかを決定するために使用されるルールについて

Application Expressエンジンは、事前定義済のスマート・エスケープ・ルールを使用して、セッション・ステートからフェッチされた値をエスケープするかどうか、およびいつそれを実行するかを決定します。

このルールを使用するのは、前にリストした表示タイプを使用したアイテムは、通常フィルタ処理(エスケープ)されずにブラウザに表示されることを意図したHTMLを含むテキスト用であるためです。安全に行われる方法は、これらのタイプのアイテムが常にエスケープされてアプリケーションに入力されるルールを実施する以外にありません。たとえば、ユーザーが、Oracle Application Expressのf?p URL構文を使用して、一部のテキストを安全なアイテムに渡す場合、Application Expressエンジンは値をセッション・ステートに保存する際に特殊文字をエスケープします。これにより次の2つの結果が予想されます。

  1. 値に特殊文字が含まれていなかった場合、渡された値は指定されたとおりにセッション・ステートに保存される。

  2. 値に特殊文字が含まれていた場合、値をセッション・ステートに保存する際に特殊文字をエスケープする。

いずれの状況でも、アイテムは、現在、前述のHTMLリージョンなどの静的領域で&ITEM.表記法を使用して安全に参照できます。

15.2.3.1.3 安全なアイテム・タイプを使用したHTMLマークアップの保持および表示

前にリストした安全なアイテム・タイプを使用して、ブラウザにHTMLマークアップを保持および表示します。たとえば、安全なページ・アイテムP1_XXX(&P1_XXXを使用)を参照して、太字で一部のテキストをレンダリングする要件があるとします。アイテムP1_XXXには次のHTMLが含まれているとします。

<b>ABABABAB</b>

実行するには、アプリケーション・コントロール(計算、プロセス、アイテムのソース式、アイテムのデフォルト値など)を使用して、値をこれらの安全なアイテムに格納します。値をこのように挿入する場合は、コンテンツの安全性を確認します。これらの方法を使用する場合、Application Expressエンジンは、値をセッション・ステートに保存する際に特殊文字をエスケープしません。

安全なアイテムの安全性は、最終的に、アイテムがページにポストされず、ページ送信の一部としてApplication Expressエンジンに発行されないルールによって確認されます。

15.2.3.2 動的出力の保護

htp.pなどの方法を使用してセッション・ステートからフェッチし、レンダリングするアイテムは、必要に応じてコードで明示的にエスケープする必要があります。たとえば、ページ上のPL/SQL動的コンテンツ・リージョンで次のhtp.pを使用するとします。

 htp.p(v(&rsquor;SOME_ITEM'));

セッション・ステートからフェッチするアイテムの値に予期しないタグやスクリプトが含まれる可能性がある場合は、リージョンで次のhtp.pを使用できます。

htp.p(apex_escape.html(:SOME_ITEM));

ただし、フェッチする値を安全にレンダリングできることが確かな場合は、この値をエスケープする必要はありません。開発者は、出力をエスケープしない方が適切な場合を判断する必要があります。

次のように、このルールに従うことをお薦めします。

これを行うのは、開発者としてハッカーが悪意ある値を安全ではないアイテムにポストするのを防ぐ方法はないためです。アプリケーションがこれらのアイテムを一般ユーザーに見えるように表示しなくても、このルールに従わないと、ハッカーはアプリケーションを使用してXSS攻撃をマウントできることに注意してください。

15.2.3.3 レポート・リージョンの保護

Application Expressエンジンは、レポートのボディでレンダリングされるデータをエスケープします。レポートのヘッダーおよびメッセージにおけるセッション・ステートへの参照は、安全なアイテム・タイプの値はエスケープされず、その他のアイテム・タイプの値はエスケープされるように、スマート・エスケープ・ルールを使用してセッション・ステートからフェッチされます。

15.2.3.4 フォーム・アイテムの保護

ブラウザに送信されるフォーム・ページの生成中に、フォーム・アイテム(隠しアイテムなど)が値を取得する場合、結果テキストはレンダリング前にエスケープされます。一部の安全なアイテム・タイプは、各表示タイプの意図する動作をサポートするため、このルールにおける例外となります。

一部のアイテム・タイプは、「セキュリティ」リージョンに「特殊文字をエスケープ」属性があります。この属性を使用して、値をエスケープする必要があるかどうかを指定します。デフォルトでは「はい」に設定されています。HTMLコードを表示する場合は、この属性を「いいえ」に設定します。

15.2.3.5 アイテムに入力する文字の制限

ユーザーがアイテムに入力できる文字を制限することで、クロスサイト・スクリプティングおよびその他のインジェクション攻撃を制限できます。これを行うためには、「ページ・アイテムの編集」ページの「セキュリティ」リージョンで「制限付き文字」属性を使用します。

セッション・ステートに保存できる文字を制限するには、制限付き文字を使用します。使用可能なオプションは次のとおりです。

  • - すべての文字を許可 -

    制限は適用されません。

  • a-Z、0-9と空白のホワイトリスト

    文字a-z、A-Z、0-9および空白のみ許可されます。

  • ブラックリストHTMLコマンド文字(<>")

    予約済のHTML文字は許可されません。

  • ブラックリスト&<>"/;,*|=%および--

    &、<、>、"、/、;、","、*、|、=、%および"--" (PL/SQLコメント)は許可されません。

  • ブラックリスト&<>"/;,*|=%または--と改行

    &、<、>、"、/、;、","、*、|、=、%、"--"、および改行文字は許可されません。

制限を選択する場合、選択された文字制限に一致しないデータをユーザーが保存しようとすると、Oracle Application Expressからエラー・メッセージが表示されます。

15.2.4 セッション・ステートおよびセキュリティについて

Oracle Application Expressは、データベース表にセッション・ステートを保持します。セッション・ステートがデータベース表で保持されるのは、サーバー側にセッション・ステートを格納すると、クライアント側に格納する場合よりセキュアになるためです。Oracle Application ExpressアプリケーションはステートレスHTTPプロトコルを使用するため、複数のページ・ビューにわたるアプリケーションのセッション・ステートがデータベース表に保持されます。各Oracle Application Expressアプリケーション・ユーザーの同期データベース接続を保持しない場合は、メモリーおよびデータベース・リソースの要件が大幅に削減されます。

開発者は、アプリケーション・ビルダーおよび組込みの監視ページを使用して、Oracle Application Expressアプリケーションによって格納されたセッション・ステートを問い合せることができます。開発者および管理者は、認証されているワークスペースのアプリケーションにアクセスできます。

開発者のベスト・プラクティスには、次のものが含まれます。

  • プログラムの制御フローの標準的な実装の一環として、クリア・キャッシュ・ページ・プロセスまたはページへのナビゲートに使用されるURLのクリア・キャッシュ・ディレクティブを使用して不要な値のセッション・ステートを消去します。

  • ステートを保存しないパスワード・ページ・アイテム・タイプを使用します。これを使用すると、入力したパスワードがデータベースのセッション・ステート表に保存されません。

  • セッションに機密データを保持する必要がある場合は、Oracle Application Expressのセッション・ステート表に暗号化した形式で保存する必要があります。この機能を使用するには、ページ・アイテムの「セッション・ステートに暗号化された値を保存」属性を「はい」に設定します。暗号化されて保存された値は、読取り時に自動的に複合化されます。


注意:

暗号化されたセッション・ステートの目的は、Oracle Application Expressのセッション・ステート表、デバッグ出力またはデータベース・データファイルへのアクセス権を持っている可能性のある他のOracle Application Express開発者やデータベース管理者に、暗号化された値が読み取られないようにするセッション・ステートを保持することです。データベースのバックアップを行う際は、バックアップ・ファイルでデータを暗号化する機能を使用することをお薦めします。


ヒント:

アイテム値は、最大で4000バイト長まで暗号化できます。4000バイトを超える値を暗号化しようとすると、エラー・メッセージが表示されます。

15.2.5 セッション・ステート保護の理解

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

セッション・ステート保護は2ステップのプロセスで有効にします。最初に、この機能を有効にします。次に、ページおよびアイテムのセキュリティ属性を設定します。

内容は次のとおりです。

15.2.5.1 セッション・ステート保護の仕組み

セッション・ステート保護を有効にすると、「ページ・アクセス保護」属性と「セッション・ステート保護」項目属性が、f?p= URL内に配置されたチェックサムとともに使用され、URL改ざんと、セッション・ステートに対する権限のないアクセスおよび変更が防止されます。セッション・ステート保護を無効にすると、セッション・ステート保護に関連するページ属性および項目属性が無視され、生成されるf?p= URLにはチェックサムが含まれません。

15.2.5.2 セッション・ステート保護の有効化

セッション・ステート保護は、セキュリティ属性の編集ページまたはセッション・ステート保護ページから有効にできます。

セッション・ステート保護は2ステップのプロセスで有効にします。最初に、この機能を有効にします。次に、ページおよびアイテムのセキュリティ属性を設定します。これらのステップは、ウィザードを使用して実行するか、セッション・ステート保護ページでページおよびアイテムのセキュリティ属性を手動で設定して行います。

内容は次のとおりです。

15.2.5.2.1 「セキュリティ属性の編集」からのセッション・ステート保護の有効化

セキュリティ属性の編集ページからセッション・ステート保護を有効にするには、次のステップを実行します。

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

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

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

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

  5. 「セッション・ステート保護」までスクロールして、「セッション・ステート保護」リストの「有効」を選択します。

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

    セッション・ステート保護ページが表示されます。

  7. ウィザードを使用してセッション・ステート保護の有効化、無効化または構成を行うには、「保護の設定」をクリックします。

  8. あるいは、適切なページまたはアイテム属性ページにナビゲートし、「セキュリティ」属性を設定します。


ヒント:

セッション・ステート保護を無効にするには、同じステップを再度実行しますが、「有効」のかわりに「無効」を選択します。セッション・ステート保護を無効にしても、既存のセキュリティ属性の設定は変更されませんが、それらの属性は実行時に無視されます。

15.2.5.2.2 「ブックマークの無効化」ボタンについて

セッション・ステート保護を有効にすると、カレント・アプリケーションへのブックマーク・リンクが機能するかどうかに影響します。次の規則を考慮してください。

  1. セッション・ステート保護を有効にした後に作成したブックマーク・リンクは、ブックマーク・リンクにチェックサムが含まれている場合に機能します。

  2. セッション・ステート保護を有効にする前に作成したブックマーク・リンクは、ブックマーク・リンクにチェックサムが含まれている場合は機能しません。

  3. チェックサムが含まれていないか、または不要なチェックサムが含まれているブックマークは、セッション・ステート保護の影響を受けません。

ページ・レンダリング時、Application Expressエンジンは、計算中に非表示のアプリケーション属性(チェックサムsalt)を使用し、f?p URLに含まれているチェックサムを確認します。セッション・ステート保護を有効にすると、Application Expressエンジンにチェックサムが含まれます。チェックサムsalt属性を再設定するには、セキュリティ属性の編集ページで「ブックマークの無効化」をクリックします。「ブックマークの無効化」をクリックすると、以前に生成されたチェックサムを含むアプリケーションへのアクセスに使用するブックマークURLが失敗することに注意してください。

15.2.5.2.3 「セッション・ステート保護」からのセッション・ステート保護の有効化

セッション・ステート保護を有効にするには、次のステップを実行します。

  1. 共有コンポーネント・ページにナビゲートします。

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

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

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

    4. 「セキュリティ」で、「セッション・ステート保護」を選択します。

    セッション・ステート保護ページが表示されます。セッション・ステート保護の現行のステータス(有効または無効)がページ上部に表示されることに注意してください。

  2. 「保護の設定」ボタンをクリックします。

    「セッション・ステート保護」ウィザードが表示されます。

  3. 「操作の選択」で、「有効化」を選択して、「次へ」をクリックします。

    次に、ページおよびアイテムのセキュリティ属性を設定するかどうか決定します。

  4. 「有効化」を選択して、「次へ」をクリックします。

  5. 「セッション・ステート保護の有効化」をクリックします。


ヒント:

セッション・ステート保護を無効にするには、同じステップを実行しますが、「有効化」のかわりに「無効化」を選択します。セッション・ステート保護を無効にしても、既存のセキュリティ属性の設定は変更されませんが、それらの属性は実行時に無視されます。

15.2.5.3 セッション・ステート保護の構成

セッション・ステート保護を有効にした後、セキュリティ属性を構成します。セキュリティ属性は2つの方法で構成できます。

  • ウィザードを使用し、特定の属性カテゴリの値を選択する。この場合、選択内容がアプリケーション内のすべてのページおよびアイテムに適用されます。

  • 個々のページ、アイテムまたはアプリケーション・アイテムの値を構成する。

内容は次のとおりです。


ヒント:

セキュリティ属性を構成する前に、まずセッション・ステート保護を有効にする必要があります。「セッション・ステート保護の有効化」を参照してください。

15.2.5.3.1 既存のセッション・ステート保護設定の確認

「セッション・ステート保護」ウィザードの最初のページでは、ページ、アイテムおよびアプリケーション・アイテムのセッション・ステート保護設定のサマリーを確認できます。

既存のセッション・ステート保護設定のサマリーを表示するには、次のステップを実行します。

  1. 「セッション・ステート保護」ページにナビゲートします。

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

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

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

    4. 「セキュリティ」で、「セッション・ステート保護」を選択します。

      セッション・ステート保護ページが表示されます。

  2. 「保護の設定」をクリックします。

  3. ページ下部で次のレポートを開きます。

    • ページ・レベルのセッション・ステート保護サマリー

    • ページ・アイテムのセッション・ステート保護サマリー

    • アプリケーション・アイテムのセッション・ステート保護

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

15.2.5.3.2 ウィザードを使用したセッション・ステート保護の構成

ウィザードを使用してセッション・ステート保護を構成するときは、特定の属性カテゴリの値を設定します。この場合、選択内容がアプリケーション内のすべてのページおよびアイテムに適用されます。

ウィザードを使用してセッション・ステート保護を構成するには、次のステップを実行します。

  1. 「セッション・ステート保護」ページにナビゲートします。

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

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

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

    4. 「セキュリティ」で、「セッション・ステート保護」を選択します。

      セッション・ステート保護ページが表示されます。

  2. 「保護の設定」をクリックします。

    「セッション・ステート保護」ウィザードが表示されます。

  3. 「操作の選択」で、「構成」を選択して、「次へ」をクリックします。

  4. 「ページ・アクセス保護」で、次のいずれかを選択します。

    • 制限なし: セッション・ステート引数(Request、Clear Cache、Name/Values)の有無にかかわらず、URLを使用してページを要求できます。

    • 引数にチェックサムが必要: URLにRequest、Clear CacheまたはName/Value引数が表示されている場合は、チェックサムも提供する必要があります。チェックサム・タイプは、引数として渡されるすべてのアイテムの最も厳密なセッション・ステート保護属性と互換性がある必要があります。

    • 引数使用不可: URLを使用してページを要求できますが、Request、Clear CacheまたはName/Value引数は許可されません。

    • URLアクセスなし: URLを使用してページにアクセスできませんが、ページは、URLリダイレクトを行わない「ページにブランチ」ブランチ・タイプのターゲットにできます。

  5. 「アプリケーション・アイテム保護」で、次のいずれかの項目を選択します。

    • 制限なし: URLまたはフォームでアイテム名/値を渡して、アイテムのセッション・ステートを設定できます。URLにチェックサムは必要ありません。

      注意: Ajaxを使用してこのアイテムの値をセッション・ステートに設定する必要がある場合は、アイテムに対して「制限なし」保護レベルを使用する必要があります(たとえば「動的アクション」の場合は、「値の設定」、「送信するページ・アイテム」または「カスケードLOV」、「送信するページ・アイテム」)。

    • チェックサムが必要 - アプリケーション・レベル: スキーマ固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。ユーザー・レベル・チェックサムまたはセッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: ユーザー・レベル: ワークスペース、アプリケーションおよびユーザー固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。セッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: セッション・レベル: カレント・セッション固有のチェックサムも入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。カレント・セッションで生成されたチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • 制限付き - ブラウザから設定できない: URLまたはPOSTDATAを使用してアイテムを変更できません。アイテムの値を内部プロセス、計算などに設定できる方法を制限する場合は、このオプションを使用します。この属性は、データ・エントリ・アイテムとして使用できないアイテムのみに適用され、セッション・ステート保護が無効になっていても常に監視されます。

      次の表示形式タイプのアプリケーション・アイテムまたはページ・アイテムについては、この属性を使用します。

      • テキストとして表示(特殊文字をエスケープし、状態は保存しない)

      • テキストとして表示(状態は保存しない)

      • テキストとして表示(LOVに基づき、状態は保存しない)

      • テキストとして表示(PL/SQLに基づき、状態は保存しない)

      • テキスト・フィールド(無効、状態を保存しない)

      • HTML表の停止および開始(ラベルのみ表示)

  6. 「ページのデータ・エントリ・アイテム保護」で、次のいずれかの項目を選択します。

    • 制限なし: URLまたはフォームでアイテム名/値を渡して、アイテムのセッション・ステートを設定できます。URLにチェックサムは必要ありません。

      注意: Ajaxを使用してこのアイテムの値をセッション・ステートに設定する必要がある場合は、アイテムに対して「制限なし」保護レベルを使用する必要があります(たとえば「動的アクション」の場合は、「値の設定」、「送信するページ・アイテム」または「カスケードLOV」、「送信するページ・アイテム」)。

    • チェックサムが必要 - アプリケーション・レベル: スキーマ固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。ユーザー・レベル・チェックサムまたはセッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: ユーザー・レベル: ワークスペース、アプリケーションおよびユーザー固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。セッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: セッション・レベル: カレント・セッション固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。カレント・セッションで生成されたチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

  7. 「ページの表示専用アイテム保護」で、次のいずれかの項目を選択します。

    • 制限なし: URLまたはフォームでアイテムの名前/値を渡して、アイテムを設定できます。URLにチェックサムは必要ありません。

      注意: Ajaxを使用してこのアイテムの値をセッション・ステートに設定する必要がある場合は、アイテムに対して「制限なし」保護レベルを使用する必要があります(たとえば「動的アクション」の場合は、「値の設定」、「送信するページ・アイテム」または「カスケードLOV」、「送信するページ・アイテム」)。

    • チェックサムが必要 - アプリケーション・レベル: スキーマ固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。ユーザー・レベル・チェックサムまたはセッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: セッション・レベル: カレント・セッション固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。カレント・セッションで生成されたチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: ユーザー・レベル: ワークスペース、アプリケーションおよびユーザー固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。セッション・レベル・チェックサムも使用できます。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • 制限付き - ブラウザから設定できない: URLまたはPOSTDATAを使用してアイテムを変更できません。アイテムの値を内部プロセス、計算などに設定できる方法を制限する場合は、このオプションを使用します。この属性は、セッション・ステート保護が無効になっていても、常に監視されます。

      次の表示形式タイプについては、この属性を使用します。

      • テキストとして表示(特殊文字をエスケープし、状態は保存しない)

      • テキストとして表示(状態は保存しない)

      • テキストとして表示(LOVに基づき、状態は保存しない)

      • テキストとして表示(PL/SQLに基づき、状態は保存しない)

      • テキスト・フィールド(無効、状態を保存しない)

      • HTML表の停止および開始(ラベルのみ表示)

  8. 「次へ」をクリックします。

  9. 「終了」をクリックします。

15.2.5.3.3 ページのセッション・ステート保護の構成

ページのセッション・ステート保護を構成するには、次のステップを実行します。

  1. 「セッション・ステート保護」ページにナビゲートします。

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

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

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

    4. 「セキュリティ」で、「セッション・ステート保護」を選択します。

      セッション・ステート保護ページが表示されます。

  2. 「ページ」アイコンをクリックします。

  3. ページ上部の検索バーを使用してページの概観をカスタマイズできます。使用可能なコントロールは次のとおりです。

    • 「検索」アイコン: 虫めがねに似ています。このアイコンをクリックして、検索を特定の列のみに絞ります。すべての列を検索するには、「すべての列」を選択します。

    • テキスト領域: 大/小文字を区別しない検索基準(ワイルドカード文字は暗黙的に定義される)を入力し、「実行」をクリックします。

    • 「実行」ボタン: 検索を実行したり、フィルタを適用します。

    • 「チャートの表示」。このコントロールを使用して、情報をチャートで表示します。

    • アクション・メニュー: アクション・メニューを表示します。このメニューを使用して、この対話モード・レポートをカスタマイズします。「「アクション」メニューについて」を参照してください。

  4. ページ番号を選択します。

    「ページおよびアイテム保護の設定」ページが表示されます。次の情報がページの上部に表示されます。

    • アプリケーションIDおよび名前

    • セッション・ステート保護のステータス(有効または無効)

    • ページ番号

    • ページ名

  5. 「ページ・アクセス保護」で、次のいずれかを選択します。

    • 制限なし: セッション・ステート引数(Request、Clear Cache、Name/Values)の有無にかかわらず、URLを使用してページを要求できます。

    • 引数にチェックサムが必要: URLにRequest、Clear CacheまたはName/Value引数が表示されている場合は、チェックサムも提供する必要があります。チェックサム・タイプは、引数として渡されるすべてのアイテムの最も厳密なセッション・ステート保護属性と互換性がある必要があります。

    • 引数使用不可: URLを使用してページを要求できますが、Request、Clear CacheまたはName/Value引数は許可されません。

    • URLアクセスなし: URLを使用してページにアクセスできませんが、ページは、URLリダイレクトを行わない「ページにブランチ」ブランチ・タイプのターゲットにできます。

  6. 「アイテム・タイプ」で、「データ・エントリ・アイテム」または「表示専用アイテム」を選択します。

    データ・エントリ・アイテムは、フォームを使用して変更できるアイテムであり、非表示アイテムもこれに含まれます。表示専用アイテムはレンダリングされるだけで、フォームとともに送信されません。

  7. 「データ・エントリ・アイテム」を選択した場合は、各アイテムのセッション・ステート保護レベルを選択します。

    • 制限なし: URLまたはフォームでアイテム名/値を渡して、アイテムのセッション・ステートを設定できます。URLにチェックサムは必要ありません。

      注意: Ajaxを使用してこのアイテムの値をセッション・ステートに設定する必要がある場合は、アイテムに対して「制限なし」保護レベルを使用する必要があります(たとえば「動的アクション」の場合は、「値の設定」、「送信するページ・アイテム」または「カスケードLOV」、「送信するページ・アイテム」)。

    • チェックサムが必要 - アプリケーション・レベル: スキーマ固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。ユーザー・レベル・チェックサムまたはセッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: ユーザー・レベル: ワークスペース、アプリケーションおよびユーザー固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。セッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: セッション・レベル: カレント・セッション固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。カレント・セッションで生成されたチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

  8. 「表示専用アイテム」を選択した場合は、各アイテムのセッション・ステート保護レベルを選択します。

    • 制限なし: URLまたはフォームでアイテムの名前/値を渡して、アイテムを設定できます。URLにチェックサムは必要ありません。

      注意: Ajaxを使用してこのアイテムの値をセッション・ステートに設定する必要がある場合は、アイテムに対して「制限なし」保護レベルを使用する必要があります(たとえば「動的アクション」の場合は、「値の設定」、「送信するページ・アイテム」または「カスケードLOV」、「送信するページ・アイテム」)。

    • 制限付き - ブラウザから設定できない: URLまたはPOSTDATAを使用してアイテムを変更できません。アイテムの値を内部プロセス、計算などに設定できる方法を制限する場合は、このオプションを使用します。この属性は、セッション・ステート保護が無効になっていても、常に監視されます。次の表示形式タイプについては、この属性を使用します。

      • テキストとして表示(特殊文字をエスケープし、状態は保存しない)

      • テキストとして表示(状態は保存しない)

      • テキストとして表示(LOVに基づき、状態は保存しない)

      • テキストとして表示(PL/SQLに基づき、状態は保存しない)

      • テキスト・フィールド(無効、状態を保存しない)

      • HTML表の停止および開始(ラベルのみ表示)

    • チェックサムが必要 - アプリケーション・レベル: スキーマ固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。ユーザー・レベル・チェックサムまたはセッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: ユーザー・レベル: ワークスペース、アプリケーションおよびユーザー固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。セッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: セッション・レベル: カレント・セッション固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。カレント・セッションで生成されたチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

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

15.2.5.3.4 ページ・アイテムのセッション・ステート保護の構成

アイテムのセッション・ステート保護を構成するには、次のステップを実行します。

  1. 「セッション・ステート保護」ページにナビゲートします。

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

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

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

    4. 「セキュリティ」で、「セッション・ステート保護」を選択します。

      セッション・ステート保護ページが表示されます。

  2. 「ページ・アイテム」アイコンをクリックします。

  3. ページ上部の検索バーを使用してページの概観をカスタマイズできます。使用可能なコントロールは次のとおりです。

    • 「検索」アイコン: 虫めがねに似ています。このアイコンをクリックして、検索を特定の列のみに絞ります。すべての列を検索するには、「すべての列」を選択します。

    • テキスト領域: 大/小文字を区別しない検索基準(ワイルドカード文字は暗黙的に定義される)を入力し、「実行」をクリックします。

    • 「実行」ボタン: 検索を実行したり、フィルタを適用します。

    • アクション・メニュー: アクション・メニューを表示します。レポート・ビューをカスタマイズするにはこのメニューを使用します。「「アクション」メニューについて」を参照してください。

  4. ページ番号を選択します。

    ページおよびアイテムのセッション・ステート保護の編集ページが表示されます。次の情報がページの上部に表示されます。

    • アプリケーションIDおよび名前

    • セッション・ステート保護のステータス(有効または無効)

    • ページ番号

    • ページ名

  5. 「ページ・アクセス保護」で、各アイテムのセッション・ステート保護レベルを選択します。

    • 制限なし: セッション・ステート引数(Request、Clear Cache、Name/Values)の有無にかかわらず、URLを使用してページを要求できます。

    • 引数にチェックサムが必要: URLにRequest、Clear CacheまたはName/Value引数が表示されている場合は、チェックサムも提供する必要があります。チェックサム・タイプは、引数として渡されるすべてのアイテムの最も厳密なセッション・ステート保護属性と互換性がある必要があります。

    • 引数使用不可: URLを使用してページを要求できますが、Request、Clear CacheまたはName/Value引数は許可されません。

    • URLアクセスなし: URLを使用してページにアクセスできませんが、ページは、URLリダイレクトを行わない「ページにブランチ」ブランチ・タイプのターゲットにできます。

  6. 「アイテム・タイプ」で、「データ・エントリ・アイテム」または「表示専用アイテム」を選択します。

    データ・エントリ・アイテムは、フォームを使用して変更できるアイテムであり、非表示アイテムもこれに含まれます。表示専用アイテムはレンダリングされるだけで、フォームとともに送信されません。

  7. 「データ・エントリ・アイテム」を選択した場合は、各アイテムのセッション・ステート保護レベルを選択します。

    • 制限なし: URLまたはフォームでアイテム名/値を渡して、アイテムのセッション・ステートを設定できます。URLにチェックサムは必要ありません。

      注意: Ajaxを使用してこのアイテムの値をセッション・ステートに設定する必要がある場合は、アイテムに対して「制限なし」保護レベルを使用する必要があります(たとえば「動的アクション」の場合は、「値の設定」、「送信するページ・アイテム」または「カスケードLOV」、「送信するページ・アイテム」)。

    • チェックサムが必要 - アプリケーション・レベル: スキーマ固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。ユーザー・レベル・チェックサムまたはセッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: ユーザー・レベル: ワークスペース、アプリケーションおよびユーザー固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。セッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: セッション・レベル: カレント・セッション固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。カレント・セッションで生成されたチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

  8. 「表示専用アイテム」を選択した場合は、各アイテムのセッション・ステート保護レベルを選択します。

    • 制限なし: URLまたはフォームでアイテムの名前/値を渡して、アイテムを設定できます。URLにチェックサムは必要ありません。

      注意: Ajaxを使用してこのアイテムの値をセッション・ステートに設定する必要がある場合は、アイテムに対して「制限なし」保護レベルを使用する必要があります(たとえば「動的アクション」の場合は、「値の設定」、「送信するページ・アイテム」または「カスケードLOV」、「送信するページ・アイテム」)。

    • 制限付き - ブラウザから設定できない: URLまたはPOSTDATAを使用してアイテムを変更できません。アイテムの値を内部プロセス、計算などに設定できる方法を制限する場合は、このオプションを使用します。この属性は、セッション・ステート保護が無効になっていても、常に監視されます。次の表示形式タイプについては、この属性を使用します。

      • テキストとして表示(特殊文字をエスケープし、状態は保存しない)

      • テキストとして表示(状態は保存しない)

      • テキストとして表示(LOVに基づき、状態は保存しない)

      • テキストとして表示(PL/SQLに基づき、状態は保存しない)

      • テキスト・フィールド(無効、状態を保存しない)

      • HTML表の停止および開始(ラベルのみ表示)

    • チェックサムが必要 - アプリケーション・レベル: スキーマ固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。ユーザー・レベル・チェックサムまたはセッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: ユーザー・レベル: ワークスペース、アプリケーションおよびユーザー固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。セッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: セッション・レベル: カレント・セッション固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。カレント・セッションで生成されたチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

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

15.2.5.3.5 アプリケーション・アイテムのセッション・ステート保護の構成

アプリケーション・アイテムのセッション・ステート保護を構成するには、次のステップを実行します。

  1. 「セッション・ステート保護」ページにナビゲートします。

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

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

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

    4. 「セキュリティ」で、「セッション・ステート保護」を選択します。

      セッション・ステート保護ページが表示されます。

  2. 「アプリケーション・アイテム」アイコンをクリックします。

  3. ページ上部の検索バーを使用してページの概観をカスタマイズできます。使用可能なコントロールは次のとおりです。

    • 「検索」アイコン: 虫めがねに似ています。このアイコンをクリックして、検索を特定の列のみに絞ります。すべての列を検索するには、「すべての列」を選択します。

    • テキスト領域: 大/小文字を区別しない検索基準(ワイルドカード文字は暗黙的に定義される)を入力し、「実行」をクリックします。

    • 「実行」ボタン: 検索を実行したり、フィルタを適用します。

    • アクション・メニュー: アクション・メニューを表示します。レポート・ビューをカスタマイズするにはこのメニューを使用します。「「アクション」メニューについて」を参照してください。

  4. アプリケーション・アイテムを選択します。

  5. 「セキュリティ」で、「セッション・ステート保護」リストから次のいずれかを選択します。

    • 制限なし: URLまたはフォームでアイテム名/値を渡して、アイテムのセッション・ステートを設定できます。URLにチェックサムは必要ありません。

      注意: Ajaxを使用してこのアイテムの値をセッション・ステートに設定する必要がある場合は、アイテムに対して「制限なし」保護レベルを使用する必要があります(たとえば「動的アクション」の場合は、「値の設定」、「送信するページ・アイテム」または「カスケードLOV」、「送信するページ・アイテム」)。

    • 制限付き - ブラウザから設定できない: URLまたはPOSTDATAを使用してアイテムを変更できません。アイテムの値を内部プロセス、計算などに設定できる方法を制限する場合は、このオプションを使用します。この属性は、データ・エントリ・アイテムとして使用できないアイテムのみに適用され、セッション・ステート保護が無効になっていても常に監視されます。次の表示形式タイプのアプリケーション・アイテムについては、この属性を使用します。

      • テキストとして表示(特殊文字をエスケープし、状態は保存しない)

      • テキストとして表示(状態は保存しない)

      • テキストとして表示(LOVに基づき、状態は保存しない)

      • テキストとして表示(PL/SQLに基づき、状態は保存しない)

      • テキスト・フィールド(無効、状態を保存しない)

      • HTML表の停止および開始(ラベルのみ表示)

    • チェックサムが必要 - アプリケーション・レベル: スキーマ固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。ユーザー・レベル・チェックサムまたはセッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: ユーザー・レベル: ワークスペース、アプリケーションおよびユーザー固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。セッション・レベル・チェックサムも使用できます(次の項目を参照)。現行のワークスペースの別のセッションで同じアプリケーションを実行しているユーザーが生成したチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

    • チェックサムが必要: セッション・レベル: カレント・セッション固有のチェックサムを入力する場合は、URLでアイテムの名前/値を渡して、アイテムのセッション・ステートを設定できます。カレント・セッションで生成されたチェックサムを含むURLによってのみ、このアイテムを設定できるようにする場合に、このオプションを使用します。

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