Forum Discussion

YashikaAgrawal's avatar
YashikaAgrawal
Post Patron
1 year ago
Solved

Power BI with Databricks

Guys, In power bi, we are in process to migrate from Tenant A to tenant B, is it possible "we migrating Power BI reports to Tenant B, but the Databricks data source remains in Tenant A. we are using OAuth"   
 
When i did the research it says use Service principal or use a guest user..
Any suggestions please
 
 
 
  • BhavinVyas3003's avatar
    BhavinVyas3003
    1 year ago

    Service Principal may not support user-based RLS because it uses app-only authentication.
    You can use Guest Users Azure AD B2B from Tenant B in Tenant A so OAuth passes user identity and RLS works correctly.

  • BhavinVyas3003's avatar
    BhavinVyas3003
    1 year ago

    In Tenant A's Azure AD, invite users from Tenant B as guest users.

    Assign these guest users the necessary permissions in Databricks (workspace, cluster, SQL warehouse).

    In Power BI (Tenant B), connect to Databricks using OAuth and authenticate with the guest user's credentials.

    Publish and test the report. RLS should work as the guest user's identity is passed through OAuth.

5 Replies

  • Yes, it's possible — but OAuth won't work across tenants. Use either:

    1. Service Principal: Register a service principal in Tenant A and grant it access to Databricks. Use it in Power BI in Tenant B.
    2. Guest User: Invite a user from Tenant B as a guest in Tenant A, assign Databricks access, and use that account in Power BI.

    Best Practice: Use a Service Principal for scalable and secure access.

     

  • Thanks for the reply, We have RLS in reports, we are using OAuth, will the Service principal works..

    • BhavinVyas3003's avatar
      BhavinVyas3003
      Super User

      Service Principal may not support user-based RLS because it uses app-only authentication.
      You can use Guest Users Azure AD B2B from Tenant B in Tenant A so OAuth passes user identity and RLS works correctly.

      • YashikaAgrawal's avatar
        YashikaAgrawal
        Post Patron

        You can use Guest Users Azure AD B2B from Tenant B in Tenant A so OAuth passes user identity and RLS works correctly.

        Can you please explain this step... Thanks,