3

Application Express と Oracle Database Enterprise を使用してアプリケーションを構築します。VPD は Context を使用してスキーマに実装されています。

アプリケーション内のデータを表示することはできませんが、SQL ステートメントを使用して表示することはできます

VPD 、 Context 、または On log on トリガーを使用する場合の Apex の問題はありますか?

4

2 に答える 2

2

Apex でこれを行う適切な方法は、アプリケーション セキュリティ設定の VPD 属性を使用することです。

Shared Components > Edit Security Attributes > Security

「セキュリティ コンテキストを設定するための仮想プライベート データベース PL/SQL 呼び出し」(またはその効果に関するもの) というラベルの付いたセクションがあり、そこに VPD コンテキストを設定するコードを配置します。ページビューごとに Apex エンジンによって実行されます。

于 2010-12-07T09:21:50.333 に答える
1

おそらく、ログオントリガーが実行されたときと関係があります。

通常、Webアプリケーション(Apexを含む)には、アプリケーションに接続しているユーザーごとにデータベースセッションがありません。むしろ、データベースセッションのプール(おそらく10)があり、エンドユーザーがデータベース要求を発行するときにそれらのいずれかを使用します。

ログオンに使用されるデータベースユーザーと使用される可能性のあるセッションの数は、Apexの実装方法(組み込みPL / SQLゲートウェイ、Apexリスナー、またはOracle HTTPサーバー)に応じてすべて構成可能である必要があります。

つまり、ログオントリガーは、CONTEXT変数を設定するのにおそらく間違った場所です。

于 2010-07-22T23:18:24.800 に答える