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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
Syndicate_Admin
Administrator
Administrator

Los roles de seguridad no funcionan igual después de la actualización de otoño de 2021

También publiqué esto como una idea en Issues, pero también estoy publicando aquí para ver si puedo adjuntar un ejemplo en los comentarios. Aquí está el mensaje original. (Editar: No parece posible adjuntar un panel a una publicación o comentario. ¿Siempre ha sido así?)

He estado usando la seguridad a nivel de fila para pasar el rol de un usuario al panel, lo que me permite restringir la visibilidad de los elementos de diferentes maneras en todo el panel según el rol del usuario. Desde la actualización de otoño de 2021, PowerBI parece ignorar la seguridad de nivel de fila de una tabla en ciertas situaciones, específicamente dentro de columnas calculadas.

Si es posible adjuntar un panel, puedo cargar un ejemplo, pero aquí le indicamos cómo duplicarlo:

  1. Importe o cree una tabla que desee filtrar. Esto puede ser cualquier cosa. Me referiré a esta tabla como FilterTable.
  2. Cree una tabla UserRoles con Enter Data. Asigne un nombre a la columna "Rol" e ingrese "3 - Administrador", "2 - Administrador", "1 - Usuario".
  3. Cree roles de seguridad de nivel de fila, codificando cada uno en su línea correspondiente en UserRoles (es decir, para el rol de administrador, establezca la expresión DAX en [Rol = "3 - Administrador"].
  4. Crear una medida: [_UserRole] = MAX(UserRoles[Role])
  5. Crear una columna calculada en FilterTable: [Visible] = IF([_UserRole] = "3 - Admin", 1, 0)
  6. Crear una visualización visual de tarjeta [_UserRole]. Actualmente mostrará "3 - Admin".
  7. Cree una tabla con datos de FilterTable e incluya [Visible] y [_UserRole]. Estos mostrarán "1" y "3 - Admin", respectivamente.

Después de todo lo que está configurado, vaya a "Modelado" -> "Ver como" y establezca su rol en Usuario. Verá que [_UserRoles] cambiará correctamente a "1 - Usuario", pero la columna calculada [Visible] permanecerá asignada incorrectamente a 1 para cada fila en FilterTable. Anteriormente usaba esta lógica para filtrar la tabla a [Visible] = 1, pero ahora todas las filas se muestran a todos. Tengo entendido que esto se debe a que la columna calculada [Visible] ahora ignora la seguridad de nivel de fila en la tabla UserRoles.

Editar: Después de más pruebas, ahora estoy seguro de que los roles de seguridad no funcionan correctamente. Poner medidas en la tabla directamente mostrará el valor correcto (de acuerdo con RLS), pero usarlas dentro de una columna calculada le permite ver datos que no debería. Esto podría permitir a los usuarios ver datos que no deberían poder ver.

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

@SamKrygsheld

Puede guardarlo en un documento en línea y compartir el enlace, asegúrese de que todos los que tengan el enlace puedan acceder. Gracias.

Paul

Syndicate_Admin
Administrator
Administrator

@SamKrygsheld


Intenté pero no pude crear un modelo adecuado con los pasos proporcionados, se agradece si pudiera crear una muestra corta de pbix sin información confidencial.

Paul Zheng _ Equipo de apoyo a la comunidad
Si esta publicación ayuda, por favor acéptala como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Tengo un pbix listo. ¿Tiene una carga segura de archivos u otra forma en que pueda haérselo llegar? No veo una opción para adjuntarlo a estas publicaciones.

Syndicate_Admin
Administrator
Administrator

@SamKrygsheld

Tenemos un servicio Power BI Embedded activo con cientos de usuarios. Esta tarde, un usuario se quejó de que podía ver los datos de otros usuarios, eso nunca había sucedido antes. El archivo PBIX no se ha actualizado, y una inspección del código del sitio web no ha revelado ningún cambio (y no se han realizado cambios hoy).

He reinstalado una versión del PBIX de julio y el problema persiste, por lo que estoy bastante seguro de que no es la actualización reciente del software de escritorio. La evidencia está empezando a apuntar a código MS que ejecuta Embedded in the Service.

Vi en una de sus publicaciones que Microsoft está investigando. Son bienvenidos a ponerse en contacto conmigo (si leen esto), aunque para ser honesto, no creo que podamos decirles mucho, ya que no hemos cambiado nada hoy.

Hemos tenido que quitar el servicio esta noche. Tendremos que decir a nuestros usuarios a las 8 am GMT de mañana que no hay servicio. Esta sería la primera vez desde que comenzamos hace más de 3 años. Espero que Microsoft esté investigando esto con urgencia.

Por favor, hágamelo saber si descubre algo más, ¡gracias! Y gracias por publicar.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors