階層的な ACL データを含むデータベースを実装したい
マイ テーブル
USERS: idUser、ユーザー名、...GROUPS: idGroups、名前...GROUPSENTITIES: idGroup、idChild、childType (ユーザー用に 1 つ、グループ用に 2 つ)ROLES: idRole,名前...ROLESENTITIES: idRole、IsDeny、idChild、childType (ユーザー用に 1 つ、グループ用に 2 つ)すべてのユーザーは 0 個以上のグループに所属できます
- すべてのグループは 0 個以上のグループに属することができます
- すべてのユーザーとすべてのグループは 0 個以上のロールに属することができ、ロールは許可または拒否できます
- 明示的な拒否が見つかった場合、ロールは拒否されます
この種のデータを保存するにはどうすればよいですか? 私のデザインは正しいですか?
許可されたすべての役割を持つユーザーのリストを取得することは可能ですか?
データベースからこの情報を抽出するためのクエリ (T-SQL ベース) を書いてください。
前もって感謝します