Note:
- Este tutorial requiere acceso a Oracle Cloud. Para registrarse para obtener 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 la práctica, sustituya estos valores por otros específicos de su entorno en la nube.
Activar SSO de utilidad de interfaz de Excel a componente con OCI IAM mediante el flujo de código de dispositivo
Introducción
La utilidad Interfaz de Excel a Componente (Excel a CI) en PeopleSoft sirve como una herramienta invaluable, lo que permite a los usuarios importar sin problemas datos de hojas de cálculo de Microsoft Excel a la base de datos PeopleSoft mediante la autenticación estándar de nombre de usuario y contraseña. Cada libro de trabajo de origen consta de hojas de trabajo y módulos de código de Excel Visual Basic que ejecutan la lógica de negocio esencial para cada transacción. Para obtener más información, consulte Understanding the Excel-to-Component Interface Utility.
Con los rápidos avances de Oracle Cloud Infrastructure Identity and Access Management (OCI IAM), la demanda de aplicaciones como PeopleSoft para soportar Single Sign-On (SSO) se volvió cada vez más vital. Esta evolución refleja la necesidad de experiencias de usuario optimizadas, seguridad mejorada y acceso simplificado a través de múltiples plataformas, lo que permite a los usuarios navegar sin problemas mientras mantienen protocolos de autenticación sólidos.
OCI IAM sirve como un marco sólido para gestionar usuarios y roles, facilitar la federación y el aprovisionamiento de usuarios, y permitir una integración segura de aplicaciones a través de la configuración de Oracle SSO y la administración del lenguaje de marcado para afirmaciones de seguridad (SAML)/proveedor de identidad basado en OAuth (IdP). En particular, incluye el gateway de aplicación de dominios de identidad de Oracle, que soporta la conexión única (SSO) para aplicaciones que utilizan la autenticación basada en cabecera, como PeopleSoft. Para obtener más información, consulte Configuración de la autenticación perfecta para aplicaciones PeopleSoft mediante dominios de identidad de OCI IAM.
En este tutorial, exploraremos la transformación de la hoja tradicional de Excel a CI, modernizándola para soportar protocolos de autenticación estándar. Profundizaremos en cómo se puede utilizar OCI IAM SSO para autenticar usuarios, lo que permite cargas de datos fluidas a través de estas hojas de cálculo mejoradas.
PeopleSoft Integración de SSO con OCI IAM
PeopleSoft se integra con OCI IAM para SSO a través del gateway de aplicación, que funciona como proxy inverso. Intercepta solicitudes HTTP en la interfaz web PeopleSoft, lo que garantiza que los usuarios estén conectados y autorizados. El dominio de identidad de OCI IAM gestiona la autenticación para la aplicación PeopleSoft.
Introducción al soporte de OCI IAM para el flujo de código de dispositivo
Device Code Flow permite la autenticación de usuarios en dispositivos o sistemas operativos que carecen de un explorador web. Este método permite a los usuarios iniciar sesión de forma interactiva mediante otro dispositivo, como una computadora o un teléfono móvil. La siguiente imagen ilustra cómo funciona el flujo de código de dispositivo.
Para obtener más información sobre el flujo de código de dispositivo y su configuración en OCI IAM, consulte Uso del flujo de dispositivo OAuth de IDCS para diversión y beneficios y Tipo de permiso de código de dispositivo.
Además, entendemos que Device Code Flow es compatible con las hojas de cálculo de Microsoft Excel. Para obtener más información, consulte Excel, OAuth 2.0 and Device Code Flow. Mejoraremos la hoja de cálculo tradicional de Excel a CI para admitir el flujo de código de dispositivo. Comencemos por crear una aplicación confidencial en OCI IAM para facilitar esta integración.
Objetivos
-
Utilice las credenciales de SSO de OCI IAM para cargar datos en la base de datos PeopleSoft mediante el flujo de código de dispositivo.
- Descargue el archivo de Excel en CI y guárdelo en el sistema local.
- Cree una aplicación confidencial en OCI IAM para soportar el flujo de código de dispositivo.
- Actualice la función de macro de Visual Basic (VB) existente y agregue los detalles de conexión de OCI IAM para cargar datos en la base de datos PeopleSoft.
- Transfiera los datos de ejemplo de la hoja de cálculo de Microsoft Excel actualizada a la base de datos PeopleSoft mediante las credenciales SSO de OCI IAM y el flujo de código de dispositivo.
Requisitos
-
Acceso a un arrendamiento de OCI.
-
Dominio de identidad de tipo Oracle Apps Premium y cuenta de administrador en él.
-
Una instancia con SSO activado PeopleSoft con un certificado SSL válido.
-
Usuario con acceso SSO a PeopleSoft y los privilegios necesarios para cargar datos en la base de datos PeopleSoft a través de Excel en CI.
-
Una copia de Excel totalmente funcional a la hoja de cálculo de CI que actualmente trabaja con el nombre de usuario y la contraseña para transferir datos.
-
Copia local del archivo dependiente
RelLangMacro.xla
para el correcto funcionamiento de Excel en CI. -
Conocimientos básicos sobre la codificación VB Macro.
Tarea 1: Creación de una aplicación confidencial para el flujo de código de dispositivo
Registraremos una aplicación confidencial en el dominio de identidad de OCI IAM que está integrada con su PeopleSoft para SSO con el tipo de permiso permitido Código de dispositivo.
-
Conéctese a la consola de OCI, en Dominio de identidad, haga clic en Información de dominio y copie la URL de dominio de identidad.
Nota: Excluya :443 del final de la URL de dominio, necesitaremos esta información en la tarea 6.
-
Vaya al menú de navegación y haga clic en Aplicaciones.
-
Seleccione Aplicación confidencial y haga clic en Iniciar flujo de trabajo.
-
Introduzca un nombre para la aplicación y haga clic en Siguiente.
-
Seleccione Omitir para más tarde, Código de dispositivo como Tipos de permiso permitidos y haga clic en Siguiente.
-
Haga clic en Terminar.
-
Haga clic en Activar para activar la aplicación.
-
Tenga en cuenta el ID de cliente y el Secreto de cliente para utilizarlo en otras configuraciones.
Tarea 2: Arquitectura de Excel a CI y OCI IAM mediante el flujo de código de dispositivo
Pasos para enviar datos a la base de datos PeopleSoft mediante el flujo de código de dispositivo.
-
Inicio del flujo de código de dispositivo: cuando el usuario intenta enviar datos a la base de datos PeopleSoft, la hoja de Excel inicia el flujo de código de dispositivo.
-
Visualización de código de usuario: se presenta al usuario un código de usuario de 6 letras, que se debe copiar para su uso futuro al obtener el token de acceso.
-
Autenticación de explorador: una vez anotado el código de usuario, la hoja de Excel abre automáticamente el explorador web por defecto y solicita al usuario que inicie sesión. Si una sesión ya está activa, el usuario se conectará automáticamente.
-
Introducción del código de usuario: después de conectarse correctamente y completar los requisitos de autenticación multifactor (MFA), el explorador pedirá al usuario que introduzca el código de usuario copiado anteriormente.
-
Emisión de token de acceso: al enviar correctamente el código de usuario, se emite un token de acceso a la hoja de Excel, lo que le permite enviar datos a la base de datos PeopleSoft.
La siguiente imagen ilustra el flujo de código de dispositivo en más detalles.
Para facilitar este proceso, procederemos a modificar el código VB y mejorar los módulos de autenticación y envío de datos.
Tarea 3: Actualización del código VB para iniciar sesión usando Flujo de código de dispositivo
Descargue una copia de la hoja de cálculo de Excel a CI desde aquí: ExcelToCI Sheets_ExcelToCI2007-AppG_SampleFile.zip y guárdela en el sistema local donde tenga la hoja de cálculo original de Excel a CI. La carpeta también debe contener el archivo dependiente RelLangMacro.xla
para el correcto funcionamiento de Excel a CI.
-
Abra la hoja de cálculo de Excel a CI y actualice la hoja Información de conexión con los detalles del gateway de aplicación PeopleSoft. Introduzca la siguiente información.
- Nombre de la Máquina del Servidor Web.
- Protocolo.
- Puerto HTTP.
-
Haga clic en Desarrollador y Visual Basic para abrir MicroSoft Visual Basic para Aplicaciones. Haga clic en Módulos.
-
En Módulos, amplíe el módulo Conexión y actualice el ID de cliente y el secreto de cliente de la aplicación confidencial creada en la tarea 1 y la URL de dominio de OCI IAM en las siguientes funciones mencionadas y guarde el archivo.
Nota: La hoja de cálculo tiene comentarios que le ayudarán a saber dónde se deben agregar los detalles.
- Función pública getLoginInformation.
- Función pública makeInstrospectRequest.
- Función pública makeIDCSRequest.
Nota:
-
Prueba de concepto: esta hoja sirve como prueba de concepto que demuestra que Excel a CI puede soportar el flujo de código de dispositivo para enviar datos a la base de datos PeopleSoft.
-
Calidad del código: tenga en cuenta que es posible que el código no se ajuste a las mejores prácticas en la codificación VB. Recomendamos realizar pruebas exhaustivas antes de desplegarlas en un entorno de producción.
-
Prueba de envío de datos: la hoja de cálculo se ha probado para el caso de uso de envío de datos. Si el valor predeterminado es la autenticación de nombre de usuario y contraseña para cualquier otra funcionalidad, puede modificar el módulo VB para incorporar la lógica de código de dispositivo para mejorar la funcionalidad.
-
Comprobación de referencias: además, revise la referencia de Excel a CI en Herramientas de la página Microsoft Visual Basic para aplicaciones para garantizar la alineación con la siguiente captura de pantalla.
Tarea 4: Prueba de la carga de datos mediante el flujo de código de dispositivo
-
Agregue datos de ejemplo en la entrada de datos y haga clic en complementos, almacenar datos en área temporal para envío.
-
En la hoja Ubicación temporal y envío, debería poder ver las nuevas entradas de datos que desea enviar a la base de datos PeopleSoft. Haga clic en Complementos y en Enviar datos.
-
La hoja de Excel ahora iniciará el flujo de código de dispositivo y mostrará el código de usuario, anotándolo. Haga clic en Aceptar y se le redirigirá a la página de conexión de OCI IAM.
-
Conéctese a OCI IAM con sus credenciales de SSO.
-
Introduzca el código de usuario en Código y haga clic en Enviar.
-
Si el código de usuario es correcto, verá una pantalla Congratulations que confirma su acceso a la aplicación.
-
El token de acceso se vuelve a enviar a la hoja de Excel, que se utiliza para enviar los datos a la base de datos PeopleSoft. Debería ver Aceptar en las entradas de datos que confirman el envío de datos.
La hoja almacenará los detalles del token de acceso para su próxima ejecución y, a menos que el token de acceso esté activo, no se le pedirá que realice el flujo de código de dispositivo.
Oportunidades de mejora en la hoja de Excel a CI
-
Validación de token: actualmente, el punto final de introspección se utiliza para verificar la validez del token de acceso, que tiene un tiempo de caducidad por defecto de 60 minutos.
-
Persistencia de sesión: para evitar que los usuarios se desconecten después de 60 minutos, considere la posibilidad de implementar un mecanismo de token de refrescamiento.
-
Modificación de código: actualice el código VB para incorporar el uso del token de refrescamiento para el acceso continuo.
-
Detalles de captura dinámica para OCI IAM: las funciones de la hoja están actualmente codificadas con información de identidad. Puede mejorar esto definiendo celdas de Excel para capturar estos detalles de forma dinámica.
-
Visibilidad del token de acceso: el valor del token de acceso se muestra actualmente en la hoja Información de conexión. Puede optar por ocultarlo a los usuarios finales ajustando el formato de celda.
-
Compatibilidad con cargas de asientos: la lógica de flujo de código de dispositivo demostrada para Excel a CI también se puede aplicar a cargas de asientos. Los siguientes módulos de
Jrnlmacro.xla
se deben actualizar en mImportControl. Descargue el código postal de muestra para la carga de asientos.- SubImport_Sheet privado.
- Función privada sendXML.
- Función pública makeIDCSRequest.
- Función pública makeInstrospectRequest.
Enlaces relacionados
Agradecimientos
- Autor: Chetan Soni (ingeniero sénior de nube)
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visita education.oracle.com/learning-explorer para convertirte en un Oracle Learning Explorer.
Para obtener documentación sobre el producto, visite Oracle Help Center.
Enable Excel to Component Interface Utility SSO with OCI IAM using Device Code Flow
G16863-01
October 2024