La red del Business Intelligence
Hola ,
Para acceder a esos informes saiku publicados en pentaho 7 server desde una aplicación tercera necesito la URL de esos informes pero:
- Una vez guardado el informe , podía obtener la URL pulsando en “Open In a New Window” (lo cual es correcto), pero solo funciona si ya estás autenticado. Si cierras sesión e invocas esa URL no funciona (te pide usuario y clave, y estos informes estarán abiertos al público).
Puedes modificar los archivos de pentaho server para enviar en la URL el user y la pass. De esta manera cualquier persona que posea el link, podrá ver el análisis.
No queremos enviar usario y password en la URL
En Pentaho hay formas de que determinadas URL (incluso patrones, no solo URLs estáticas) sean públicas, pero no sé cómo afecta a Saiku, y no recuerdo cómo se hacía exactamente."
Posibles soluciones PARA NO ENVIAR USER y PASS
Solución 1
Lo que puedes hacer es desde PUC:
1) Crear un user público, con permisos restringidos.
2) Crear una carpeta pública, en donde pondrás los reportes que pueden ver otras personas.
3) Asigna los permisos tal que lo único que pueda hacer el user público sea ejecutar los reportes de la carpeta pública.
¿Como seria esa solución en detalle ? , por favor detallarla
Solución 2
https://help.pentaho.com/Documentation/7.1/0P0/Setting_Up_User_Secu...
For the Pentaho User Console (PUC), your predefined users and roles can be used if you are already using a security provider such as LDAP, Microsoft Active Directory (MSAD), or Single Sign-On. Pentaho Data Integration (PDI) can also be configured to use your implementation of these providers or Kerberos to authenticate users and authorize data access.
De ese link las dos soluciones de abajo NO SERVIRIAN.
Remove Security by Enabling Anonymous Access
Pass Authentication Credentials in URL Parameters
Solución 3
http://pentahohispano.blogspot.com.es/2015/10/bypass-pentaho-login-...
En muchas ocasiones tengo que acceder a un recurso de pentaho desde terceras aplicaciones. Tales cómo un cuadro de mandos, o un informe. En estos casos, siempre nos encontramos con la misma pregunta.... ¿Le vamos a obligar al usuario a volver a hacer login ? En caso de que no queramos hacerlo... ¿Como lo vamos a gestionar?
Tenemos varias formas, algunas mejores y otras peores... Pedro Alves ya ha hablado de esto en varias ocasiones. Su post más reciente y recomendable es este:
http://pedroalves-bi.blogspot.com.es/2015/02/useful-tips-easy-authe...
Básicamente: LAS OPCIONES QUE HAY SON:
Pasar usuario y contraseña por la url ... (No muy recomendable)
Habilitar acceso anónimo... (y pierdo la seguridad)
Configurar las dos aplicaciones para hacer Single Sign On (CAS)
Login basado en cookies https://help.pentaho.com/Documentation/5.3/0R0/070/010/00A
Siempre, las opciones más recomendables son la 3 y la 4 aunque hay ocasiones en las que no es posible por cualquier motivo.. Por lo que es interesante tener una opción intermedia.
Por eso en Jortilles hemos creado a ... Urbano
Un filtro que te permite acceder a ciertas urls conocidas si le das la contraseña. Para eso codificaremos las llamadas bajo cierto patrón conocido por Urbano y por la aplicación tercera:
http://localhost:8080/pentaho/Urbano?token=MI_TOKEN&dst=MI_DESTINO
Donde:
MI_TOKEN es mi clave de acceso codificada
MI_DESTINO es el destino conocido al que quiero acceder.
Un administrador cuidadoso dirá que este método está bien. Pero que una vez hecho login tienes acceso a todos los recursos de Pentaho. Ya has hecho login. Ya estás dentro. Ya puedes ir a http://localhost:8080/pentaho/Home
Aquí es donde entra en juego nuestro proxy http. Si queremos realmente exponer SOLO ciertas URLs podemos poner un proxy http por medio que nos intercepte el trafico y nos exponga tan sólo las urls que queremos dejar disponibles. De esta forma también enmascararemos las llamadas y nadie sabrá lo que hay detrás.
Ahora ya si que sólo exponemos al mundo ciertas urls de forma controlada. Manteniendo el acceso total y normal desde nuestra intranet .
El proyecto está en Github: https://github.com/jortilles/byPassPentahoLogin
¿ Por favor que solución de las tres que escribo seria la mas optima y facil de implementar ?
Si es la solución 1 como se implementaria ???
Gracias y saludos
Antonio
Etiquetas:
Buenas.
Estuve analizando un poco la API de Saiku, y tenemos la posibilidad de ejecutar una URL que:
1) en caso de NO tener sesión iniciada, nos solicita user y pass, y
2) ejecuta el reporte saiku.
La URL es la siguiente:
En donde:
Saludos
--
Bienvenido a
Open Business Intelligence
© 2024 Creado por Emilio. Tecnología de