Forum Discussion
Translytical, UDF and Warehouse + Service Principal
Hello,
I have set up Translytical with a UDF that performs INSERT operations in a warehouse. The thing is, my tool is designed to allow a large number of people to use the report and insert information.
Is it possible to use a Service Principal, and if so, how?
Thank you in advance.
Hi Charline_74,
I use Translytical TaskFlows and had the same problem, which I solved as follows.
1. I created groups in Entra and added the users who are to use the report.
2. Then, under Managed Permissions in Functions, I added the group and gave it Read and Execute permissions. This allows the user to execute the functions in the reports.See the screenshot showing the permissions in the functions.
If you have any further questions, please feel free to contact us and i hope this helps
Best regards
Feel free to leave kudos or accept it as a solution. This will also help other community members.
2 Replies
- spaceman127Super User
Hi Charline_74,
I use Translytical TaskFlows and had the same problem, which I solved as follows.
1. I created groups in Entra and added the users who are to use the report.
2. Then, under Managed Permissions in Functions, I added the group and gave it Read and Execute permissions. This allows the user to execute the functions in the reports.See the screenshot showing the permissions in the functions.
If you have any further questions, please feel free to contact us and i hope this helps
Best regards
Feel free to leave kudos or accept it as a solution. This will also help other community members.
- v-veshwara-msftCommunity Support
Hi Charline_74 ,
Thank you for your question.
At present, User Data Functions do not support accessing Fabric items or data sources using a Service Principal, managed identity, or workspace identity. As a result, a Service Principal cannot be used directly to perform INSERT operations into a Fabric Warehouse from a Translytical task flow.
Reference:
Service details and limitations - Microsoft Fabric | Microsoft LearnBecause of this limitation, there is currently no supported way to centralize write permissions for all report users under a single Service Principal when using Translytical UDFs.
Some supported approaches to consider focus on scoping permissions rather than substituting the execution identity. These include granting INSERT permissions via a dedicated database role or limiting write access to a specific write-back or staging table. These approaches align with how Translytical task flows and UDFs are designed to work.
If a single execution identity is a strict requirement, one possible approach is to move the write operation outside of Fabric and have the report or UDF trigger an external service that runs under a Service Principal and performs the insert. This pattern sits outside the native Translytical UDF write-back flow and would need to be implemented separately.
I hope this helps clarify the current capabilities and considerations.
Please reach out for further assistance.
Thank you.