この記事でわかること
- 制限ルールの概要
- 制限ルールの設定方法
- 制限ルールの注意事項
今回はWinter’22で実装された制限ルールについて解説していきます。
なしば
組織の共有設定や共有ルールとは少し毛色が違うので注意しましょう。
制限ルールとは
制限ルールは、特定のユーザに対して、条件に一致するレコードにのみアクセスを許可することができる機能です。
共有ルールとの違いは次のようなイメージです。
共有ルール:アクセス権のないレコードに対してアクセス権を付与する(足し算)
制限ルール:アクセス権があるレコードに対してアクセス権を制限する(引き算)
制限ルールを使用することで、組織の共有設定が「公開/参照・更新可能」のレコードでも特定条件では非公開にすることができるようになります。
使用可能なオブジェクト
この記事を書いている現在は次のオブジェクトで使用可能となっています。
- カスタムオブジェクト
- 契約
- ToDo
- 行動
- タイムシート
- タイムシートエントリ
制限ルールの適用範囲
制限ルールは次の機能に対して適用されます。
- リストビュー
- ルックアップ
- 関連リスト
- レポート
- 検索
- SOQL
- SOSL
制限ルールの設定方法
制限ルールはオブジェクトマネージャーから設定します。
制限ルールの設定内容
制限ルールで設定する内容は次の通りです。
ルール名 | 制限ルールの表示ラベル |
氏名 | 制限ルールのAPI参照名 |
説明 | 制限ルールの説明 |
ユーザ条件 | 制限ルールを適用するユーザの条件 ※当記事執筆時点では条件種別は「ユーザ条件のみ」設定可能 |
Record Criteria | 指定されたユーザに対して表示するレコードの条件 |
なしば
新しい機能だからなのか、若干翻訳が怪しいです……
制限ルールの注意事項
最後に制限ルールを利用する際の制限や注意事項をまとめて紹介します。
- 使用できるのはカスタムオブジェクトと一部の標準オブジェクトのみ
- Enterprise Edition と Developer Edition ではオブジェクトあたり最大 2 つの制限ルールを作成可能
- Performance Edition と Unlimited Edition ではオブジェクトあたり最大 5 つの制限ルールを作成可能
- 親レコードに対して制限が適用されても子レコードのアクセスには影響しない
- AND および OR 演算子は使用できない
- 数式項目を条件に使用できない
- 制限されたレコードも検索したときの検索結果の件数には含まれる
なしば
共有ルールと違って子レコードのアクセスを制限することは出来ないので特に注意が必要です。
まとめ
今回は特定ユーザに対してアクセス権を厳しく設定することができる制限ルールについて解説しました。
個人的にはこの機能でアクセス権を制御するのは不安があるので、共有設定は今まで通り厳しめに設定するのが良いかと思いました。
そのうえで、ダミーデータや目標データが共存している場合に隠すために利用するのが便利な使い方なのかと思います。
ユーザ条件の条件種別に「ユーザ条件のみ」しか選べなかったり、翻訳が怪しかったりしますが、新しい機能なので今後のバージョンアップでの強化にも期待しましょう!