Note:
- Este tutorial requiere acceso a Oracle Cloud. Para registrarse en una cuenta gratuita, consulte Introducción a la cuenta gratuita de Oracle Cloud Infrastructure.
- Utiliza valores de ejemplo para credenciales, arrendamiento y compartimentos de Oracle Cloud Infrastructure. Al finalizar el laboratorio, sustituya estos valores por otros específicos de su entorno en la nube.
Implantación de conexión única en Oracle Fusion Cloud Transportation Management 6.4.3
Introducción
Puede integrar aplicaciones con dominios de Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) para activar la autenticación y la conexión única (SSO) mediante varios métodos. Aunque muchas aplicaciones soportan protocolos estándar como SAML y OAuth, Oracle Fusion Cloud Transportation Management (Oracle Transportation Management) soporta la autenticación basada en cabecera HTTP para SSO.
El gateway de aplicación actúa como proxy de autenticación entre OCI IAM y Oracle Transportation Management. Está disponible en dos opciones de despliegue: una imagen de Docker y una imagen de dispositivo virtual. Este tutorial se centra en el despliegue y el uso de la versión basada en Docker.
La implementación de SSO ayuda a aprovechar las capacidades de seguridad de OCI IAM, incluida la MFA, la seguridad adaptativa, las políticas de conexión, etc. Esto ayuda a aplicar una capa adicional de control de acceso para proteger aún más la instancia de Oracle Transportation Management.
Objetivos
-
Cree una aplicación empresarial en el dominio de OCI que represente a Oracle Transportation Management.
-
Cree un gateway de aplicación en su dominio de OCI y asócielo a la aplicación empresarial.
-
Descargue los archivos necesarios para configurar la imagen de Docker.
-
Cree una instancia de OCI Compute y actualice las configuraciones de red para permitir la entrada.
-
Configure la imagen de Docker para ejecutar el gateway de aplicación.
-
Actualizar la configuración de SSO de la configuración del servidor de Oracle Transportation Management.
-
Valide el flujo de conexión para garantizar que la autenticación SSO funciona.
Requisitos
-
Acceso a un arrendamiento de OCI. Para obtener más información, consulte Cuenta gratuita de Oracle Cloud Infrastructure.
-
Rol de administrador de dominio de identidad para el dominio de identidad de OCI IAM. Para obtener más información, consulte Understanding Administrator Roles.
-
Una instancia de Oracle Transportation Management.
-
Acceso de administrador a la capa de aplicación de Oracle Transportation Management.
Tarea 1: Configuración de una aplicación empresarial
Se necesitan los siguientes detalles sobre Oracle Transportation Management antes de continuar:
-
Lista de recursos y nivel de protección: por ejemplo,
/home
,/jobs
o/*
. También si estos requieren acceso público o autenticación de usuario. -
Host/IP con puerto en el que se ejecuta la aplicación Oracle Transportation Management, como el servidor de origen.
-
Cabecera HTTP que Oracle Transportation Management espera que pase OCI IAM, que se conciliará con un usuario en la base de datos de Oracle Transportation Management. Estamos utilizando
appuid
en este tutorial.
Realice los pasos:
-
Abra el menú en la consola de Oracle Cloud y haga clic en Identidad y seguridad. En Identidad, haga clic en Dominios. Seleccione el compartimento para buscar el dominio.
-
Haga clic en el nombre del dominio y, en Aplicaciones integradas, haga clic en Agregar aplicación.
-
Seleccione Aplicación empresarial y haga clic en Iniciar flujo de trabajo.
-
Introduzca un nombre para la aplicación. La URL de aplicación es el host y puerto del servidor de gateway de aplicación. También puede ser una URL que tenga un redireccionamiento al gateway de la aplicación. Active la casilla de verificación Mostrar en mis aplicaciones. Si desea restringir esta aplicación solo a usuarios autorizados, active Se debe otorgar esta aplicación al usuario.
-
Haga clic en Next (Siguiente) y, a continuación, en Next (Siguiente) para omitir las pantallas de configuración de OAuth.
-
Haga clic en Agregar recurso para agregar los recursos de GTM. Proporcione un nombre y una URL de recurso. En nuestro caso será
/.*
ya que estamos protegiendo todos los recursos. Realice una comprobación en Usar expresiones de expresión regular. -
Haga clic en el botón Agregar recurso gestionado y seleccione el recurso del paso 6 anterior en el menú Recurso. Seleccione el método de autenticación como token de acceso o formulario. En Cabeceras, introduzca
appuid
como Nombre yUser Name
como Valor.Nota: En nuestro ejemplo, hemos seleccionado
Default
como el único recurso yForm or Access token
como método de autenticación para proteger todos los recursos. Esto garantiza que solo se permita el acceso a los usuarios autenticados. Oracle Transportation Management también necesita una cabeceraappuid
con el nombre de usuario como valor. Hemos identificado esto como parte de nuestra tarea inicial de recopilar detalles. -
Haga clic en Finalizar y, a continuación, active la aplicación haciendo clic en la opción Activar.
-
Asigne algunos usuarios/grupos a la aplicación en Recursos. Puede seleccionar usuarios locales y federados, pero asegúrese de que estos usuarios existen en la base de datos de Oracle Transportation Management.
Tarea 2: Registro del gateway de aplicación en OCI IAM
El gateway de aplicación se encuentra frente a la aplicación, intercepta solicitudes, autentica usuarios y, a continuación, permite el acceso a los recursos.
Recopilar detalles del servidor:
Se requieren los siguientes detalles sobre el servidor app-gateway antes de continuar:
-
Dirección IP/host del servidor del gateway de aplicación. Puede ser una instancia de OCI Compute o cualquier otro servidor que se ejecute en una nube o local.
-
El servidor del gateway de aplicación necesita conectividad a Internet para acceder a la URL de dominio de OCI IAM. También necesita conectividad a la aplicación ascendente de Oracle Transportation Management.
-
Detalles del servidor de origen (host y puerto) de Oracle Transportation Management en el que se ejecuta la aplicación ascendente.
Realice los pasos:
-
En Identidad, seleccione Dominios y, a continuación, haga clic en el dominio que utilizó antes.
-
En Seguridad, seleccione Gateways de aplicación y haga clic en Crear gateway de aplicación. Introduzca un nombre y haga clic en Agregar gateway de aplicación.
-
Haga clic en Add Host (Agregar host). Proporcione un nombre en el identificador de host y agregue los detalles del servidor de gateway de aplicación en Host y Puerto. Si aún no tiene los detalles, agregue valores de marcador de posición y vuelva a visitar este paso después de finalizar la tarea 4.
-
Haga clic en la casilla de control SSL enabled (SSL activado), introduzca lo siguiente en Additional properties y haga clic en Add host (Agregar host).
ssl_certificate /usr/local/nginx/conf/cert.pem; ssl_certificate_key /usr/local/nginx/conf/key.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5;
Nota: No estamos finalizando SSL en el equilibrador de cargas. Por lo tanto, debemos seleccionar la casilla de verificación SSL para permitir el acceso al servidor de gateway de aplicación a través de SSL. Los nombres de archivo y la ruta de acceso del certificado y la clave se basan en la ruta de acceso real del contenedor.
-
Haga clic en Siguiente para agregar los detalles de la aplicación empresarial y el servidor de origen que ha creado en la tarea 1.
-
Haga clic en Agregar aplicación y seleccione la aplicación empresarial en el menú Aplicación. En Seleccionar un host, seleccione el host del paso 3. En Prefijo de recurso, introduzca
/
para proxy de la aplicación empresarial. Por último, en Servidor de origen, introduzca el nombre de host/IP del servidor de aplicaciones de Oracle Transportation Management. Haga clic en Cerrar.Nota: Al utilizar
/
como prefijo de recurso, cada solicitud pasada de/
se reenvía a la aplicación empresarial. -
Haga clic en Activar gateway de aplicación. Anote los valores de ID de cliente y Secreto de cliente, ya que será necesario más adelante.
Tarea 3: Descargue los archivos necesarios para configurar el contenedor y generar la cartera
-
En la consola de OCI, vaya a Identidad, Dominios, su dominio, Configuración y haga clic en Descargas.
-
Descargue la imagen de Docker del paquete de Docker unificado de gateway de aplicación para Identity Cloud Service.
-
A continuación, descargue la herramienta de cartera AppGateway que se utilizará para generar una cartera.
-
Descomprima los archivos zip descargados. La imagen del docker tendrá el formato
.tar.gz
. -
Tendrá que copiar el archivo de imagen y la carpeta de cartera de la máquina local en el servidor de gateway de aplicación. A continuación se muestra un ejemplo que muestra cómo utilizar el comando scp desde el shell bash local para enviar el contenido de la carpeta de herramientas de cartera al directorio de archivos del servidor.
scp -i /Users/mac/ssh_private.key -r /Users/mac/idcs-appgateway-wallet-tool-23.2.92-2301160723 opc@xxx.xxx.xxx.xxx:files
Tarea 4: Creación de una instancia informática de OCI y actualización de las listas de seguridad de red
Nota: Si está configurando un servidor/máquina virtual local en su propio entorno o en otro proveedor de nube, puede utilizar los siguientes pasos como referencia para las configuraciones.
-
En la consola de OCI, vaya a Recursos informáticos y haga clic en Instancias. Seleccione el compartimento derecho.
-
Haga clic en Crear instancia. Introduzca el nombre y seleccione un dominios de disponibilidad.
-
Seleccione OS image como Oracle Linux 8 y seleccione una unidad adecuada. Estamos utilizando la memoria
E5 Flex/1 OCPU/8GB
. -
Seleccione la VCN y la subred pública donde desea colocarla.
-
Genere un Par de Claves SSH para conectarse a la Instancia mediante una Conexión de Shell Seguro (SSH), o Cargue una Clave Pública con la que ya cuente.
-
Haga clic en Crear y anote la dirección IPv4.
-
Abra la subred y haga clic en la lista de seguridad asociada a ella.
-
Haga clic en Agregar reglas de entrada y agregue lo siguiente para permitir la entrada de HTTPS a través de TCP y SSH.
Source Type: CIDR Source CIDR: 0.0.0.0/0 IP Protocol: TCP Source Port Range: All Destination Port Range: 443
Source Type: CIDR Source CIDR: 0.0.0.0/0 IP Protocol: SSH Source Port Range: All Destination Port Range: 22
Tarea 5: Configuración del servidor del gateway de aplicación mediante la imagen de Docker
-
Utilice SSH en la instancia informática creada en la tarea 4 con su clave privada.
ssh -i /Users/mac/ssh_private.key opc@xxx.xxx.xxx.xxx
-
Ejecute el siguiente comando para instalar Docker y otras bibliotecas e iniciar el servicio. A continuación, valide que el servicio docker se esté ejecutando.
sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io sudo dnf install libnsl* sudo systemctl enable docker sudo systemctl start docker
sudo systemctl status docker
-
A continuación, agregue el usuario conectado (
opc
en este caso) a la lista de sudoers.sudo usermod -a -G docker $USER
-
Abra el puerto de firewall para activar la comunicación. Estamos utilizando el puerto
443
aquí.sudo firewall-cmd --zone=public --permanent --add-port=443/tcp sudo systemctl stop firewalld sudo systemctl start firewalld
-
Cree un directorio y comience a consolidar los archivos necesarios para crear el contenedor. Estamos utilizando
/home/opc/files
para este tutorial.mkdir files cd files
-
Generar un certificado autofirmado mediante openSSL.
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout server-key.pem -out server-cert.pem
Nota: No se recomienda el uso de certificados autofirmados en un entorno de producción. En su lugar, utilice certificados emitidos por su CA.
-
Cree el archivo de entorno
appgateway
que contiene la información del dominio.vi appgateway-env
CG_APP_TENANT=idcs-XXX IDCS_INSTANCE_URL=https://idcs-XXX.identity.oraclecloud.com:443 NGINX_DNS_RESOLVER=<resolver IP>
Nota: Sustituya
XXX
por los detalles del dominio de OCI IAM. Para la IP de solucionador de DNS, consulte los detalles del servidor de nombres que se encuentran en el archivo/etc/resolv.conf
. -
Genere el archivo de cartera
cwallet.sso
con la herramienta. Para ello, ejecute el siguiente comando. SustituyaClient ID
por el ID de cliente de gateway de aplicación indicado anteriormente. Haga clic en Volver e introduzca el secreto de cliente cuando se le solicite.env LD_LIBRARY_PATH=./lib ./cgwallettool --create -i <Client ID>
-
Ahora que todos los archivos están listos, actualice los permisos para cada archivo. Esto garantiza que el propietario pueda leer, escribir y ejecutar; mientras que los grupos y otros solo pueden leer y ejecutar.
chmod -R 755 <filename>
-
Cargue la imagen en el repositorio local y valídela.
sudo docker load -i appgateway-aarch64-25.1.03-2501230623.tar.gz docker images
-
Cree el contenedor según los archivos y valídelo. Después de ejecutar el siguiente comando, el estado del contenedor debe ser UP.
sudo docker run -p 443:443 -d --name appgateway --env-file /home/opc/files/appgateway-env --env HOST_MACHINE=`hostname -f` --volume /home/opc/files/cwallet.sso:/usr/local/nginx/conf/cwallet.sso --volume /home/opc/files/server-key.pem:/usr/local/nginx/conf/key.pem --volume /home/opc/files/server-cert.pem:/usr/local/nginx/conf/cert.pem local.local/idcs-appgateway-docker_linux_arm64_v8:25.1.03-2501230623
docker ps
Tarea 6: Actualizar la configuración de SSO en Oracle Transportation Management
Nota: Este tutorial es específico de Oracle Transportation Management 6.4.3. Para obtener más información sobre la definición de los distintos parámetros, consulte la guía de seguridad de Oracle Transportation Management aquí: Guía de seguridad. Para otras versiones, consulte Biblioteca web de documentación local de Transport and Global Trade Management.
-
Para el acceso SSO a Oracle Transportation Management, el código de llamada debe transferirse al siguiente parámetro como parte de la solicitud HTTP (donde el nombre de usuario es el GID del usuario en la base de datos). La cabecera
appuid
se transferirá a la cabecera HTTP, el valor de esta cabecera debe coincidir con el nombre de usuario de la base de datos.appuid=username
-
Conéctese a la consola de administración de Oracle Transportation Management y vaya al mánager de usuarios. Cree/actualice el usuario para asegurarse de que haya un nombre de usuario válido que coincida con el usuario de OCI.
-
La configuración de SSO se debe actualizar en el archivo
glog.properties
. Inicie sesión en el servidor y navegue hasta/app/appgtmdevl/Oracle/gtm643/glog/config
. Actualice los siguientes parámetros.glog.security.sso=true glog.security.sso.app0idName=appuid glog.security.sso.appUidLoCation=3 glog.security.sso.logoutButton=true glog.security.sso.logoutUrl-https://idcs-XXX.identity.oraclecloud.com/sso/vl/user/logout
-
A continuación, se debe actualizar la configuración de OHS. Consulte los siguientes ejemplos de la ruta de acceso para localizar el archivo
httpd.conf
.cd /app/OTMappserver/Oracle/Middleware/Oracle_Home/user_projects/domains/otmweb/config/fmwconfig/components/OHS/OTMappserver
cd /app/OTMappserver/Oracle/Middleware/Oracle_Home/user_projects/domains/otmweb/config/fmwconfig/components/OHS/instances/OTMappserver
-
Realice una copia de seguridad del archivo y, a continuación, defina los siguientes parámetros en la configuración.
SimulateHttps On AddCertHeader HTTPS
Por ejemplo:
Listen 1234 NameVirtualHost *:1234 <VirtualHost *:1234> ServerName XXX.XXX DocumentRoot /app/XXX/Oracle/gtm643/web/htdocs DirectoryIndex index.htm <IfModule ossl_module> SSLEngine off </IfModule> <Directory "/app/XXX/Oracle/gtm643/web/htdocs"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> Header set Cache-Control maxage=21600 ExpiresActive On ExpiresDefault "access plus 6 hours" SimulateHttps On AddCertHeader HTTPS </VirtualHost>
-
Reinicie la aplicación y el nivel web para garantizar que los cambios surtan efecto.
-
Asegúrese de que se permite la entrada/salida de red del servidor de gateway de aplicación a su instancia de Oracle Transportation Management. Use la tarea 4.8 como referencia.
Tarea 7: Iniciar sesión a través de SSO y validar
-
Acceda a la URL de servlet desde un explorador. URL de ejemplo:
https://appgatewayserver.domain:443/GC3/glog.webserver.util.FrameGC3Servlet
. -
Tenga en cuenta que debe haber una redirección a la conexión de OCI IAM. Introduzca las credenciales del usuario y el inicio de sesión.
-
Tras la autenticación correcta, se conectará a Oracle Transportation Management.
Enlaces relacionados
Acuses de recibo
- Autor - Tonmendu Bose (ingeniero superior en la nube)
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.
Para obtener documentación sobre el producto, visite Oracle Help Center.
Implement Single Sign-On in Oracle Fusion Cloud Transportation Management 6.4.3
G36632-01
Copyright ©2025, Oracle and/or its affiliates.