Today I could not edit any dataflows for a client and was constantly getting “… prod.powerquery.microsoft.com refused to connect”:
Twitterverse to the rescue
After a couple of unsuccessful trials I went to the twitterverse to ask around if anyone else was experiencing the same (thinking that there was an issue with the service in general). Thankfully Dan Szepesi had the fix to my problem, which was actually a bug. His solution was to replace the “www”-part of the URL by “app”. This is his description:
“Issue:
When browsing powerbi.com and trying to edit workflows, if the URL in your browser (host header) is powerbi.com, you will get an error when editing dataflows. This will fail in IE, Edge, Chrome and FireFox.
Cause:
Content Security Policy is applied to the page us.prod.powerquery.microsoft.com and powerbi.com is NOT in the frame-ancestors response field for pages that can embed us.prod.powerquery.com
Workaround:
Manually change URL in browser to app.powerbi.com
Fix:
Add https://*.powerbi./com or powerbi.com to the frame-ancestors list server side.”
I was prompted to sign in again, but then I was finally able to edit my customer’s dataflow. Big thanks to Dan and the Power BI community on Twitter for that!
Technical background
Dan also provided some additional information about this bug, that I’m posting here as it is (it is well above my head 😉 ):
“When you select ‘Edit Dataflow’, it makes a call to us.prod.powerquery.microsoft.com. The page will embed what comes back into the main frame of the page.
In the response headers to this GET is the following:
Breaking out the Frame-Ancestors part: frame-ancestors ‘self’ adf.azure.com
ms-adf.azure.com
https://.ci.ai.dynamics.com
https://.api.ci.ai.dynamics.com
msit.powerbi.com
app.powerbi.com
admin.powerplatform.microsoft.com
dataintegrator.trafficmanager.net
admin.powerapps.com
admin.flow.microsoft.com
https://.admin.powerapps.com
https://.admin.flow.microsoft.com
https://.businessplatform.microsoft.com
admin.microsoft.com
us.flow.microsoft.com
https://.crm.dynamics.com
https://.iom.d365.dynamics.com
teams.microsoft.com
teams.powerbi.com
web.powerapps.com
https://.web.powerapps.com
make.preprod.powerapps.com
make.preview.powerapps.com
make.powerapps.com
scv.dynamics.com
scv.azureedge.net
web.azuresynapse.net
ms.web.azuresynapse.net;
NOTICE:
powerbi.com is not in the frame-ancestors list so the browser will not allow that page to be embedded.”
Hope you found this post soon enough.
Enjoy and stay queryious 😉