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:
- Registrar OAA como socio de TAP en OAM
- Configurar el agente de OAM en OAA
- Instalar y configurar el plugin y los módulos de OAA en OAM
- 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:
- Una instalación en ejecución de Oracle Access Management 12c (12.2.1.4). La instalación debe tener usuarios de ejemplo en el almacén de identidades de usuario por defecto utilizado por OAM.
- Una instalación de Oracle HTTP Server y Oracle WebGate
- Una aplicación protegida por WebGate
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:
- Una instancia de autenticación avanzada de Oracle (OAA) en ejecución. Para obtener instrucciones sobre cómo instalar OAA, consulte Administering Oracle Advanced Authentication and Oracle Adaptive Risk Management.
- La instancia de OAA se ha instalado y configurado para utilizar OAUTH en la misma instalación de OAM indicada anteriormente. Debe conocer el valor de
oauth.applicationid
transferido en el archivoinstallOAA.properties
durante la instalación de OAA. - El OAA debe estar configurado para su uso con un proveedor de mensajería para permitir la autenticación a través de SMS o EMAIL. Consulte Configuring Oracle UMS Server for Email and SMS y Customizing E-Mail and SMS Messaging Provider.
- La URL de administración de OAA, por ejemplo:
https://oaa.example.com/oaa-admin
y credenciales de administrador, por ejemplo:oaadmin/<password>
- URL de preferencias de usuario (SPUI) de OAA: por ejemplo:
http://oaa.example.com/oaa/rui
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
-
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>
-
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/>
-
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. -
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
-
Conéctese a la consola de administración de OAA con sus credenciales de administrador. Por ejemplo:
https://oaa.example.com/oaa-admin
-
En Acciones rápidas, seleccione Crear agente de integración de OAM.
-
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:
- Nombre:
-
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. -
Haga clic en Guardar
-
En la pantalla Agentes de integración, haga clic en el agente que acaba de crear. Por ejemplo: OAM-MFAPartner
-
En Niveles de garantía, haga clic en Crear.
-
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
. - Nombre:
-
En el separador Niveles de garantía, haga clic en Nivel de OAM-MFA.
-
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:
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.
-
En el entorno de OAA donde se ejecuta el pod
oaamgmt
, copie el plugin de OAAOAAAuthnPlugin.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
-
Inicie un explorador y acceda a la consola de administración de OAM:
http://oam.example.com:7001/oamconsole
. Conéctese comoweblogic
/<password>
. -
Copie
OAAAuthnPlugin.jar
en la máquina en la que se está ejecutando el explorador. -
Vaya a Seguridad de la aplicación -> Plugins -> Plugins de autenticación.
-
En el separador Plugins, seleccione Importar plugin.
-
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. -
En la misma página, vaya al campo Buscar e introduzca
OAAAuthnPlugin
. Resalte el plugin y seleccione Distribuir Selección. -
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:
-
Cierre el separador Plugins.
Crear un módulo de autenticación para OAA
-
En la consola de OAM, vaya a Seguridad de la aplicación -> Plugins -> Módulos de autenticación.
-
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.
-
En el separador Módulo de autenticación -> General, introduzca lo siguiente:
- Nombre:
OAA-MFA-Auth-Module
- Descripción:
OAA MFA Authentication Module
- Nombre:
-
Haga clic en el enlace Pasos y, en el separador Pasos, haga clic en Agregar.
-
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
- Nombre de paso:
-
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
- Nombre del paso:
-
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:
- Nombre de paso:
-
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 conoauth.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 ejemploOUDStore
- 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 comocamelCase
.
Por ejemplo:
- OAA_URL:
-
Haga clic en Guardar.
-
Haga clic en Orquestación de pasos y, en la lista desplegable Paso inicial, seleccione Paso de MFA de OAA de usuario.
-
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:
-
Haga clic en Aplicar.
Crear un esquema de autenticación de OAA
-
En la pantalla de inicio Seguridad de la aplicación -> Gestor de acceso, haga clic en Esquemas de autenticación.
-
En el separador Esquemas de autenticación, seleccione Crear esquema de autenticación.
-
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.
- Nombre:
-
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.
-
En la pantalla de inicio Seguridad de la aplicación -> Gestor de acceso, haga clic en Dominios de aplicación.
-
En el separador Dominio de aplicación, haga clic en Buscar.
-
Haga clic en WebGate para actualizar, por ejemplo:
webgate_7777
. -
En el separador WebGate (webgate_7777), haga clic en Políticas de autenticación. Haga clic en Crear.
-
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
- Nombre:
-
En el separador WebGate (webgate_7777), seleccione el separador Recursos, haga clic en Buscar y, a continuación, haga clic en Crear.
-
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 aOAA_MFA_Policy
- Tipo:
-
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
-
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 usuariotestuser
/<password>
. -
Si la conexión se realiza correctamente, se le redirigirá al punto final de OAA. Por ejemplo:
https://oaa.example.com/oaa/authnui
. ComoLDAP_ATTRS
para el plugin de OAA en OAM se define enmail,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. -
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.
-
Si la autenticación se realiza correctamente, debe redirigirse a la página de la aplicación protegida, por ejemplo,
/mybank
. -
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
. -
Dado que la conexión sin contraseña se activa mediante el parámetro
initial_command=NONE
en el esquema de autenticaciónOAA-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. -
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.
-
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
- Autenticación avanzada de Oracle y Oracle Adaptive Risk Management
- Uso de las API de REST de autenticación avanzada de Oracle con Postman
- WebLogic Referencia de comandos de la herramienta de script para Identity and Access Management
Comentarios
Para proporcionar comentarios sobre este tutorial, póngase en contacto con idm_user_assistance_ww_grp@oracle.com
Agradecimientos
- Autor: Russ Hodgson
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.
Integrate Oracle Access Management with Oracle Advanced Authentication
F39325-06
January 2023
Copyright © 2023 Oracle and/or its affiliates.