Salesforceのフローで自動化処理を実装した際、デバッグで実行結果が想定と異なると、原因の特定に時間がかかることがあります。特に、フローがレコードを更新・作成する場合や、特定のユーザーのみがアクセスできるべきデータを扱う場合、権限セットや共有設定が正しく構成されていないと、フローが期待通りに動作しません。この記事では、フローのデバッグが想定と違うときに、権限セットと共有設定をどのように確認すればよいのか、具体的な手順と注意点を解説します。会社のSalesforce環境でフローを運用している方や、今後導入を検討している方は、ぜひ参考にしてください。
【要点】この記事で確認すること
- 最初に見る場所: フローの「デバッグ」ログにエラーがないか、またフローで使用するオブジェクトの「ユーザー権限」と「項目レベルセキュリティ」が適切かどうか。
- 切り分けの軸: フロー実行時ユーザー(システムモードかユーザーモードか)と、実際のレコードの共有設定(組織の共有設定、共有ルール、手動共有)の組み合わせ。
- 注意点: 会社のSalesforce環境では、権限セットや共有設定の変更はシステム管理者に依頼する必要があります。自分でプロファイルを編集しないでください。
ADVERTISEMENT
フローのデバッグと権限セットの関係
Salesforceフローは、実行時に「システムモード」と「ユーザーモード」のどちらで動作するかによって、権限の扱いが異なります。デバッグ結果が想定と違う場合、まずはフローの実行モードを確認してください。システムモードで実行されているフローは、すべてのオブジェクトと項目に対するアクセス権(作成・編集・削除)を自動的に持ちます。そのため、権限エラーは発生しにくいですが、意図しないレコードの操作が行われるリスクもあります。一方、ユーザーモードで実行されるフローは、フローを実行したユーザーの権限に制限されます。つまり、ユーザーがアクセス権を持たないオブジェクトやレコードに対しては、フローが更新や作成を行おうとするとエラーになります。
デバッグ時に想定と異なる結果が出るケースとして、次のようなパターンが考えられます。
- フローで特定のレコードを更新しているつもりが、実行後にレコードが更新されていない。→ ユーザーモードで実行されており、ユーザーにそのレコードへの編集権限がない可能性があります。
- フローで新しいレコードを作成しているが、作成されない。→ 作成権限がない、または必須項目へのアクセス権がない可能性があります。
- フローの条件分岐で「参照権限がない」というエラーが出る。→ 共有設定により、実行ユーザーがレコードを参照できない可能性があります。
権限セットを確認する際は、以下のポイントを押さえてください。
- フローを実行するユーザーに割り当てられている権限セットをリストアップします。
- 権限セットの「オブジェクト権限」タブで、フローが操作するオブジェクトに対する「読み取り」「作成」「編集」「削除」の各権限が有効になっているか確認します。
- 「項目レベルセキュリティ」タブで、フローが使用する項目へのアクセス権(参照・編集)が適切に設定されているか確認します。
- もし権限セットに「フロー」関連の権限(例:フローの実行、管理)が含まれているかも確認しますが、通常はプロファイルの権限で十分です。
- 必要に応じて、権限セットの複製を作成してテストユーザーに割り当て、動作検証を行います。
システムモードとユーザーモードの見分け方
フロー定義の詳細画面で、「フローの実行時にシステムモードを使用」チェックボックスがオンになっているかどうかを確認します。オンになっている場合はシステムモード、オフの場合はユーザーモードです。また、デバッグログの「フローの実行モード」フィールドにも表示されます。
共有設定の確認手順
フローが特定のレコードにアクセスできない場合、権限セットだけでなく、共有設定が原因であることも多いです。組織全体の共有設定と、レコードへの個別の共有が正しく構成されているかを確認します。以下の手順で実施してください。
- まず、フローが操作するオブジェクトの組織の共有設定を確認します。「設定」→「共有設定」→「共有設定」で、当該オブジェクトのデフォルトのアクセス権(公開範囲)を確認します。例えば、商談の標準オブジェクトが「公開/参照・更新のみ」になっている場合、参照権限を持つユーザーであればレコードを見られますが、編集権限がないとフローでの更新は失敗します。
- 次に、共有ルールが適用されているか確認します。「共有ルール」セクションで、フローを実行するユーザーまたはそのユーザーが属するグループに対して、レコードへのアクセス権を付与するルールが設定されているか確認します。例えば、特定のロールのユーザーが商談レコードを編集できるようにするルールが必要かもしれません。
- フローが特定のユーザー(例:キュー)のレコードを作成・更新する場合、そのキューへの共有設定を確認します。キューに割り当てられたレコードは、キューにアクセス権があるユーザーのみが操作できます。
- 手動共有が行われている場合は、該当レコードの共有ボタンからアクセス権を確認します。特に、フロー実行ユーザーがレコードの所有者でない場合に問題が発生しやすいです。
- 上記を確認しても解決しない場合、デバッグログの「共有」関連のエラーメッセージを記録し、管理者に依頼してください。
共有設定によるフロー失敗の具体例
例えば、営業担当者が自分の商談を更新するフローは正常に動作するが、マネージャーが他の担当者の商談を更新しようとすると失敗するケースがあります。これは、マネージャーが部下の商談に対して「参照」権限しか持っていない場合、フローがユーザーモードで更新処理を実行すると権限不足になるためです。この場合、共有ルールで「ロール上層」のユーザーに対して編集権限を付与する必要があります。
よくある失敗パターンとその対策
ここでは、権限セットと共有設定に起因する代表的な失敗パターンを表にまとめました。
| 現象 | 考えられる原因 | 確認すべき設定 |
|---|---|---|
| フローでレコードが更新されない | 編集権限がない、またはレコードの共有設定が参照のみである | 権限セットのオブジェクト権限(編集)・共有ルール |
| フローでレコードが作成されない | 作成権限がない、または必須項目の項目レベルセキュリティ不足 | 権限セットのオブジェクト権限(作成)・項目レベルセキュリティ |
| フローの条件分岐で「レコードが見つからない」エラー | 実行ユーザーがレコードを参照できない(共有設定による非表示) | 組織の共有設定・共有ルール・手動共有 |
| デバッグログに「権限が不十分」エラーが出る | フローがユーザーモードで動作し、ユーザーに適切な権限がない | 権限セット全体の見直し |
権限セットとプロファイルの違い
権限セットはプロファイルを補完するものであり、プロファイルで許可されていない権限を追加できる仕組みです。フロー実行に必要な権限がプロファイルにない場合、権限セットで追加するのが一般的です。ただし、権限セットの変更は管理者だけが行えるため、自分で編集できないことを認識しておいてください。
管理者へ依頼する際のポイント
フローの権限セットや共有設定の問題を解決するには、管理者に正確な情報を伝えることが重要です。依頼する際には、以下の情報を準備してください。
- フローの名前とバージョン、デバッグログのスクリーンショットまたはテキスト。
- フローを実行したユーザーのユーザー名またはID。
- フローが操作するレコードIDまたは条件。
- 期待する動作と実際の動作の違い。
- 「システムモード」のチェックボックスの状態。
管理者はこれらの情報をもとに、権限セットの割り当てや共有ルールの追加、あるいはフローの実行モードの変更(ただし推奨されない場合あり)を検討できます。自分で権限セットを作成できる環境でない限り、勝手に権限を追加しようとしないでください。
よくある質問(FAQ)
Q1. フローをシステムモードに変更すればすべて解決しますか?
システムモードに変更すると権限の問題は回避できますが、意図しないレコードの更新や作成が発生するリスクがあります。また、監査証跡やセキュリティの観点から、ユーザーモードを推奨する運用ガイドラインが設定されている場合もあります。システムモードへの変更は、セキュリティチームや管理者の承認を得てから行ってください。
Q2. フローエラーのデバッグログはどこで見られますか?
フロービルダーで「デバッグ」ボタンをクリックすると、実行結果が画面に表示されます。また、「設定」→「イベントモニタリング」→「フローのデバッグログ」から過去のログを確認することもできます。
Q3. 権限セットは1人に複数割り当てても問題ありませんか?
問題ありません。権限セットは複数割り当てることができ、割り当てられた権限がすべて有効になります。ただし、権限が競合した場合、より緩い権限が適用されることに注意してください。
Q4. 共有設定を変更したのにフローがすぐに反映されません。
共有設定の変更は即座に反映されますが、フローがキャッシュしている場合や、非同期処理のタイムラグで遅延することがあります。数分待ってから再度テストしてください。
まとめ
フローのデバッグ結果が想定と違う場合、権限セットと共有設定の確認が不可欠です。まずはフローの実行モードを確認し、ユーザーモードであれば権限セットのオブジェクト権限と項目レベルセキュリティを見直してください。次に、共有設定が適切かどうかを、組織の共有設定と共有ルールの観点からチェックします。これらの確認を体系的に行うことで、原因の切り分けが迅速になり、管理者への依頼もスムーズになります。適切な権限設計のもとでフローを運用し、安全で効率的な自動化を実現してください。
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Excel】文字が入っているセルの「個数」を数える!COUNTA関数の簡単な使い方
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
