Por ejemplo, supongamos que el desarrollador X tiene una aplicación web para sus clientes. Los clientes acceden a la app con sus propias credenciales y pueden ver los datos de ventas. para diferentes tiendas. Cada cliente tiene acceso a una lista diferente de tiendas. El desarrollador quiere incorporar un panel de Looker Studio en su aplicación para que, cuando un cliente acceda a su cuenta, solo vea los datos de ventas de las tiendas a las que tienen acceso. Los clientes no deberían tener que acceder a su Cuenta de Google. para que este proceso funcione.
Para la solución propuesta, el desarrollador deberá crear un Community Connector, pasar un token a través de la URL de incorporación y, luego, filtrar los datos según el token.
Requisitos
- Los lectores del panel accederán a la aplicación de terceros.
- La aplicación debe pasar un token único al panel de Looker Studio. a través de la URL incorporada. El token se puede usar para buscar información de filtros o encriptar la información del filtro.
- El conector de la comunidad debe poder convertir el token en el filtro. de salida.
Limitaciones
- Si eres cliente de G Suite y tu administrador inhabilitó el uso compartido Drive a “Cualquier persona con un enlace”, no podrás compartir el con usuarios ajenos a tu organización.
Solución
Completa todos los pasos que se indican a continuación para implementar la solución.
Genera un token de usuario en la app web
Genera un token único para cada usuario que haya accedido a tu aplicación web. pasarás este token al panel incorporado en un paso posterior.
Debes usar el token para filtrar los datos relevantes. Incluye las siguientes opciones:
- Crea un extremo de API que muestre datos filtrados o la información del usuario para un token específico.
- Encripta la información del usuario en el token para que pueda desencriptarse más tarde en el conector.
Crea un nuevo conector de la comunidad
Revisa Cómo funcionan los conectores de la comunidad y completa el Codelab del Conector de la comunidad para comenzar. Usa el Herramientas de desarrollo local para crear conectores y lograr una forma más rápida y sencilla de desarrollo de software.
Escribe el código del conector
getConfig()
debe mostrar al menos un elemento de configuración. Se usará para capturar un token de los parámetros de la URL de incorporación.function getConfig(request) { var cc = DataStudioApp.createCommunityConnector(); var config = cc.getConfig(); config .newTextInput() .setId('token') .setName('Enter user token'); // TODO: Add additional config values if applicable for your connector config.setDateRangeRequired(false); config.setIsSteppedConfig(false); return config.build(); }
getData()
tendrá acceso al token a través derequest.configParams
. Usa el token para recuperar datos filtrados. filtrar los datos recuperados existentes.
Según el ejemplo anterior, el token seríarequest.configParams.token
EngetData()
, el token se pasa a un servicio de REST. Extremo de la API para obtener una lista de los IDs de tienda. Luego, se usan estos ID de tienda para construir la consulta en SQL y recuperar datos de ventas.var STORE_ID_API = 'https://www.example.com/api/storeid'; var QUERY_STRING_PREFIX = "SELECT StoreName, Sales from stores" function getData(request) { var token = request.configParams.token; var storeIds = getStoreIdList(token); var queryString = constructQueryString(storeIds); var fetchedData = fetchData(queryString); // rest of getData() implementation } function getStoreIdList(token) { var url = STORE_ID_API; var response = UrlFetchApp.fetch(url); var parsedResponse = JSON.parse(response); return parsedResponse.storeIds; } function constructQueryString(storeIds) { var storeIdString = storeIds.join(','); var queryString = QUERY_STRING_PREFIX + ' WHERE storeId in (' + storeIdString + ')'; return queryString; }
Crea el panel
- Comprende cómo funcionan las implementaciones y versiones para los conectores.
- Crea una implementación de producción para el conector.
- Usa el vínculo de la implementación de producción para crear una fuente de datos y un informe en en Looker Studio.
- Para el parámetro de configuración
token
, Permite que los lectores de informes modifiquen los valores de los parámetros. - Comparte el panel con los usuarios seleccionados o con "Cualquier persona con "enlace".
- Habilita la incorporación para el informe.
Incorpora el panel en tu plataforma
- Descubre cómo funcionan los parámetros de URL de los informes.
- Pasa el valor del token generado de forma dinámica mediante los parámetros de URL al
informe incorporado de Looker Studio.
La URL de incorporación será similar a la siguiente:
`https://lookerstudio.google.com/embed/reporting/REPORT_ID/page/PAGE_ID?config=%7B%22ds0%22%3A%7B%22token%22%3A%22TOKEN_VALUE%22%7D%7D
Recomendaciones
- Debes crear un token de corta duración.
- Asegúrate de que el panel no filtre información con una visualización token no válido.