Power BI Embedded + Data Gateway + SQL server + Método de importación + RLS

Un usuario Pregunto ✅

Dan_0101

Hola,

Esperaba que alguien pudiera aclarar una situación en la que me encuentro, los objetivos / descripción general son:

– Compartir informes con nuestros clientes externos (NO un escenario B2B)

– Utilice Power BI Embedded (sí, tenemos recursos para desarrolladores)

La página 162 de la guía de implementación de Power BI Enterprise menciona que puede ser mejor crear roles para RLS en la fuente de datos en lugar de dentro del archivo PBIX, con lo que definitivamente estoy de acuerdo. El problema que parece tener es que no parece posible pasar un rol (o cualquier información realmente) al servidor SQL, solo conoce la cuenta SQL configurada en la fuente de datos de Data Gateway.

Servidor SQL <-> Data Gateway + Data Source (acceso configurado usando una cuenta SQL local)

Archivo PBIX con roles publicados – emparejado con Data Gateway + Data Source

Aplicación web + Principal de servicio + Rol <-> Inicio de sesión de cliente externo (se realiza la autenticación, se pasa el rol, se muestran los datos apropiados)

La única cuenta que el servidor SQL conoce es la configurada en la fuente de datos de la puerta de enlace de datos. ¿Podemos configurar RLS en el servidor SQL de alguna manera o debemos mirar usando un método diferente (como SSAS como fuente de datos?)

Espero que tenga sentido, muchas gracias por cualquier comentario.

Salud,

D

Jayendran

En respuesta a Dan_0101

Hola @ Dan_0101

Ah, sí, ahora recibo algunos requisitos más detallados, según los datos que proporcionó, podemos decir que no pudo usar RLS desde su fuente de datos.

SSO no funcionará para su requisito debido a

  • SSO no puede trabajar con usuarios externos.
  • El modo de importación solo es adecuado para la autenticación de una sola cuenta de servicio SQL.

Jayendran

Hola @ Dan_0101,

Por favor, vea los enlaces a continuación.

https: //ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/14216322-leverage-sql-server-2016 …

https: //powerbi.microsoft.com/en-us/blog/announcing-single-sign-on-support-when-connecting-to-data-s …

https://community.powerbi.com/t5/Service/RLS-for-SQL-Server-2016-with-Power-BI/td-p/133868

Dan_0101

En respuesta a Jayendran

¡Gracias por tu respuesta @Jayendran!

He leído la mayoría de esos y creo que hay un par de cosas:

1) Para cada consulta, el servicio Power BI incluye el nombre principal de usuario (UPN), que es el nombre de usuario completo del usuario que ha iniciado sesión actualmente en el servicio Power BI.

No tenemos cuentas para nuestros clientes externos en nuestro dominio; según tengo entendido, ¿el nombreprincipal de usuario () y el SSO no nos serán útiles?

2) Estamos ejecutando procedimientos almacenados para recopilar nuestros datos del servidor de informes, por lo que estamos utilizando el método de importación, no DirectQuery

3) Tenemos un entorno de demostración que funciona con el RLS configurado dentro del archivo PBIX; solo queremos cambiar los roles al servidor SQL.

No entiendo cómo un dato de un no AD / AAD externo el cliente puede atravesar la puerta de enlace de datos y ser «visto» por SQL Server.

Jayendran

En respuesta a Dan_0101

Hola @ Dan_0101

Ah, sí, ahora recibo algunos requisitos más detallados, según los datos que proporcionó, podemos decir que no pudo usar RLS desde su fuente de datos.

SSO no funcionará para su requisito debido a

  • SSO no puede trabajar con usuarios externos.
  • El modo de importación solo es adecuado para la autenticación de una sola cuenta de servicio SQL.

Dan_0101

En respuesta a Jayendran

Gracias por aclarar @Jayendran

También acabo de volver a leer este artículo:

https://docs.microsoft.com/lt-lt/power-bi/developer/embedded-faq

Con la entidad de servicio, puede configurar seguridad a nivel de fila (RLS) mediante una fuente de datos de conexión en vivo local de SQL Server Analysis Services (SSAS). De esta manera, puede administrar los usuarios y su acceso a los datos en SSAS cuando se integra con Power BI integrado utilizando una entidad de servicio.

Dice específicamente SSAS, así que creo que si queremos hacer esto, tendremos que pasar a usar eso en lugar de la base de datos SQL.

Tantas piezas, a veces es difícil averiguar qué respalda lo que 🙂

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *