Blog Post

Fabric Updates Blog
2 MIN READ

Announcing Service Principal support for Fabric APIs 

evaAlroy's avatar
evaAlroy
Icon for Microsoft Employee rankMicrosoft Employee
2 years ago

A new way to authenticate and authorize your Fabric applications.

You can now use service principal to access Fabric APIs. Service principal is a security identity that you can create in Entra and assign permissions to it in Entra and other Microsoft services, such as Microsoft Fabric.

With service principal you can automate your Fabric processes and integrate them with other services.

Which Fabric APIs support service principal?

The following Fabric APIs support service principal authentication and authorization:

  • Fabric Item CORE CRUD APIs for the following item types:
    • Paginated Report
    • Semantic model
    • Report
    • Lakehouse
    • Notebook
    • Environment
    • Spark Job Definition
    • EventHouse
    • KQL Database
    • KQL Queryset

We are working to enable service principal support for more Fabric APIs, stay tuned for more updates.

How to use service principal with Fabric APIs?

To use service principal with Fabric APIs, follow these steps:

  1. Create a service principal in Entra for your Fabric resources, you can use the Azure portal, Azure CLI, or PowerShell to do this.
  1. Assign permission for your Fabric resources.
  1. Acquire an Entra access token for your service principal for Fabric , you can use the Azure SDK, Azure CLI, or PowerShell to do this.
  1. Use the access token to call the Fabric APIs that support service principal.

For more details and examples, please refer to the documentation on Service principal authentication and authorization for Fabric APIs.

Microsoft Fabric REST API references - Microsoft Fabric REST APIs | Microsoft Learn

Feedback and support

We hope you enjoy using service principal with Fabric APIs and find it useful for your Fabric automation scenarios. We would love to hear your feedback and suggestions on how to improve this feature. Feel free to contact us at [email protected]

Published 2 years ago
Version 1.0

1 Comment

  • Kanz's avatar
    Kanz
    New Member

    We cant use service principal enabled for API while RLS defined Data Lake , this is the limitation now , could you please update if you have any workaround for this problem. We have use case to enable fabric API for external application to read data through semantic model where the data lake has RLS which has to be enforced for any external API to follow the RLS where as when we use service principal its not working.