Understanding the Role of the Running User in Flows
Guide to Who is Running Flows. The running user in a flow is the individual who initiates the flow, either the current user or the Automated Process user. This user determines what actions the flow can perform with Salesforce data when executed in user context. Grasping the significance of the running user is crucial when designing automation in Flow Builder, as it directly affects record operations and troubleshooting. Let’s dig deeper into this essential aspect.
Identifying the Running User
The running user is the person who triggers the flow, which can be either the current user or the Automated Process user. Recognizing the running user provides insights into flow actions and aids in diagnosing issues. For flows operating in user context, the running user’s profile and permission sets determine the flow’s object permissions and field-level access. When a flow interacts with Salesforce data, it adheres to these permissions and access levels.
Flow Execution Context
Flows operate within three distinct contexts: user context, system context with sharing, and system context without sharing. Each context affects how the flow interacts with Salesforce data and respects user permissions and access levels.
- User Context: The flow operates based on the running user’s permissions and field-level access, utilizing their profile and permission sets.
- System Context with Sharing: The flow has broad data access but respects record access permissions set by organization-wide defaults, role hierarchies, and sharing rules.
- System Context without Sharing: The flow disregards all record access permissions, granting unrestricted data access. However, this mode should be used cautiously to prevent unauthorized record access.
Understanding Flow Types and Contexts
Different flow types operate within specific contexts:
- Record-Triggered, Platform Event-Triggered, and Scheduled-Triggered Flows: Operate in system context without sharing.
- Autolaunched Flows: Inherit the caller’s context by default or can be set to run in system context with or without sharing.
- Top-Level Screen Flows: Typically run in user context but can be configured to run in system context with sharing if necessary.
- Lower-Level Screen Flows: Inherit the caller’s context or run in system context with sharing if specified.
By understanding the role of the running user, you can optimize Flow’s capabilities in your automation processes. Maximize the power of Flow with confidence, ensuring compliance with user permissions and access levels. #LetItFlow! For more automation insights, visit our Automation pages on our insights.