2010-11-28 3 views
1

私はテーブルの列を表示するウィンドウを持っている....「欄に拒否された権限を選択」避けるためにデータウィンドウ内のDBの列権限をどのように扱うかのデータウィンドウ

をデータベース列の特権を取り扱い、ユーザー/ロール権限が異なります特定の列については、データベースレベルのビジネスルールに従って設定されます。

問題は、特定の列で「select権限」を持たないシステムにログインしているユーザーがエラーメッセージ "select xyz列でアクセス権が拒否されました"が表示され、データウィンドウで列の行のみを取得する情報が取得されません。 e to ...

誰も、同様のケースでdatawindowで列権限を処理する方法を知っていますか?

答えて

1

これを処理する簡単な方法はありません。

あなたがアイデアを探しているかどうかはわかりませんが、その種類はいくつありますか、どのようなバリエーションがあり、どのようにダイナミックにソリューションを作りたいかによって異なります。

DBMSレベルで列レベルのアクセス許可を使用していたショップでは一度も働いたことがありませんが、さまざまな役割にロックされた列グループがあると想定しています。一握り(例えば3つ)のバリエーションがあったなら、私はたぶん3つのバージョンのデータオブジェクトを作成し、検索する前に適切なものを交換するだけです。

そうしないと、より困難なオプションは、ロールまたはシステム・テーブルを何らかの形でクエリすることによって検索する前に、データオブジェクトを動的に変更することです。

もう1つのアイデアは、それがうまくいかないかどうかは、SQLからデータオブジェクトを動的に作成することです。createfromsqlという名前の関数があり、xyzからselect *を使用しますが、これは表示専用です。そうしないと、データオブジェクトを更新可能にしてすべての更新可能な列を設定するために、多くの動的な変更が行われます。

幸運。

関連する問題