2011-12-09 11 views
0

データ・ソースとしてクエリー(組み込みクエリー・マネージャー)を使用するXML Publisherテンプレートがあります。クエリでは、機密データを含むカスタムビューが使用されます。このレポートは、管理者が直接レポートの情報を表示するために使用されます。これは、ページ上のパラメータを設定することによって実行されます。レコードをクエリで使用できるようにする必要があるため、クエリを作成する権限を持つマネージャにもレコードが表示され、そのレコード以外の従業員のデータも表示されます。また、クエリーは公開されている必要があります。クエリーを実行するアクセス権を持つ人も誰でも利用できるようになります。私たちのことができるようにしたいと思います:PeopleSoft XML Publisher - クエリー・セキュリティ

  1. は、ページを経由して、クエリを使用できるようにします(私は、私はこの1つを持っていると思います - ページは、WHERE句で比較される追加のパラメータを渡しますクエリの)

  2. は誰からカスタムレコードを非表示にするが、クエリ/ゼネラルマネージャーまでしか報告人を見ることができるはずとして、我々は典型的な行レベルのセキュリティを使用することはできません

を報告彼らへ。

おかげで

答えて

0

ユーザーが特定のレコードを照会しようとすると(照会マネージャーを使用して)表示されているデータに対するセキュリティーを有効にするには、データにアクセスしようとしているユーザーを確認できる照会セキュリティー・レコードを使用します。一般的に、ダイナミックビューがここで使用され、OPRIDをチェックしてデータにアクセスしようとし、それに応じてデータを提供することができます。 QuerymanagerはSQLでクエリセキュリティレコードを自動的に取得します。

0

私はずっとXML Publisherを使用していないが、私はこの(マイナス機密性の要件)に似た何かをしなければなりませんでした。

マネージャで働くすべての人が同じDepartment IDで設定されていますか? PSOPRDEFNテーブルには、EmplIDにマッピングされるOPRID/User IDが格納されています。そのIDをJOBテーブルにリンクすると、EmplIDのDeptIDを取得できます。

したがって、クエリの条件を現在のユーザーの部門IDに制限するものに設定します。私はOracle 10gでそれを行う方法に関する構文を見つけましたが、試してみると11gでは機能していないようです。 http://www.techonthenet.com/oracle/functions/user.php http://www.techonthenet.com/oracle/functions/sys_context.php

関連する問題