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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

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
July 2024 Power BI Update

Power BI Monthly Update - July 2024

Check out the July 2024 Power BI update to learn about new features.

July Newsletter

Fabric Community Update - July 2024

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