cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Helper II
Helper II

RLS / Múltiples Categorías

Hola a todos

Estoy tratando de averiguar este problema dinámico de RLS que tengo. Quiero una tabla de usuario RLS simple para filtrar el contenido permitido mediante USERPRINCIPLENAME().

Ejemplo: En el caso de a@aaa.com usuario debe ver los datos solo relacionados con los siguientes criterios:

Perú/Finlandia/BU1/BU2/EPC

Tabla de usuario de RLS

Oceans88_0-1593522618583.png

Tabla de datos

Oceans88_1-1593522956035.png

¿Alguien tiene una idea de cómo lograr esto?

Gracias de antemano por cualquier posible ayuda.

Kr

6 REPLIES 6
Community Support
Community Support

Hola @Oceans88

Si se ha cerrado la relación entre la tabla de usuario de RLS y la tabla de datos y suponiendo que la columna relacionada es A en la tabla RLS, B en la tabla De datos, debe especificar la columna relacionada en la expresión DAX, como:

[B] á MAXX(filter(RLS User Table,[Email] ? USERPRINCIPALNAME()),[A])

aquí también hay otros blogs podrían ser su referencia:

https://radacad.com/dynamic-row-level-security-with-manager-level-access-in-power-bi

https://radacad.com/dynamic-row-level-security-with-organizational-hierarchy-power-bi

https://radacad.com/dynamic-row-level-security-with-power-bi-made-simple

Community Support Team _ Dina Ye
If this post helps, then please consider Accept it as the solution to help the other members find it more
quickly.

Hola v-diye-msft,

Gracias por el enlace. Muy apreciado. Lo tengo un poco de trabajo en el momento, pero tengo un problema.

Tengo 3 diferentes criterios de filtrado País/BU/ INL. Por el momento, cada usuario necesita información para cada uno de los criterios para que RLS funcione. Si falta uno de los criterios, no mostrará datos para la persona.

Ejemplo:

Usuario: A@aa.com

Tabla de usuario: Suecia/BU1/EPC

Esto está funcionando bien.

Usuario: A@aa.com

Tabla de usuario: Suecia/BU1/

En lugar de ver como arriba, no verá nada porque falta la información INL (EPC)

Tengo un rol con algo de código en cada una de las tablas de filtrado

image.png

¿Cómo puedo modificar este código para permitir que se filtre si a uno de los usuarios le falta uno de los 3 criterios de requierd?

Tal vez som cómo :

If(Users[2-BU]-Blank(), Ignore,

CONTIENE (
Usuarios
Usuarios[Correo electrónico],
USERPRINCIPALNAME(),
Usuarios[2-BU],
[BU]
)
||
CONTIENE (
Usuarios
Usuarios[Correo electrónico],
USERPRINCIPALNAME(),
Usuarios[4-Global],
"Admin")

¿Qué te parece?

El modelo

Oceans88_0-1593682322115.png

Sólo chocando para ver si alguien tiene algún comentario sobre mi publicación anterior.

Atentamente

No Ideas, If there is something unclear just let me know and will clarify as best as possible

 

Super User III
Super User III

Hola @Oceans88 ,

Chek si el siguiente hilo ayuda:

https://community.powerbi.com/t5/DAX-Commands-and-Tips/Dynamic-RLS/m-p/1180195

Gracias

Pragati





If this helps, Appreciate a KUDOS!
Did I answer your question? Mark my post as a solution!


Proud to be a Super User!




Hola Pragati, Gracias por compartir el enlace. No, lo he intentado y no puedo det para trabajar. He visto este post antes. ¿Alguna idea más sobre cómo lograr?

Helpful resources

Announcements
secondImage

Happy New Year from Power BI

This is a must watch for a message from Power BI!

December Update

Check it Out!

Click here to read more about the December 2020 Updates!

Community Blog

Check it Out!

Click here to read the latest blog and learn more about contributing to the Power BI blog!

Get Ready for Power BI Dev Camp

Get Ready for Power BI Dev Camp

Mark your calendars and join us for our next Power BI Dev Camp!.

Top Solution Authors