Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more

Reply
mittalpatel130
Helper III
Helper III

Power BI Embedded (JavaScript) App Owns Data - RLS is not working

Hello,

 

I've implemented Power BI Embedded solution (Apps own data) with Row level security using JavaScript. Embedded it successfully, however the Dynamic Row Level Security is not working in embedded page. It works fine in Power BI Service, Test as Role screen.

 

My scenario - 

1. Data Source - SQL Server On-premise (On-premise Gateway set-up)

2. Dynamic RLS is configued in Power BI Desktop 

3. Published Reports to Premium Capacity, upgraded Workspace

4. Embedded Solution - Apps Own Data using JavaScript (used GenerateToken method)

5. Added EffectiveIdentity as below in the JavaScript GenerateToken Call. 

{
    "accessLevel": "View",
    "identities": [
        {
            "username": "EffectiveIdentity",
            "roles": [ "Role1", "Role2" ],
            "customData": "MyCustomData",
            "datasets": [ "fe0a1aeb-f6a4-4b27-a2d3-b5df3bb28bdc" ]
        }
    ]
}

 

What is that I'm missing in this set up? 

 

Thank you!

 

 

1 ACCEPTED SOLUTION
nandukrishnavs
Super User
Super User

@mittalpatel130 

 

Refer to this documentation

https://docs.microsoft.com/en-us/power-bi/developer/embedded/embedded-row-level-security#applying-us...

 

 

{
    "accessLevel": "View",
    "identities": [
        {
            "username": "EffectiveIdentity",
            "roles": [ "Role1"],
            "datasets": [ "fe0a1aeb-f6a4-4b27-a2d3-b5df3bb28bdc" ]
        }
    ]
}

 

You have to replace "EffectiveIdentity" with currently logged in user's email id. And "Role1" should be replaced with the actual role name which is defined in the Power BI desktop. Dataset id (fe0a1aeb-f6a4-4b27-a2d3-b5df3bb28bdc) should replace with your report's dataset id.

 



Did I answer your question? Mark my post as a solution!
Appreciate with a kudos
🙂


Regards,
Nandu Krishna

View solution in original post

1 REPLY 1
nandukrishnavs
Super User
Super User

@mittalpatel130 

 

Refer to this documentation

https://docs.microsoft.com/en-us/power-bi/developer/embedded/embedded-row-level-security#applying-us...

 

 

{
    "accessLevel": "View",
    "identities": [
        {
            "username": "EffectiveIdentity",
            "roles": [ "Role1"],
            "datasets": [ "fe0a1aeb-f6a4-4b27-a2d3-b5df3bb28bdc" ]
        }
    ]
}

 

You have to replace "EffectiveIdentity" with currently logged in user's email id. And "Role1" should be replaced with the actual role name which is defined in the Power BI desktop. Dataset id (fe0a1aeb-f6a4-4b27-a2d3-b5df3bb28bdc) should replace with your report's dataset id.

 



Did I answer your question? Mark my post as a solution!
Appreciate with a kudos
🙂


Regards,
Nandu Krishna

Helpful resources

Announcements
Notebook Gallery Carousel1

NEW! Community Notebooks Gallery

Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.

April2025 Carousel

Fabric Community Update - April 2025

Find out what's new and trending in the Fabric community.