Integración de Oracle Access Management con la autenticación avanzada de Oracle

Introducción

En este tutorial se muestra cómo integrar Oracle Access Management (OAM) con la autenticación avanzada de Oracle (OAA) para que los usuarios que accedan a una aplicación protegida puedan conectarse a OAM con Single-Sign On (SSO) y, a continuación, conectarse con un segundo factor para la autenticación multifactor.

También le mostrará cómo configurar la migración de usuarios. La migración de usuarios es un proceso en el que un usuario se conecta a OAM y ese usuario se migra automáticamente a OAA con factores registrados según los atributos LDAP definidos. Los factores registrados para cada usuario se basan en los atributos LDAP definidos en el plugin de autenticación de OAA. Si un usuario tiene cualquiera de esos atributos de LDAP definidos en el almacén de identidades de usuario por defecto de OAM, esos factores se registran automáticamente para el usuario en OAA. Para este tutorial, los atributos de LDAP mail y mobile se utilizan para definir los factores de correo electrónico y SMS para un usuario.

Objetivo

En este tutorial, realizará las siguientes tareas:

  1. Registrar OAA como socio de TAP en OAM
  2. Configurar el agente de OAM en OAA
  3. Instalar y configurar el plugin y los módulos de OAA en OAM
  4. La prueba de la integración de OAM y OAA se ha realizado correctamente

Requisitos previos de Oracle Access Management

Antes de seguir este tutorial, debe tener:

Para fines de demostración, este tutorial se basa en el entorno creado en la serie de tutoriales Introducción a Oracle Access Management 12c. En este entorno, Oracle Access Management utiliza Oracle Unified Directory (OUD) como almacén de identidades de usuario por defecto. Se despliega una aplicación denominada mybank en el servidor WebLogic y se protege mediante Oracle WebGate. Cualquier referencia de este tutorial a nombres de host de OAM, URL, RUTA DE ACCESO y usuarios se basa en los que se utilizan en los tutoriales de Introducción a Oracle Access Management 12c.

Si utiliza los tutoriales anteriores para su entorno de OAM, deberá descargar el ejemplo oaausers.ldif. Este archivo contiene usuarios y grupos requeridos antes de instalar OAA. Edite oaausers.ldif y actualice mail, mobile y <password> para cada usuario con valores válidos. Esto es para que pueda probar que cuando un usuario se conecte (por ejemplo, testuser) a OAM, el usuario se migrará a OAA con sus factores definidos en SMS y correo electrónico. Ejecute ldapmodify -f oaausers.ldif en OUD para cargar los usuarios y grupos.

Requisitos de Autenticación Avanzada de Oracle

Antes de seguir este tutorial, debe tener:

Registrar OAA como socio de TAP en OAM

En esta sección, se registra OAA como partner de protocolo de autenticación de confianza (TAP) en OAM.

Objetivos

Registrar OAA como socio TAP en OAM.

Registrar el socio de TAP en OAM

  1. En el servidor OAM, inicie una ventana de terminal como oracle e introduzca el siguiente comando:

    cd /u01/app/oracle/product/middleware/oracle_common/common/bin
    ./wlst.sh
    

    La salida es similar a la siguiente:

    Initializing WebLogic Scripting Tool (WLST) ...
    
    Welcome to WebLogic Server Administration Scripting Shell
    
    Type help() for help on available commands
    
    wls:/offline> 
    
  2. Conéctese al servidor de administración de OAM de la siguiente manera:

    wls:/offline> connect ('weblogic','<password>')
    

    La salida es similar a la siguiente:

    Successfully connected to Admin Server "AdminServer" that belongs to domain "oam_domain".
    
    Warning: An insecure protocol was used to connect to the server. 
    To ensure on-the-wire security, the SSL port or Admin port should be used instead.
    
    wls:/oam_domain/serverConfig/> 
    
  3. Ejecute el siguiente comando para volver a definir el partner de TAP de OAA:

    wls:/oam_domain/serverConfig/> registerThirdPartyTAPPartner(partnerName = "<partner_name>", keystoreLocation= "<path_to_keystore>", password="<keystore_password>", tapTokenVersion="v2.0", tapScheme="TAPScheme", tapRedirectUrl="<URL>")
    

    donde :

    • <partner_name> es el nombre que desea proporcionar para la aplicación asociada.
    • <path_to_keystore> es la ubicación y el nombre de archivo del almacén de claves que se va a generar.
    • <keystore_password> es la contraseña del almacén de claves generado.
    • tapRedirectUrl es cualquier URL http válida. La URL debe ser accesible y devolver una respuesta 200 OK. No utilice URL de https; de lo contrario, se producirá un mensaje de error.

    Por ejemplo:

    registerThirdPartyTAPPartner(partnerName = "OAM-MFAPartner", keystoreLocation= "/tmp/OAMOAAKeyStore.jks", password="********", tapTokenVersion="v2.0", tapScheme="TAPScheme", tapRedirectUrl="http://oam.example.com:7777")
    

    La salida es similar a la siguiente:

    Registration Successful
    wls:/oam_domain/serverConfig/> 
    

    En el ejemplo anterior, se generará un almacén de claves /tmp/OAMOAAKeyStore.jks. Esta clave y contraseña se utilizarán más adelante al registrar OAM como agente en OAA.

  4. Ejecute el siguiente comando para salir de wlst:

    wls:/oam_domain/serverConfig/> exit()
    Exiting WebLogic Scripting Tool.
    

Configurar el agente de OAM en OAA

En esta sección, configurará un agente para OAM en la consola de administración de OAM.

Objetivos

Para configurar un agente para OAM en OAA.

Configurar el agente de OAM en OAA

  1. Conéctese a la consola de administración de OAA con sus credenciales de administrador. Por ejemplo: https://oaa.example.com/oaa-admin

  2. En Acciones rápidas, seleccione Crear agente de integración de OAM.

  3. En el separador Crear agente de integración, Detalles, introduzca lo siguiente:

    • Nombre: <partner_name>, donde el valor es el mismo que el nombre de socio de TAP registrado anteriormente, por ejemplo: OAM-MFAPartner
    • Descripción: OAM TAP Partner for OAA
    • Tipo de agente de integración: Oracle Access Management
    • ID de cliente: haga clic en Re-Generate
    • Secreto de cliente: haga clic en Re-Generate
    • Archivo de clave privada: arrastre y suelte el archivo de clave creado al registrar el socio de TAP, por ejemplo, /tmp/OAMOAAKeyStore.jks, o haga clic en + para seleccionarlo del sistema de archivos.
    • Contraseña de clave privada: <password> Contraseña introducida para el almacén de claves al registrar el socio de TAP

    Por ejemplo:

    Descripción de la ilustración createagent.jpg

  4. Copie el ID de cliente, por ejemplo, e1d7dd2d-83e2-4ac8-b338-5dbc6348b526 y el secreto de cliente, por ejemplo, 34e360cf-3ccc-4dcd-911e-0b00e367dcee9 en un lugar seguro, ya que estos se necesitan más adelante al configurar OAM.

  5. Haga clic en Guardar

  6. En la pantalla Agentes de integración, haga clic en el agente que acaba de crear. Por ejemplo: OAM-MFAPartner

  7. En Niveles de garantía, haga clic en Crear.

  8. En Crear nivel de garantía, introduzca lo siguiente y haga clic en Crear:

    • Nombre: OAM-MFA-Level
    • Descripción: OAM-MFA-Level for OAM Integration

    Por ejemplo:

    Descripción de la ilustración securitylevel.jpg

    Nota: el valor introducido para Nombre se utilizará posteriormente en la configuración del plugin OAA de OAM para ASSURANCE_LEVEL.

  9. En el separador Niveles de garantía, haga clic en Nivel de OAM-MFA.

  10. En Usos, seleccione los factores que desea asignar al nivel de garantía, por ejemplo: Oracle Mobile Authenticator, Comprobación de correo electrónico y Comprobación de SMS y haga clic en Guardar.

    Por ejemplo:

    Descripción de la ilustración definepolicy.jpg

Instalar y configurar el plugin de OAA en OAM

En esta sección, puede configurar el plugin de OAA en OAM.

Objetivos

Configurar el plugin de OAA en OAM y crear un módulo de autenticación asociado para activar la integración con OAA para la autenticación de segundo factor.

Instalar el plugin de OAA para OAM

Nota: Si utiliza OAM con el parche del paquete del 22 de abril (12.2.1.4.220404) o posterior, puede omitir esta sección y pasar a Crear un módulo de autenticación para OAA, ya que el plugin está incluido en OAM por defecto.

  1. En el entorno de OAA donde se ejecuta el pod oaamgmt, copie el plugin de OAA OAAAuthnPlugin.jar del directorio /u01/oracle/libs del pod en un directorio de la máquina host (por ejemplo, /scratch/OAA):

    $ kubectl cp <namespace>/<oaamgmt_pod>:/u01/oracle/libs/OAAAuthnPlugin.jar <directory>/OAAAuthnPlugin.jar
    

    Por ejemplo:

    $ kubectl cp oaans/oaamgmt-oaa-mgmt-5c68dc9c57-t2h6w:/u01/oracle/libs/OAAAuthnPlugin.jar /scratch/OAA/OAAAuthnPlugin.jar
    
  2. Inicie un explorador y acceda a la consola de administración de OAM: http://oam.example.com:7001/oamconsole. Conéctese como weblogic/<password>.

  3. Copie OAAAuthnPlugin.jar en la máquina en la que se está ejecutando el explorador.

  4. Vaya a Seguridad de la aplicación -> Plugins -> Plugins de autenticación.

  5. En el separador Plugins, seleccione Importar plugin.

  6. En la ventana Importar plugin, seleccione Seleccionar archivo para seleccionar el archivo de plugin (*.jar). Seleccione la ubicación de OAAAuthnPlugin.jar y haga clic en Importar.

  7. En la misma página, vaya al campo Buscar e introduzca OAAAuthnPlugin. Resalte el plugin y seleccione Distribuir Selección.

  8. Una vez que el estado de activación del plugin indique Distribuido, seleccione Activar seleccionado. El estado de activación debe cambiar a Activado.

    Por ejemplo:

    Descripción de la ilustración oaaauthnplugin.jpg

  9. Cierre el separador Plugins.

Crear un módulo de autenticación para OAA

  1. En la consola de OAM, vaya a Seguridad de la aplicación -> Plugins -> Módulos de autenticación.

  2. En el separador Módulos de autenticación, haga clic en Crear módulo de autenticación y, a continuación, en Crear módulo de autenticación personalizado.

  3. En el separador Módulo de autenticación -> General, introduzca lo siguiente:

    • Nombre: OAA-MFA-Auth-Module
    • Descripción: OAA MFA Authentication Module
  4. Haga clic en el enlace Pasos y, en el separador Pasos, haga clic en Agregar.

  5. En la ventana Agregar nuevo paso, introduzca lo siguiente y haga clic en Aceptar:

    • Nombre de paso: UserIdentificationStep
    • Descripción: Identify User
    • Nombre de Plugin: UserIdentificationPlugIn
  6. Vuelva a hacer clic en Agregar, introduzca lo siguiente y haga clic en Aceptar:

    • Nombre del paso: User OAA MFA Step
    • Descripción: MFA with OAA
    • Nombre de Plugin: OAAAuthnPlugin
  7. Vuelva a hacer clic en Agregar, introduzca lo siguiente y haga clic en Aceptar:

    • Nombre de paso: PasswordValidation
    • Descripción: Validate user password on OAM
    • Nombre de Plugin: UserAuthenticationPlugin

    El módulo debe tener el siguiente aspecto:

    Descripción de la ilustración moduleteps.jpg

  8. Haga clic en User OAA MFA Step y rellene los siguientes campos:

    • OAA_URL: <SPUI_URL/authn/v1>, por ejemplo, https://oaa.example.com/oaa/rui/authn/v1
    • TAP_AGENT: <partner_name>. Este valor debe ser el nombre proporcionado al registrar el socio de TAP con OAM, por ejemplo, OAM-MFAPartner
    • APPLICATION_ID: <app_id>. Nombre del grupo de OAA que se va a asociar a los usuarios de OAM que se migran a OAA, por ejemplo, Default. Este valor debe coincidir con oauth.applicationid utilizado al instalar OAA; de lo contrario, los usuarios finales no podrán acceder a la interfaz de usuario de preferencias de usuario.
    • IDENTITY_STORE_REF: <default_user_identity_store>. Se debe definir en el valor de Almacén por Defecto establecido en la consola de OAM -> Configuración -> Almacenes de Identidades de Usuario. Por ejemplo OUDStore
    • ASSURANCE_LEVEL: <assurance_level>. Este valor se debe definir en el nivel de garantía creado en OAA anteriormente, por ejemplo, OAM-MFA-Level
    • CLIENT_ID: <client_id>. Este es el valor del ID de cliente copiado al crear el agente anteriormente. Por ejemplo: e1d7dd2d-83e2-4ac8-b338-5dbc6348b526
    • CLIENT_SECRET: <client_secret>. Este es el valor del ID de cliente copiado al crear el agente anteriormente. Por ejemplo: 34e360cf-3ccc-4dcd-911e-0b00e367dcee
    • LDAP_ATTRS: mail,mobile. Estos son los atributos LDAP definidos para la dirección de correo electrónico y el número de móvil para los usuarios en el servidor LDAP. Esto permite que los datos de usuario se migren a OAA. Nota: LDAP_ATTRS se debe especificar en minúscula. Esto se aplica incluso si el atributo LDAP se almacena en LDAP como camelCase.

    Por ejemplo:

    Descripción de la ilustración useoaamfastep.jpg

  9. Haga clic en Guardar.

  10. Haga clic en Orquestación de pasos y, en la lista desplegable Paso inicial, seleccione Paso de MFA de OAA de usuario.

  11. En la tabla, seleccione los valores de la siguiente manera:

    Nombre Descripción Tras ejecución correcta Tras ejecución fallida Tras error
    UserIdentificationStep Identificar usuario Validación de contraseñas fallo fallo
    Usar paso de MFA de OAA MFA con OAA correcto UserIdentificationStep fallo
    PasswordValidation Validar contraseña de usuario en OAM Usar paso de MFA de OAA fallo fallo

    Por ejemplo:

    Descripción de la ilustraciónsteporchestration.jpg

  12. Haga clic en Aplicar.

Crear un esquema de autenticación de OAA

  1. En la pantalla de inicio Seguridad de la aplicación -> Gestor de acceso, haga clic en Esquemas de autenticación.

  2. En el separador Esquemas de autenticación, seleccione Crear esquema de autenticación.

  3. En el separador "Create Authentication Scheme" introduzca:

    • Nombre: <scheme_name>, por ejemplo, OAA-MFA-Scheme
    • Descripción: OAA MFA Authentication Scheme
    • Nivel de autenticación: 2
    • Método de Comprobación: Form
    • URL de redireccionamiento de comprobación: /oam/server/
    • Módulo de autenticación: OAA-MFA-Auth-Module
    • URL de confirmación: /pages/login.jsp
    • Tipo de contexto: Default
    • Valor de contexto: /oam
    • Parámetros de confirmación: initial_command=NONE. Este parámetro permite la conexión sin contraseña. Consulte Passwordless Login.

    Descripción de la ilustración authnscheme.jpg

  4. Haga clic en Aplicar.

Actualice WebGate para utilizar el esquema de MFA de OAA para la aplicación protegida

Nota: en los siguientes ejemplos se utiliza el webgate webgate_7777 y la URL de aplicación protegida es /mybank. Cambiar en consecuencia si se usa algo diferente.

  1. En la pantalla de inicio Seguridad de la aplicación -> Gestor de acceso, haga clic en Dominios de aplicación.

  2. En el separador Dominio de aplicación, haga clic en Buscar.

  3. Haga clic en WebGate para actualizar, por ejemplo: webgate_7777.

  4. En el separador WebGate (webgate_7777), haga clic en Políticas de autenticación. Haga clic en Crear.

  5. En Crear política de autenticación, introduzca lo siguiente y haga clic en Aplicar:

    • Nombre: OAA_MFA-Policy
    • Esquema de autenticación: OAA-MFA-Scheme
  6. En el separador WebGate (webgate_7777), seleccione el separador Recursos, haga clic en Buscar y, a continuación, haga clic en Crear.

  7. En el separador Crear recurso, introduzca lo siguiente y haga clic en Aplicar:

    • Tipo: HTTP
    • Descripción: OAA Resource
    • Identificador de host: webgate_7777
    • URL de Recurso: /mybank/**
    • Operaciones: ALL
    • Nivel de Protección: Protected
    • Política de autenticación: OAA_MFA-Policy
    • Política de autorización: Protected Resource Policy

    Nota: Si ya tiene otros URI /mybank protegidos, actualícelos y cambie la Política de autenticación a OAA_MFA_Policy

  8. Reinicie los servidores de OAM para seleccionar la nueva configuración del plugin de OAA.

Probar la integración de OAM y OAA

En esta sección, puede acceder a la aplicación protegida, conectarse a OAM y probar que funciona la autenticación de segundo factor.

Objetivos

Para probar si la integración de OAA y OAM funciona correctamente.

Probar la integración de OAM y OAA

  1. Inicie un explorador y acceda a la aplicación protegida, por ejemplo: http://oam.example.com:7777/mybank. Como esta aplicación está protegida, se le debe redirigir a la página de conexión de OAM. Conéctese como el nuevo usuario testuser/<password>.

    Descripción de la ilustración oamlogin.jpg

  2. Si la conexión se realiza correctamente, se le redirigirá al punto final de OAA. Por ejemplo: https://oaa.example.com/oaa/authnui. Como LDAP_ATTRS para el plugin de OAA en OAM se define en mail,mobile y esos atributos de LDAP se rellenan para el usuario de prueba, se presenta una página de opciones de comprobación para que el usuario seleccione EMAIL o SMS. En Comprobación de correo electrónico, seleccione Enviar OTP a te**@**.com.

    Descripción de la ilustración desafechoice.jpg

  3. Se le redirigirá a la página Correo electrónico en la que se le pedirá que introduzca OTP desde el correo electrónico registrado Device1. En el campo Introducir OTP, introduzca el código de acceso único que se envía por correo electrónico a la dirección de correo electrónico del usuario y haga clic en Verificar.

    Descripción de la ilustración emailotp.jpg

  4. Si la autenticación se realiza correctamente, debe redirigirse a la página de la aplicación protegida, por ejemplo, /mybank.

    Descripción de la ilustración mybank.jpg

  5. Cierre el explorador existente e inicie un nuevo explorador. Acceda a la aplicación protegida una vez más, por ejemplo: http://oam.example.com:7777/mybank.

  6. Dado que la conexión sin contraseña se activa mediante el parámetro initial_command=NONE en el esquema de autenticación OAA-MFA-Scheme, no se le pide al usuario que introduzca el usuario y la contraseña de OAM y se le indica que elija su segundo método de autenticación de factor. En Comprobación de SMS, seleccione Enviar OTP al teléfono 0****3.

    Descripción de la ilustración desafechoice.jpg

  7. Se le redirigirá a la página de SMS en la que se le pedirá que Introduzca OTP desde el dispositivo SMS registrado. En el campo Introducir OTP, introduzca el código de acceso único que se envía al dispositivo móvil del usuario y haga clic en Verificar.

  8. Si la autenticación se realiza correctamente, debe redirigirse a la página de la aplicación protegida, por ejemplo, /mybank.

Más información

Comentarios

Para proporcionar comentarios sobre este tutorial, póngase en contacto con idm_user_assistance_ww_grp@oracle.com

Agradecimientos

Más recursos de aprendizaje

Explore otras prácticas en docs.oracle.com/learn o acceda a contenido de aprendizaje más gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de formación de Oracle.

Para obtener documentación sobre los productos, visite Oracle Help Center.