Yeah, this is a pretty common point of confusion when working with Power Apps → Power Automate → Microsoft Dataverse.
What’s happening is that when a flow is triggered from Power Apps using the Power Apps trigger, it runs in the caller’s context (end user) by default, not strictly under the service account—even if your Dataverse actions are configured with “Use this connection”.
So even though you selected a service account connection, Dataverse still enforces security based on the invoking user, which is why you’re seeing permission errors.
Why this happens
- Power Apps → Flow uses the user’s identity to invoke the flow
- Dataverse applies row-level and table-level security
- “Use this connection” does not fully override the execution context for Dataverse in this scenario
What you can do
Option 1: Grant proper permissions to users (simplest)
Make sure the users running the app have:
- Required security roles in Dataverse
- Access to the tables/records being updated
This is the most straightforward fix if acceptable.
Option 2: Use a child flow (recommended pattern)
Split your logic into two flows:
Parent Flow
- Trigger: Power Apps
- Pass required parameters
Child Flow
- Trigger: “Run a child flow”
- All Dataverse actions configured with service account connection
This pattern ensures:
- The child flow runs using its own connections
- Dataverse actions execute under the service account context
Option 3: Use an HTTP-triggered flow (advanced)
- Create a flow with When an HTTP request is received
- Call it from Power Apps
- Use service account connections inside
This fully decouples the user context, but requires premium setup and security handling.
Quick check
Also confirm:
- You don’t have any dynamic connections accidentally switching to “Run-only user”
- The flow’s Run-only users settings are not overriding connections
Summary
- Power Apps-triggered flows run in user context by default
- Dataverse enforces security even if a service connection is selected
- Use child flows or proper permissions to resolve this cleanly
Best regards,
Satyam Pandey
✅ If this helped solve your issue, please mark it as Accepted Solution so others can find it quickly.
❤️ If it was helpful, please click Yes on “Was this reply helpful?” or give it a Like.
🏷️ For follow-ups, feel free to tag @TechFreak
💼 LinkedIn
▶️ YouTube