3
PostgreSQL(または一般的なSQL)にビジネスロジックのアクセス許可を実装する方法は?
アイテムのテーブルがあると仮定しましょう: CREATE TABLE items ( item serial PRIMARY KEY, ... ); 次に、各アイテムの「アクセス許可」の概念を紹介します(ここでは、データベースアクセス許可についてではなく、そのアイテムのビジネスロジック許可について説明していることに注意してください)。各アイテムにはデフォルトの許可があり、デフォルトの許可よりも優先されるユーザーごとの許可もあります。 私はこれを実装するいくつかの方法を考えて、次の解決策を考え出しましたが、どれが最良であり、なぜかについてはわかりません。 1)ブール解 各権限にブール列を使用します。 CREATE TABLE items ( item serial PRIMARY KEY, can_change_description boolean NOT NULL, can_change_price boolean NOT NULL, can_delete_item_from_store boolean NOT NULL, ... ); CREATE TABLE item_per_user_permissions ( item int NOT NULL REFERENCES items(item), user int NOT …
16
postgresql
enum