私は現在、次回にマルチユーザーアクセスに向かう予定の小規模ビジネスデータベースアプリケーションを開発中です。行単位でデータベースアクセス制御を実装する方法
データベースには、主に、追加の情報を含む2つの結合テーブルを含むプロジェクト(プロジェクトテーブル内)が含まれています。
マルチユーザー操作に関するお客様の要件は、主にプロジェクトレベルに基づいた細かいアクセス制御(ユーザーは一部のプロジェクトにのみアクセスできる)です。私はこれを実装する方法が不思議です。
状況を少し難しくするのは、データベースアクセスが主に、(nhibernateに似ている)必要なSQLクエリを構築する自己開発の永続性レイヤーで起こることです。
唯一の解決策は、アクセスチェックを実装するデータベース内にストアドプロシージャ(または読み取りアクセス用のビュー)を実装することです。永続化レイヤーは現在、テーブルへのフルアクセスに依存しているため、各ビューに対して1つの挿入ビューと1つの削除コマンドを実装し、(INSERT/DELETEクエリを作成する代わりに)これらのコマンドを使用するために、 。
私たちのコードを変更する必要がない他のソリューションがあります場合、私は思ったんだけど...