
Hi all,
I'm hitting an authentication issue after deploying my solution from DEV to TEST and could use some help.
Setup
We have a Power App that uses a custom connector. The custom connector authenticates with a service principal (client credentials, OAuth). The connector is called from a Power Automate flow that the app triggers. In our DEV environment everything works as expected.
What happens after deploy
We deploy the solution to TEST through an Azure DevOps pipeline. After deployment the behavior splits depending on the client.
Web browser (make.powerapps.com / play link)
When a user opens the app, the custom connector shows the standard consent dialog (Allow / Don't allow). The user clicks Allow once and the app runs. The connector uses the service principal as intended.
Problem: Native PowerApps mobile app (Google Play and App Store)
When the same user opens the app on their phone, they get a sign-in prompt asking for their own user credentials before the app loads. This is not what we want. The connector should keep using the service principal, not the end user's identity.
What I'm trying to achieve
The mobile client should authenticate the custom connector through the service principal, identical to the web client. End users should not be asked for personal credentials.
Question
Has anyone seen this difference between the native mobile client and the browser client for custom connectors that use a service principal? Is there a setting, manifest property, or pipeline step I'm missing to make the mobile client respect the service principal connection? Any pointers to documentation or known limitations would be appreciated.
Environment details
Power Platform pipeline through Azure DevOps, custom connector with OAuth 2.0 client credentials flow, connection reference included in the solution.
Thanks for any input.