Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Icon for Administrator rankAdministrator
1 year ago

Cómo proceder en la implementación de RLS

Necesita orientación sobre la implementación de la seguridad de nivel de fila en la siguiente tabla Empleados:

EmpleadoDepartamento LocalDepartamentoID de administrador
Johnny DeppAnálisis de datosFinanzasKris Moll
Brad PittAnálisis de datosFinanzasKris Moll
Matt DamonControl de productosFinanzasMatt Damon
James GreavesControl de productosFinanzasMatt Damon
Roopa NaragrachaDatos de mercadoFinanzasFilip Navros
Madhu SaiDatos de mercadoFinanzasFilip Navros
Olla de JayRiesgo de liquidezFinanzasChalie Ker
George ClooneyRiesgo de liquidezFinanzasChalie Ker
Clive OwenFP&AFinanzasClive Owen
Raju SinghFP&AFinanzasClive Owen
Chris HelmsworthFP&AFinanzasClive Owen
Kelly SmithAnálisis de datosFinanzasKris Moll

Este es el modelo de datos:

Los empleados que no son gerentes, solo deben ver sus datos. Entonces, por ejemplo, Johnny Depp es un empleado y no es un gerente, por lo que solo debería ver sus registros.

Los empleados que son gerentes deben ver sus datos, así como los empleados que administran. Entonces, por ejemplo, Clive Owen es un empleado con estatus de gerente, por lo que también debería ver sus registros, Raju Singh y Chris Helmsworth.

¿Cómo lo hago?

5 Replies

  • Hola

    Si solo tiene dos capas, se puede manejar de la siguiente manera:

    1) Unir los correos electrónicos del empleado como "Correo electrónico del empleado" y del gerente como "Correo electrónico del gerente". En el escritorio, siga lo siguiente:

    https://learn.microsoft.com/en-us/fabric/security/service-admin-row-level-security

    2) Aquí se definen 2 roles "Empleado" y "Gerente"

    3) Para el rol de empleado, establezca "Correo electrónico del empleado" == userprincipalname()

    4) Para el rol de administrador, establezca "Correo electrónico del administrador" == userprincipalname()

    5) Siga la configuración de RLS en el servicio Power BI después de la publicación

  • Hola @mp390988 has probado a usar PATH y PATHCONTAINS dax ?

    Los empleados que son gerentes deben ver sus datos, así como los empleados que administran.

    PATHCONTAINS([Ruta], LOOKUPVALUE(data[Clave de empleado], data[correo electrónico], USERPRINCIPALNAME()))

  • @mp390988,

    Nos gustaría hacer un seguimiento para ver si la solución proporcionada por el superusuario resolvió su problema. Por favor, háganos saber si necesita más ayuda.
    Si nuestra respuesta de superusuario resolvió su problema, márquela como "Aceptar como solución" y haga clic en "Sí" si le resultó útil.

    Saludos
    Vinay Pabbu

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Icon for Administrator rankAdministrator

      @mp390988,

      Nos gustaría hacer un seguimiento para ver si la solución proporcionada por el superusuario resolvió su problema. Por favor, háganos saber si necesita más ayuda.
      Si nuestra respuesta de superusuario resolvió su problema, márquela como "Aceptar como solución" y haga clic en "Sí" si le resultó útil.

      Saludos
      Vinay Pabbu

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Icon for Administrator rankAdministrator

        @mp390988,

        Nos gustaría hacer un seguimiento para ver si la solución proporcionada por el superusuario resolvió su problema. Por favor, háganos saber si necesita más ayuda.
        Si nuestra respuesta de superusuario resolvió su problema, márquela como "Aceptar como solución" y haga clic en "Sí" si le resultó útil.

        Saludos
        Vinay Pabbu