制限ルールとスコープルールと共有ルールの違い
共有ルールはアクセスを広げ、制限ルールは狭め、スコープルールは既定の表示を変えるだけ。3つの違いと、それぞれをいつ使うべきかを解説します。
Salesforceの共有モデルのほとんどは、アクセスを開くことしか知りません。制限ルールとスコープルールは、それを変える比較的新しいツールですが、両者の役割はまったく異なり、混同しがちです。ここでは、3つすべての関係を整理します。
一言でわかる対応表
- 共有ルール — アクセスを開く。本来は見えないユーザーにレコードを付与します。
- 制限ルール — アクセスを減らす。本来は閲覧を許可されているレコードをフィルターで除外します。
- スコープルール — 表示を絞り込む。アクセスを変えずに、既定で表示されるレコードを変えます。
このうち2つはセキュリティに影響し、1つは影響しません。ここを取り違えないことが肝心です。
共有ルール:アクセスを開く
共有ルールは組織の共有設定(OWD)の上に位置し、所有者や条件に基づいて追加のアクセスを付与します。共有ルールはアクセスを広げることしかできず、決して狭めません。共有ルールとロール階層の比較をおさらいしたい場合は、共有ルールとロール階層を参照してください。
これは、レコードアクセスモデルの中核にある、加算的で「最も緩い権限が優先される」という振る舞いです。
制限ルール:アクセスを減らす
制限ルールは、「Salesforceの共有はアクセスを開くことしかできない」という原則の例外です。制限ルールは、ユーザーが閲覧を許可されるレコードを定義し、共有モデルが付与したすべてのものの上に適用されます。つまり、結果を実質的にフィルターするのです。
組織の共有設定(OWD)、ロール階層、共有ルールが合わさってユーザーに10,000件のレコードを表示する場合でも、制限ルールはそれをその条件に一致する一部分まで絞り込めます。
例。 サポート担当者は共有ルールによってケースへの幅広いアクセス権を持っていますが、その中の業務委託者は機密でないケースだけを見るべきだとします。Caseに対する制限ルール(業務委託者の権限セットに対して Confidential = false)は、共有が技術的には付与していても、機密ケースを彼らの閲覧範囲から取り除きます。
これは、「どうやってアクセスを取り除くか」が問いになったときに手を伸ばすべきツールです。
スコープルール:セキュリティではなくフォーカス
スコープルールは、所有者、ロール、地域などの条件に基づいて、リストビュー、検索、レポートに既定で表示されるレコードを制御します。重要なのは次の点です。
スコープルールはアクセスを制限しません。ユーザーはスコープを「アクセスできるすべてのレコード」に切り替えて、共有が付与するすべてを表示できます。
これは生産性の機能です。忙しい担当者に、強制することなく、まず自分の地域を表示する、といった使い方ができます。もしユーザーにレコードを見せないようにする必要があるなら、スコープルールは適切なツールではありません。制限ルールを使ってください。
横並び比較
| 共有ルール | 制限ルール | スコープルール | |
|---|---|---|---|
| アクセスへの効果 | 広げる | 減らす | なし |
| セキュリティ制御? | はい | はい | いいえ(フォーカスのみ) |
| ユーザーが上書きできる? | いいえ | いいえ | はい(スコープ切り替え) |
| 方向 | アクセスを追加 | アクセスを削除 | 既定の表示をフィルター |
| 一般的な上限 | 多数 | オブジェクトごとに有効なものが約2つ | オブジェクトごとに有効なものが約2つ |
組み合わせて使う
現実的なオブジェクトでは、3つすべてを使うこともあります。非公開(Private)のOWD、チームに必要なアクセスを与える共有ルール、業務委託者から機密性の高い一部分を切り分ける制限ルール、そして各ユーザーが既定で自分の地域に着地するようにするスコープルールです。それぞれが1つの役割を担い、組み合わせることで、ユーザーが何を見られるかと、まず何を見るかの両方を形作ります。
落とし穴:実効アクセスは合算の結果
「開く」「減らす」「絞り込む」ツールを重ねると、「このユーザーは実際に何を見られるのか?」を目視で答えるのは本当に難しくなります。共有による付与から制限フィルターを引き、スコープは無視する、という計算です。これこそAgentForceAccessがあなたの代わりに実行する計算です。あるユーザーが実際に何にアクセスできるかを尋ねると、アクセスを付与する共有とそれを削り取る制限ルールの両方を考慮し、平易な言葉で答えます。
よくある質問
一言でいうと違いは何ですか?
共有ルールはユーザーが持っていなかったアクセスを付与し、制限ルールはユーザーが持っていたアクセスを取り除き、スコープルールはアクセスにはまったく影響を与えずにリストビューや検索を事前にフィルターするだけです。
制限ルールは共有ルールやロール階層を上書きできますか?
はい。制限ルールは共有モデルの上に重ねて適用され、組織の共有設定(OWD)やロール階層、共有ルールが本来表示するはずのレコードであっても、ユーザーが閲覧できるレコードをフィルターします。Salesforceで本当の意味でアクセスを減らせる仕組みは、これです。
スコープルールはセキュリティのためにレコードを隠しますか?
いいえ。スコープルールはリストビュー、検索、レポートで既定で表示されるレコードのセットを変えるだけです。ユーザーはスコープを「アクセスできるすべてのレコード」に切り替えられるため、これはセキュリティではなく、フォーカスと生産性のための機能です。アクセスを実際に制限する必要がある場合は、制限ルールを使ってください。
これらのルールに上限はありますか?
はい。制限ルールとスコープルールは、通常それぞれオブジェクトごとに有効なルールが最大2つまでに制限されており、カスタムオブジェクトに加えて、Account、Case、Contact、Event、Lead、Opportunity、Taskなど一部の標準オブジェクトで利用できます。ご利用のエディションの現在の上限を確認してください。
あなたの組織で試してみる
AgentForceAccessは、あらゆるユーザーがあらゆるレコードやファイルを見られる理由を、Salesforceのすべての共有の仕組みを横断して、わかりやすい言葉で説明します。
先行アクセスを申し込む