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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
jsteckel
Regular Visitor

RLS utilizando una relación inactiva

Hola a todos

Estoy implementando la seguridad de nivel de fila para un conjunto de datos y me he encontrado con un problema que parece que no puedo resolver. Mis tablas y relaciones son las siguientes:

Tabla de dimensiones

Nombre de usuario ? Correo electrónico del usuario

aaa@company.com AAA

bbb@company.com BBB

CCC ccc@company.com

ddd@company.com DDD

* La tabla dimension utiliza RLS en 'Email de usuario' con el siguiente filtro donde [correo electrónico del usuario] - USERPRINCIPALNAME() para que cuando AAA inicie sesión sólo pueda ver sus detalles en la tabla de hechos.

Tabla de ventas

Cuenta ? Orden de la orden de la orden de SalesRep

1234 4567 AAA

1234 3456 AAA

2345 2355 BBB

Tabla de clientes

Cuenta ? SalesRep

1234 AAA

1235 AAA

2345 BBB

Tabla de contactos con el cliente

Cuenta ? Contacto ? ContactEmail

1234 Jane Smith JaneSmith@1234.com

1235 Joe Black JoeBlack@1235.com

2345 Greg Albright GregAlbright@2345.com

Relaciones

Relación activa (muchos a muchos, filtro cruzado único (DimensionTable filtra SalesTable)

• DimensionTable[Nombre de usuario] --> * SalesTable[SalesRep]

Relación inactiva (muchos a muchos, filtro cruzado único (DimensionTable filtra CustomerTable)

• DimensionTable[Nombre de usuario] --> CustomerTable[SalesRep]

Relación activa: CustomerTable[Cuenta] --> CustomerContactTable[Cuenta]

Tabla deseada (sin filtrar):

Cuenta ? SalesRep ? Contacto con el cliente ( CustomerContact) Correo electrónico de contacto

1234 AAA Jane Smith JaneSmith@1234.com

1235 AAA Joe Black JoeBlack@1235.com

2345 BBB Greg Albright GregAlbright@2345.com

Tabla deseada (filtrada cuando AAA inicia sesión):

Cuenta ? SalesRep ? Contacto con el cliente ( CustomerContact) Correo electrónico de contacto

1234 AAA Jane Smith JaneSmith@1234.com

1235 AAA Joe Black JoeBlack@1235.com

Desafío

Estoy trabajando con DirectQuery y Row Level Security, ambos con sus propias limitaciones.

Cualquier tabla que creo basada en SalesTable se filtra por RLS correctamente. Sin embargo, aunque puedo crear la tabla deseada sin filtrar, no consigue filtrarse cuando AAA inicia sesión, muy probablemente porque es una relación inactiva.

Cualquier ayuda es muy apreciada!

3 REPLIES 3
v-yuta-msft
Community Support
Community Support

@jsteckel ,

¿Podría crear una relación de varios entre la tabla De ventas y la Tabla de clientes? Por ejemplo, agregue columnas de índice o algunas otras columnas de indicadores en las dos tablas y cree una relación:

SalesTable[Flag] --> * CustomerTable[Flag]

Equipo de Apoyo Comunitario _ Jimmy Tao

Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

v-yuta-msft,

Gracias por la idea. Tengo 2 relaciones entre SalesTable y CustomersTable. Son:

Activo: SalesTable[AccountNumber] - CustomerTable[AccountNumber]

Inactivo: SalesTable[SalesPerson] - CustomerTable[SalesPerson]

Funcionó para la tabla CustomerContact para activar el vínculo SalesPerson, por desgracia, rompe otras matrices financieras en los informes. Son más importantes, así que tendré que dejar esas relaciones como son.

Tal vez tenga que hacer un conjunto de datos independiente-informe y hacer que los vínculos correctos activos para trabajar con la seguridad de nivel de fila.

Greg_Deckler
Super User
Super User

Sí, es debido a la relación inactiva. No estoy seguro de que eso ayude. 🙂

@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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