En este post vamos a ver el servicio Portal de SAP Cloud Platform. Es muy conocido el uso de este servicio como portal corporativo interno para los empleados de una compañía, especialmente actuando como FIORI Launchpad mostrando aplicaciones FIORI. En este caso lo que revisaremos es el uso de portal como sitio externo público añadiendo además applicaciones SAPUI5 que también configuraremos para que sean públicas.
Qué deberías saber antes de empezar:
Como sólo queremos enseñar el concepto, vamos a trabajar básicamente con una plantilla freestyle de portal de SAP, pero tú puedes hacerlo sobre cualquier portal de SCP.
Vamos a trabajar en el entorno NEO, aunque tenemos las misma funcionalidad también desde Cloud Foundry.
Si todo esto no te es familiar, puedes echar un vistazo a estos tutoriales para ver cómo crear un Portal SAP:
- Entorno NEO: Get Started with SAP Cloud Platform Portal (Neo)
- Entorno Cloud Foundry: Create Your First Portal Site (Cloud Foundry)
PASO 1: HACER PÚBLICO TU PORTAL
Necesitarás abrir una sesión de incógnito o un navegador donde no hayas iniciado sesión en tu cuenta de SAP Cloud Platform. Utilizaremos esta sesión para comprobar si nuestro portal está público o no.
Si la probamos ahora, esto es lo que vemos:

La página no es pública todavía, así que SAP nos pide que iniciemos sesión para poder ver el contenido.
Lo primero que tenemos que hacer es entrar al servicio del portal en modo edición → gestión de contenidos → catálogos.

Aquí vamos a crear un nuevo catálogo llamado Guests (por ejemplo).

En la segunda opción (aplicaciones) tenemos que hacer click en el signo ‘+’ y seleccionar el nombre de nuestro portal en la lista que nos aparece para añadirlo.

En la tercera y última opción, tenemos que asignar el rol ‘Anonymous’ a nuestro catálogo y guardar.


PASO 2: HACER UNA APLICACIÓN SAPUI5 PÚBLICA
De acuerdo, ahora tenemos nuestro Portal SCP público y todo el mundo puede verlo, pero ¿y si tenemos una aplicación SAPUI5 desplegada en él? ¿Podría verla todo el mundo sin tener una sesión iniciada? Y más importante todavía, ¿tiene sentido una aplicación SAPUI5 anónima? Bueno, evidentemente no lo tiene en el típico portal corporativo para que un empleado solicite vacaciones o para actualizar el stock de un almacén. Pero por ejemplo en un portal público podemos enlazar un formulario de contacto, mostrar unos gráficos interactivos, una calendario de eventos, etc.
Vamos a ver cómo hacerlo.
El desarrollo de una aplicación es independiente a cualquier portal, pero en el momento en que queremos asociar una aplicación SAPUI5 desplegada en nuestra cuenta SCP con nuestro portal, tenemos que especificar el método de autentificación y el rol correspondiente. En nuestro tanto, tenemos por tanto que añadir nuestra aplicación al nuevo catálogo que hemos creado.

Esto podría parecer suficiente, pero si probamos a acceder a la aplicación dentro de nuestro Portal este es el resultado:

Un pop-up nos advierte de que algo está mal en nuestra aplicación. Esto se debe a que necesitamos especificar el método de autentificación mencionado anteriormente.
Para ello ve al código de tu aplicación, selecciona el archivo ‘NEO-app.json’ y añade la siguiente linea de código en él:

Desplegamos de nuevo nuestra aplicación SCP para actualizar su versión en el Portal y ya todo el mundo podrá acceder a nuestra aplicación de forma anónima.

Y eso es todo. Ya tenemos nuestro portal público alojado en SAP Cloud Platform con aplicaciones anónimas de SAPUI5.
En otros posts veremos cómo vincular el portal a un dominio corporativo, un par de opciones para enviar correos de notificaciones vinculados a este portal o cómo utilizar el servicio HANA de SCP para utilizarlo como backend en esta arquitectura.