Salesforceのスコープ設定ルール(Scope Setting Rule)は、ユーザーが参照できるレコードを細かく制御する便利な機能ですが、設定を誤ると意図せず権限不足を引き起こすことがあります。特に複数のルールやプロファイル、ロール階層が絡むと、原因の特定が難しくなります。本記事では、スコープ設定ルールによって権限不足が発生する代表的な原因を整理し、管理者が効率的に調査・対処するためのポイントを具体的に解説します。実際の操作手順や失敗事例も交えながら、確実に権限を付与する方法を確認していきましょう。
【要点】この記事で確認すること
- 最初に見る場所: 権限不足のユーザーのプロファイル/権限セット、該当オブジェクトのスコープルール設定、および共有ルールの一覧です。
- 切り分けの軸: ①スコープルールの条件定義の誤り、②他のアクセス権限(CRUD/FLS、共有ルール、ロール階層)との競合、③ルールの評価順序や「適用除外」設定の影響、の3軸で整理します。
- 注意点: スコープルールは組織全体のアクセス権限に影響を与えるため、会社PCの操作権限がなくても、Sandboxなどで事前テストを行ってから本番反映することを推奨します。また、設定変更には「スコープ設定ルールの管理」権限が必要です。
ADVERTISEMENT
目次
スコープ設定ルールとは?基本の仕組み
スコープ設定ルールは、特定のプロファイルや権限セットに対して、オブジェクトのレコードを参照可能な範囲(スコープ)を定義する機能です。例えば、「営業部」のプロファイルを持つユーザーには「取引先責任者」オブジェクトのうち「ステータスがアクティブ」のレコードのみ表示する、といった制御が可能です。スコープルールは主に以下の要素で構成されます。
- 対象オブジェクト: どのオブジェクトに対してルールを適用するか。
- 対象プロファイル/権限セット: ルールを適用するユーザーグループ。
- 表示条件(フィルタ条件): どのレコードを表示するかの条件式(例:項目値が一定以上など)。
- アクセスレベル: 「表示のみ」または「編集可」など。
スコープルールは、プロファイルや権限セットで付与された「オブジェクトへのアクセス権」をさらに制限する形で機能します。つまり、もともと「読み取り」権限があるユーザーでも、スコープルールで条件がかかれば、その条件に合わないレコードは見えなくなります。この点が権限不足の原因として見落とされがちです。
権限不足が発生する主な原因
権限不足の原因は大きく分けて3つあります。それぞれのパターンを理解することで、素早く原因を特定できます。
| 原因分類 | 具体例 | 影響度 |
|---|---|---|
| スコープルールの条件ミス | フィルタ条件が厳しすぎて必要なレコードが含まれない、または逆に緩すぎて不要なレコードが表示される | 中~高 |
| 他のアクセス権限との競合 | ロール階層で上位の権限が付与されているはずが、スコープルールで上書きされる(スコープルールはロール階層より優先される場合がある) | 高 |
| ルールの評価順序の誤解 | 複数のスコープルールが重なっているとき、最後に評価されたルールが優先されるが、意図しないルールが勝ってしまう | 中 |
原因1: スコープルールの条件定義が適切でない
スコープルールのフィルタ条件に使う項目や演算子を誤ると、本来見えるべきレコードが除外されます。例えば、「取引先種別」が「顧客」のレコードだけを表示する設定にしているのに、対象の取引先が「見込み客」に分類されていた場合、そのレコードは表示されません。また、日付条件を誤ると過去のデータのみ表示されてしまうケースもあります。
原因2: ロール階層や共有ルールとの競合
スコープルールは、ロール階層による自動的なアクセス権よりも優先されることがあります。具体的には、ロール階層で上位ロールのユーザーに下位ロールのレコードへのアクセス権が付与されていても、スコープルールでそのレコードが表示対象外になっていれば、上位ユーザーからも見えなくなります。この仕様はしばしば混乱を招きます。
原因3: 複数のスコープルールが競合している
同じプロファイルや権限セットに対して複数のスコープルールが有効な場合、それぞれの条件がANDまたはORで結合されるかはオブジェクトごとに異なります。標準オブジェクトでは複数のルールはAND結合で評価され、すべての条件を満たすレコードだけが表示されます。そのため、ルールを追加するたびに表示範囲が狭まっていく点に注意が必要です。
原因を切り分けるための確認手順
権限不足が発生した際は、以下の手順で段階的に調査します。Sandbox環境でのテストが理想ですが、本番環境でも権限不足のユーザーでログインして確認できます。
- 権限不足のユーザーに割り当てられているプロファイルと権限セットを確認する。 設定>ユーザ>該当ユーザのプロファイル/権限セットを開き、対象オブジェクトへのアクセス権(CRUD)があるかをチェックします。読み取り権限すらない場合は、スコープルール以前の問題です。
- そのオブジェクトに設定されているスコープルールを一覧する。 設定>オブジェクトマネージャ>該当オブジェクト>スコープ設定ルール で確認します。ルールの数、対象プロファイル、条件を書き出します。
- ルールの条件を精査する。 特に、フィルタ条件に使用している項目の値が、ユーザーが期待するレコードと合致しているか確認します。日付や状態など動的な値を使っている場合は、現在の値と比較します。
- ロール階層と共有ルールの設定を確認する。 ユーザーのロールと、レコードの所有者が属するロールの関係を確認。さらに、該当オブジェクトの共有ルールで特別なアクセス権が付与されていないかチェックします。
- 一時的にスコープルールを無効にして動作を確認する(テスト環境推奨)。 本番環境で無効にする場合は、影響範囲をチーム内で事前に周知してください。ルールを無効にすることでレコードが見えるようになれば、スコープルールが原因と断定できます。
失敗パターンとその対策
実際に管理者が陥りやすい失敗例を3つ紹介します。同じミスを防ぐための対策も併せて解説します。
失敗パターン1: スコープルールとプロファイルの「表示」設定を混同する
プロファイルの「タブ設定」でオブジェクトタブを「標準で表示」にしても、スコープルールで対象外のレコードは表示されません。初心者管理者は「タブを表示したのにデータが出ない」と混乱しがちです。対策として、スコープルールの条件に該当するレコードが少なくとも1件は存在することを確認してください。特に新規作成直後はレコードがないケースが多いです。
失敗パターン2: ルールのアクセスレベルを「編集可」にしているのに編集できない
スコープルールで「編集可」を設定しても、プロファイルや権限セットでそのオブジェクトの編集権限がなければ編集できません。スコープルールはあくまで表示範囲を制限するもので、ベースの権限を拡張するものではありません。対策として、プロファイルのオブジェクト権限で「編集」にチェックが入っているか確認します。
失敗パターン3: カスタムオブジェクトでスコープルールが効いていない
カスタムオブジェクトではスコープルールが自動的に有効にならない場合があります。設定>オブジェクトマネージャ>該当カスタムオブジェクト>スコープ設定ルール で「有効化」ボタンをクリックする必要があることを見落としがちです。対策として、カスタムオブジェクトのスコープルールを初めて使うときは、必ず有効化の状態を確認します。
管理者が確認すべき設定ポイント
スコープルールのトラブルを未然に防ぐために、管理者は以下のポイントを定期的にチェックすることをおすすめします。
プロファイル/権限セットとスコープルールの整合性
あるプロファイルに対してスコープルールを設定する場合、そのプロファイルがもともと持っているオブジェクトアクセス権と矛盾がないかを確認します。特に「参照のみ」のプロファイルにスコープルールで編集権を与えても意味がないため、権限セットを併用するなど適切に設計します。
スコープルールの評価順序と優先度
同じプロファイルに複数のスコープルールがある場合、それらの条件はANDで結合されます。意図的にOR結合にしたい場合は、1つのルール内で複数の条件をORで組み合わせるか、権限セットを分けて異なるスコープルールを割り当てる方法を検討します。
監査ログの活用
設定変更の履歴は設定>監査ログ>設定変更履歴 から確認できます。誰がいつスコープルールを追加・変更したかを追跡することで、問題発生時の切り分けが容易になります。
よくある質問(FAQ)
- Q1: スコープルールを設定したのに、すべてのレコードが見えるままです。
- A: スコープルールはプロファイルまたは権限セット単位で適用されます。対象となるプロファイル/権限セットが正しくユーザーに割り当てられているか再確認してください。また、ルールが「有効」になっているかも確認します。
- Q2: ロール階層の上位ユーザーが下位のレコードを見られなくなりました。
- A: スコープルールがロール階層より優先されるケースです。対象の上位ユーザーに割り当てられているスコープルールの条件を見直し、必要なレコードが含まれるように条件を緩和するか、その上位ユーザー用の別のスコープルール(条件を設定しない)を作成して優先的に適用する方法を検討します。
- Q3: 複数のスコープルールが競合した場合、どちらが優先されますか?
- A: 標準オブジェクトでは、複数のスコープルールはANDで結合されるため、すべての条件を満たすレコードのみが表示されます。優先順位はなく、条件が厳しいほど表示レコードが減ります。カスタムオブジェクトでは設定依存のため、ヘルプドキュメントを確認してください。
- Q4: スコープルールの条件を変更したのに反映されません。
- A: 変更後、ユーザーがログインし直すか、セッションがリフレッシュされるまで反映に時間がかかることがあります。また、キャッシュの影響で古いルールが表示される場合もあるため、ブラウザのキャッシュクリアや別のブラウザで確認してみてください。
まとめ
スコープ設定ルールによる権限不足は、条件定義の誤りや他のアクセス権限との競合が主な原因です。原因を切り分ける際は、まずユーザーのプロファイルと権限セットの基本権限を確認し、次にスコープルールの条件を精査します。複数ルールのAND結合やロール階層との優先順位について正しく理解しないまま設定を重ねると、予期せぬ表示制限が発生するため注意が必要です。管理者は定期的な設定の棚卸しと、Sandboxでの事前テストを習慣づけることで、権限不足のリスクを大幅に減らせます。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
- 【Teams】会議の「参加者リスト」を出席後にダウンロードする!誰が参加したか確認する手順
- 【Teams】画面共有時に「音声」も共有する方法!音が流れない時の設定手順
