テーブルまたはビューのレコードについて、各ロールや特定のユーザーごとの表示・更新・削除権限が設定できます。
行の権限を編集する場合、組み込みのテーブルビューでは、表示権限のみが編集できます。
ここでは、ユーザー情報を記録したテーブルについて、次のような権限を設定する例で説明します。
作成者は、自分自身の作成したレコードを閲覧・編集できるが、削除はできない。
作成者のリーダーは、すべてのレコードを閲覧できるが、編集・削除はできない。
Administratorは、すべてのレコードを閲覧・編集・削除できる。
各ユーザーは、他のユーザーのレコードは閲覧できない。
組織について以下のように設定します(作成者のリーダー用)。
組織名 |
親組織 |
Office |
- |
部署1 |
Office |
部署2 |
Office |
組織名 |
メンバー |
リーダーかどうか |
Office |
マネージャー |
true |
部署1 |
リーダー1 |
true |
部署1 |
ユーザー1 |
false |
部署2 |
リーダー2 |
true |
部署2 |
ユーザー2 |
false |
「社員情報」という名前でテーブルを作成します。
右ペインで[レコードレベルのアクセス制御]をクリックします。
「レコードレベルのアクセス制御を有効化する」をチェックして以下のように設定し、[OK]をクリックします。
テーブル「社員情報」からページを作成し、[ホーム]→[(デバッグ)]で確認します。
ユーザー1でログインし、2つのレコードを作成してみます。
ユーザー2でログインすると、ユーザー1の作成した2つのレコードを閲覧できません。ユーザー2の権限で、1つのレコードを追加してみます。
リーダー1でログインすると、ユーザー1の作成した2つのレコードを閲覧できますが、編集はできません。リーダー1の権限で、1つのレコードを追加してみます。
マネージャーでログインすると、ユーザー1、ユーザー2、リーダー1の作成したレコードをすべて閲覧できますが、編集はできません。
Administratorでログインすると、すべてのユーザーが作成したすべてのレコードを閲覧・編集・削除できます。