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

前
 
次
 

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

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

この項に含まれる内容は次のとおりです。

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

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

使用可能なパスワード・アイテム・タイプには、次のものがあります。

  • パスワード - フィールドに入力されたテキストを非表示にします。ページの送信時に、セッション・ステートに値が保存されます。

  • パスワード([Enter]を押すと送信) - フィールドに入力されたテキストを非表示にします。[Enter]を押すと、ページが送信されます。

  • パスワード(状態は保存しない) - フィールドに入力されたテキストを非表示にします。セッション・ステートに値が保存されません。

  • パスワード([Enter]を押すと送信し、状態は保存しない): フィールドに入力されたテキストを非表示にします。[Enter]を押すと、ページが送信されます。セッション・ステートに値が保存されません。

「パスワード」および「パスワード([Enter]を押すと送信)」では、ページの送信時にデータベース表にパスワードが保存されます。これらのパスワード・アイテム・タイプは、セッション中に他のページで使用するためにセッション・ステートのパスワードが必要になる場合にのみ使用します。

「パスワード(状態は保存しない)」および「パスワード([Enter]を押すと送信し、状態は保存しない)」では、データベース表にパスワードが保存されません。これらのパスワード・アイテム・タイプは、送信したパスワードの値が同じページでの送信後のページ・プロセスでのみ使用され、セッション中に要求されることがない場合にのみ使用します。

アプリケーションでパスワードの値を参照および取得する必要がある場合は、「セッション・ステートに暗号化された値を保存」属性を「はい」に設定します。詳細は、「セッション・ステートおよびセキュリティの概要」を参照してください。

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

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

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

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

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

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

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

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

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

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

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

  5. 次のステップを実行して、「パスワード・アイテム」レポートを表示します。

    1. 「ページ・コンポーネント」を選択します。

    2. 「アイテム」で、「パスワード・アイテム」をクリックします。

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

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

    1. 「アプリケーション間」を選択します。

    2. 「アイテム」で、「パスワード・アイテム」をクリックします。

  7. 次のステップを実行して、「パスワード・アイテム」レポートを表示します。

    1. 「アプリケーション間」を選択します。

    2. 「アイテム」で、「セキュリティ・プロファイル」をクリックします。

      「問題を引き起こす可能性のあるパスワード・アイテム」列を確認します。

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

セッションIDでのゼロの使用について

Oracle Application Expressアプリケーション・ページにアクセスすると、セッションIDを含む多数のリンクがWebブラウザのロケーション・ウィンドウに表示されます。アプリケーションがパブリックにアクセス可能であり、電子メールやメッセージング・サービスなどを使用してユーザーが他のアプリケーション・ユーザーにいずれかのリンクを伝えた場合、受信者はそのリンクを使用して即座に元のユーザーのセッションを共有できるようになります。この場合、両方のユーザーがアプリケーションを使用すると、画面の動作が予測不可能で再現が困難なものになるため、いずれのユーザーにとっても負の影響となります。これを回避するため、ログイン認証の入力が不要なすべてのアプリケーションに対して、ゼロ・セッションID機能を使用することをお薦めします。詳細は、「セッションIDにゼロを使用したブックマークの容易化」を参照してください。

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

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

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

この項に含まれる内容は次のとおりです。

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

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

安全なアイテム表示タイプの概要

セッション・ステートがこのように参照される場合、ページに表示される値には、参照されるアイテムに次の安全なアイテム表示タイプのいずれかが含まれている場合にエスケープされる特殊文字(<>&")が含まれません。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

<b>ABABABAB</b>

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

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

動的出力の保護

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

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

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

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

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

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

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

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

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

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

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

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

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バイトを超える値を暗号化しようとすると、エラー・メッセージが表示されます。

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

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

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

この項に含まれる内容は次のとおりです。

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

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

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

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

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

この項に含まれる内容は次のとおりです。

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

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

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

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

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

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

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

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

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

  7. セキュリティ属性の編集ページにナビゲートして、ページおよびアイテムのセキュリティ属性を設定します。


ヒント:

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

「ブックマークの無効化」ボタン

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


ヒント:

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

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

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

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

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

この項に含まれる内容は次のとおりです。


ヒント:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  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にチェックサムは必要ありません。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  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にチェックサムは必要ありません。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  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にチェックサムは必要ありません。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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