Crear socios IdP de SAML 1.1 y OpenID 2.0 en OAM y SP
En este artículo se describe cómo configurar un acuerdo de federación entre OAM que actúa como SP y un partner IdP remoto mediante los protocolos SAML 1.1 o OpenID 2.0:
- Configurar un partner SAML 1.1 IdP remoto
- Configurar un socio OpenID 2.0 IdP remoto
En el artículo se describe cómo realizar las tareas anteriores a través de la interfaz de usuario o mediante el uso de los comandos de OAM WLST.
SAML 1.1
La Consola de Administración de OAM
Para crear un nuevo partner SAML 1.1 IdP, ejecute los siguientes pasos (asegúrese primero de tener todos los datos del partner IdP, como certificados, identificadores IdP y URL):
- Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole. - Vaya a Identity Federation, Service Provider Administration.
- Haga clic en el botón Crear partner de proveedor de identidad.
- En la pantalla Crear:
- Introduzca un nombre para el partner.
- Introduzca el emisor /
ProviderIDdel socio IdP. - Si
SuccinctIDse deja en blanco, OAM/SP lo calcula resumiendo el ID de proveedor mediante el algoritmo SHA-1 (debe dejarse en blanco). - Introduzca la URL de servicio de SSO para ese partner IdP: es la URL a la que se redirige al usuario desde OAM/SP con un SAML AuthnRequest a IdP.
- Si el partner soporta el protocolo de artefacto SAML 2.0, introduzca la URL de servicio de SOAP a la que se conecta OAM/SP para recuperar la afirmación de SAML durante una operación de artefacto SSO.
- Cargue el archivo de certificado de firma IdP:
- en formato PEM (donde el archivo contiene como primera línea --BEGIN CERTIFICATE--, el certificado en formato codificado Base64 y, a continuación, la última línea como --END CERTIFICATE--)
- o en formato DER donde el certificado se almacena en codificación binaria
- Sección Assertion Mapping:
- Opcionalmente, defina el almacén de identidades de OAM que se debe utilizar. Nota: En el ejemplo, dejamos el campo en blanco para utilizar el almacén de identidades de OAM por defecto.
- De manera opcional, defina el DN de la base de búsqueda de usuarios. Nota: En el ejemplo, dejamos el campo en blanco para utilizar el DN de base de búsqueda de usuario configurado en el almacén de identidades
- Seleccione cómo se produce la asignación. Nota: En el ejemplo, estamos asignando la afirmación mediante
NameIDal atributo de correo LDAP. - Seleccione el perfil de atributo que se utiliza para asignar los nombres de los atributos de la afirmación de SAML entrante a los nombres locales.
- Haga clic en Guardar.
- Después de crear el socio, se muestra la pantalla Editar socio con:
- La configuración establecida en la pantalla anterior se puede modificar.
- Se muestra una sección de configuración avanzada.
- Autenticación HTTP Básica: Si se utiliza el enlace de artefacto, OAM/SP necesita conectarse a IdP directamente a través de SOAP para recuperar la afirmación de SAML. A veces, IdP activa la autenticación básica HTTP en el canal SOAP y OAM/SP debe proporcionar el nombre de usuario/contraseña a IdP (estas credenciales se acordarán entre los administradores de IDP y SP).

Descripción de la ilustración OAM_Admin_Console.jpg

Descripción de la ilustración Edit_Partner_Screen.jpg
[Description of the illustration Edit_Partner_Screen.jpg](files/Edit_Partner_Screen.txt)
WLST
Para crear un nuevo partner SAML 1.1 IdP mediante los comandos WLST de OAM, ejecute los siguientes pasos (asegúrese de tener todos los datos del partner IdP, como certificados, identificadores IdP y URL):
-
Introduzca el entorno WLST ejecutando:
$IAM_ORACLE_HOME/common/bin/wlst.sh. -
Conéctese al servidor de administración de WLS:
connect(). -
Navegue a la rama Domain Runtime:
domainRuntime(). -
Cree el partner IdP de SAML 1.1 que llama a acmeIdP en OAM:
addSAML11IdPFederationPartner("acmeIdP", "https://acme.com/idp", "https://acme.com/saml11/sso", "https://acme.com/saml11/soap". -
De manera predeterminada, el nuevo socio de SP está configurado para:
-
Utilizar el almacén de identidades de OAM por defecto
-
Utilizar el DN base de búsqueda de usuario del almacén de identidades (no sustituido)
-
Asigne la afirmación de SAML mediante
NameID, que coincida con el atributo de correo LDAP. -
Utilice el perfil de atributo de proveedor de identidad por defecto.
-
No se ha cargado ningún certificado para este partner IdP.
-
Salga del entorno WLST:
exit().
Modificación de la Configuración de Federación mediante WLST
En esta sección se muestra cómo cambiar la configuración común del partner IdP mediante los comandos WLST de OAM:
- Configuración de asignación de afirmación de SAML
- Almacén de identidades de OAM y DN de base de búsqueda de usuarios para la asignación de afirmación de SAML
- Certificado de firma de SAML
- Perfil de atributo de partner IdP para un partner IdP
Supongamos que ya está en el entorno WLST y conectado mediante:
- Introduzca el entorno WLST ejecutando:
$IAM_ORACLE_HOME/common/bin/wlst.sh. - Conéctese al servidor de administración de WLS:
connect(). - Navegue a la rama Domain Runtime:
domainRuntime().
Configuración de asignación de afirmación de SAML
Para configurar los valores de asignación para un partner IdP de SAML:
- Utilice el siguiente comando para asignar la afirmación mediante NameID:
setIdPPartnerMappingNameID(partnerName, userstoreAttr)(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPuserstoreAttr: atributo de usuario de LDAP que coincide con el valor NameID.
- Utilice el siguiente comando para asignar la afirmación mediante un atributo SAML:
setIdPPartnerMappingAVribute(partnerName, assertionAttr, userstoreAttr)(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPassertionAttr: nombre del atributo de SAML.userstoreAttr: atributo de usuario de LDAP que coincide con el valor de atributo de SAML.
- Utilice el siguiente comando para asignar la afirmación mediante una consulta LDAP:
setIdPPartnerMappingAVributeQuery(partnerName, attrQuery)(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPattrQuery: consulta LDAP que se va a utilizar (por ejemplo,(&(givenname=%firstname%) (sn=%lastname%))).
DN del almacén de identidades y de la base de búsqueda de usuarios de OAM
Para configurar OAM/SP para que utilice un almacén de identidades de OAM específico y/o un DN base de búsqueda de usuario específico al asignar la afirmación de SAML entrante, ejecute el siguiente comando setPartnerIDStoreAndBaseDN():
- Utilice el siguiente comando para definir sólo el almacén de identidades de OAM:
setPartnerIDStoreAndBaseDN(partnerName, "idp", storeName="oid")(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPidpindica el tipo de sociostoreName: hace referencia al almacén de identidades de OAM que se va a utilizar
- Utilice el siguiente comando para definir sólo el DN de base de búsqueda:
setPartnerIDStoreAndBaseDN(partnerName, "idp",searchBaseDN="ou=managers,dc=acme,dc=com")(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPidpindica el tipo de sociosearchBaseDN: indica el DN de base de búsqueda que se va a utilizar- Utilice el siguiente comando para definir el almacén de identidades de OAM y el DN base de búsqueda:
setPartnerIDStoreAndBaseDN(partnerName,"idp", storeName="oid", searchBaseDN="ou=managers,dc=acme,dc=com")(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPidpindica el tipo de sociostoreName: hace referencia al almacén de identidades de OAM que se va a utilizarsearchBaseDN: indica el DN de base de búsqueda que se va a utilizar- Utilice el siguiente comando para eliminar el almacén de identidades de OAM y el DN de base de búsqueda de la entrada de partner IdP:
setPartnerIDStoreAndBaseDN(partnerName, "idp", delete="true")(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdP- idp indica el tipo de socio
Certificado de firma de SAML
Hay varios comandos WLST disponibles para gestionar certificados de firma y cifrado:
getFederationPartnerSigningCert()que imprime el certificado de firma del partner en formato codificado Base64:getFederationPartnerSigningCert("acmeIdP", "idp")- Con
acmeIdPcomo nombre del partner creado anteriormente idpindica el tipo de sociosetFederationPartnerSigningCert()que carga el archivo de certificado de firma transferido como parámetro a la configuración del partnerIdP:setFederationPartnerSigningCert("acmeIdP","idp", "/tmp/cert.file")- Con
acmeIdPcomo nombre del partner creado anteriormente idpindica el tipo de socio- el tercer parámetro indica la ubicación en el sistema de archivos del archivo que contiene el certificado:
- en formato PEM (donde el archivo contiene como primera línea --BEGIN CERTIFICATE--, el certificado en formato codificado Base64 y, a continuación, la última línea como --END CERTIFICATE--)
- o en formato DER donde el certificado se almacena en codificación binaria
deleteFederationPartnerSigningCert()que elimina el certificado de firma de la entrada de partner IdP:deleteFederationPartnerSigningCert("acmeIdP","idp")- Con acmeIdP como nombre del partner creado anteriormente
idpindica el tipo de socio
IdP Perfil de atributo de partner
Para configurar el perfil de atributo de socio IdP para un socio IdP específico, utilice los siguientes comandos: Para configurar un socio IdP para utilizar un perfil de atributo de socio IdP específico, ejecute:
setIdPPartnerAttributeProfile(partnerName, attrProfileID)(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPattrProfileIDes el ID de perfil de atributo de socio IdP- Para mostrar los perfiles de atributo de partner IdP existentes, ejecute:
listIdPPartnerAttributeProfileIDs()
Ejemplos
Los siguientes comandos se pueden utilizar para agregar un partner IdP de SAML 1.1 (en este ejemplo hemos seleccionado especificar un almacén de identidades):
addSAML11IdPFederationPartner("acmeIdP", "https://acme.com/idp", "https://acme.com/saml1 /sso", "https://acme.com/saml11/soap" setFederationPartnerSigningCert("acmeIdP", "idp","/tmp/acme-idp-cert.pem") setPartnerIDStoreAndBaseDN("acmeIdP", "idp", "oid") setIdPPartnerMappingNameID("acmeIdP", "mail")
OpenID 2.0
La Consola de Administración de OAM
Para crear un nuevo partner de IdP/OP OpenID 2.0, ejecute los siguientes pasos (asegúrese de tener todos los datos del partner de IdP/OP, como las URL de detección y SSO):
- Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole. - Vaya a Identity Federation, Service Provider Administration.
- Haga clic en el botón Crear partner de proveedor de identidad.
- En la pantalla Crear:
- Introduzca un nombre para el partner.
- Seleccione OpenID 2.0 como Protocolo.
- Seleccione cómo interactuar con el OP OpenID.
- Especifique la URL de detección OpenID donde se publica el XRDS del OP.
- O bien especificando la URL de SSO OpenID a la que se debe redirigir al usuario para SSO OpenID.
- Introduzca la URL correspondiente a la opción Detalles de servicio.
- Sección Asignación:
- Opcionalmente, defina el almacén de identidades de OAM que se debe utilizar. Nota: En el ejemplo, dejamos el campo en blanco para utilizar el almacén de identidades de OAM por defecto.
- De manera opcional, defina el DN de la base de búsqueda de usuarios. Nota: En el ejemplo, dejamos el campo en blanco para utilizar el DN de base de búsqueda de usuario configurado en el almacén de identidades.
- Seleccione cómo se produce la asignación. Nota: En el ejemplo, asignamos la respuesta OpenID mediante un atributo denominado http://axschema.org /contact/email al atributo de correo LDAP. Nota: La asignación mediante NameID no es posible con el protocolo OpenID.
- Seleccione el perfil de atributo que se utiliza para asignar los nombres de los atributos de la afirmación de SAML entrante a los nombres locales.
- Haga clic en Guardar.

Descripción de la ilustración Create_Idty_Provider_Screen.jpg
Después de crear el socio, se muestra la pantalla Editar socio con:
- La configuración definida en la pantalla anterior se puede modificar
- Se muestra una sección de configuración avanzada:
- Activar extensión de interfaz de usuario OpenID: indica al OAM/SP/RP que incluya en la solicitud OpenID la extensión de interfaz de usuario y defina el modo en emergente, si está soportado por el OP.
- OpenID Preferencia de idioma de extensión de interfaz de usuario: indica al OAM/SP/RP que debe incluir en la solicitud OpenID la extensión de interfaz de usuario y definir el campo de idioma en el valor de cabecera HTTP de aceptación de idioma enviado por el explorador del usuario, si está soportado por el OP.
- Activar icono de usuario de confianza de extensión de interfaz de usuario OpenID: indica al OAM/SP/RP que debe incluir en la solicitud OpenID la extensión de interfaz de usuario y definir el fag de icono, si está soportado por el OP.

Descripción de la ilustración Edit_Partner_Adv_Settings_Screen.jpg
El protocolo OpenID 2.0 se basa principalmente en los atributos de usuario que se comparten entre OP y RP durante el intercambio de SSO OpenID 2.0. OAM/RP puede asignar los nombres de los atributos en la respuesta SSO entrante a los nombres locales y esto se realiza mediante el perfil de atributo IdP.
WLST
Para crear un nuevo partner de OP OpenID 2.0 con los comandos WLST de OAM, ejecute los siguientes pasos (asegúrese de tener todos los datos del partner de OP, como el dominio de IDP/OP y las URL):
- Introduzca el entorno WLST ejecutando:
$IAM_ORACLE_HOME/common/bin/wlst.sh. - Conéctese al servidor de administración de WLS:
connect(). - Navegue a la rama Domain Runtime:
domainRuntime(). - Cree el partner de OP OpenID 2.0 que llama a
acmeOPen OAM:addOpenID20IdPFederationPartner("acmeOP","https://acme.com/openid/sso","https://acme.com/openid/xrds"). - De manera predeterminada, el nuevo socio de SP está configurado para:
- Utilizar el almacén de identidades de OAM por defecto.
- Utilice el DN base de búsqueda de usuario del almacén de identidades (no sustituido).
- No se configurará la asignación de confirmación.
- Utilice el perfil de atributo de proveedor de servicios por defecto.
- Salga del entorno WLST:
exit().
Modificación de la Configuración de Federación mediante WLST
En esta sección se muestra cómo cambiar la configuración común del partner de IDP/OP mediante los comandos WLST de OAM:
- OpenID Configuración de asignación de respuesta SSO
- Almacén de identidades de OAM y DN de base de búsqueda de usuarios para la respuesta SSO OpenID
- Perfil de atributo de partner IdP para un partner IdP
Se supone que ya está en el entorno WLST y conectado mediante:
- Introduzca el entorno WLST ejecutando:
$IAM_ORACLE_HOME/common/bin/wlst.sh. - Conéctese al servidor de administración de WLS:
connect(). - Navegue a la rama Domain Runtime:
domainRuntime().
OpenID Configuración de asignación de respuesta SSO
Para configurar los valores de asignación para un partner OpenID IdP:
- Utilice el siguiente comando para asignar la respuesta SSO a través de un atributo SAML:
setIdPPartnerMappingAVribute(partnerName, assertionAttr, userstoreAttr)(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdP
assertionAttr: nombre del atributo OpenID.userstoreAttr: atributo de usuario de LDAP que coincide con el valor de atributo de SAML.- Utilice el siguiente comando para asignar la respuesta de SSO mediante una consulta LDAP:
setIdPPartnerMappingAVributeQuery(partnerName, attrQuery)(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPattrQuery: consulta LDAP que se va a utilizar (por ejemplo,(&(givenname=%firstname%) (sn=%lastname%))).
DN del almacén de identidades y de la base de búsqueda de usuarios de OAM
Para configurar OAM/SP para que utilice un almacén de identidades de OAM específico y/o un DN base de búsqueda de usuario específico al asignar la respuesta SSO de OpenID entrante, ejecute el siguiente comando setPartnerIDStoreAndBaseDN():
- Utilice el siguiente comando para definir sólo el almacén de identidades de OAM:
setPartnerIDStoreAndBaseDN(partnerName,"idp", storeName="oid")(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPidpindica el tipo de sociostoreName: hace referencia al almacén de identidades de OAM que se va a utilizar- Utilice el siguiente comando para definir sólo el DN de base de búsqueda:
setPartnerIDStoreAndBaseDN(partnerName,"idp",searchBaseDN="ou=managers,dc=acme,dc=com")(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPidpindica el tipo de sociosearchBaseDN: indica el DN de base de búsqueda que se va a utilizar- Utilice el siguiente comando para definir el almacén de identidades de OAM y el DN base de búsqueda:
setPartnerIDStoreAndBaseDN(partnerName,"idp", storeName="oid", searchBaseDN="ou=managers,dc=acme,dc=com")(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPidpindica el tipo de sociostoreName: hace referencia al almacén de identidades de OAM que se va a utilizarsearchBaseDN: indica el DN de base de búsqueda que se va a utilizar- Utilice el siguiente comando para eliminar el almacén de identidades de OAM y el DN de base de búsqueda de la entrada de partner IdP:
setPartnerIDStoreAndBaseDN(partnerName,"idp", delete="true")(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPidpindica el tipo de socio
IdP Perfil de atributo de partner
Para configurar el perfil de atributo de socio IdP para un socio IdP específico, utilice los siguientes comandos: Para configurar un socio IdP para utilizar un perfil de atributo de socio IdP específico, ejecute:
setIdPPartnerAttributeProfile(partnerName, attrProfileID)(Fin de creación)partnerNamees el nombre utilizado para crear el partner IdPattrProfileIDes el ID de perfil de atributo de socio IdP- Para mostrar los perfiles de atributo de partner IdP existentes, ejecute:
listIdPPartnerAttributeProfileIDs()
Ejemplos
Los siguientes comandos se podrían utilizar para agregar un partner de OP OpenID 2.0 (en este ejemplo, elegimos no especificar un almacén de identidades):
addOpenID20IdPFederationPartner("acmeOP", "https://acme.com/openid/sso", "https://acme.com/openid/xrds") setIdPPartnerMappingAVribute("acmeOP", "http://axschema.org/contact/email", "mail"
OpenID para Google / Yahoo
Las herramientas de administración de OAM proporcionan una forma fácil de agregar Google o Yahoo como OpenID 2.0 OP/IdP. OAM crea los artefactos necesarios para realizar SSO de federación con Google o Yahoo mediante el protocolo OpenID.
Para Google:
- OAM solicita los atributos de país, correo, nombre, apellido e idioma.
- La asignación de respuesta de SSO se realiza mediante el atributo de correo.
Para Yahoo
- OAM solicita los atributos de país, correo, nombre, apellido, género e idioma.
- La asignación de respuesta de SSO se realiza mediante el atributo de correo.
La Consola de Administración de OAM
Para crear Google o Yahoo como nuevo partner de IDP/OP OpenID 2.0, realice los siguientes pasos:
- Vaya a la consola de administración de OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole. - Vaya a Identity Federation, Service Provider Administration.
- Haga clic en el botón Crear partner de proveedor de identidad.
- En la pantalla Crear:
- Introduzca un nombre para el partner.
- Seleccione OpenID 2.0 como Protocolo.
- Seleccionar
- Configuración por Defecto de Proveedor de Google si desea agregar Google.
- Configuración por defecto del proveedor de Yahoo si desea agregar Yahoo.
- Haga clic en Guardar.

Descripción de la ilustración OAM_Admin_Console_Google_Yahoo.jpg
WLST
Para crear Google o Yahoo como nuevo OpenID 2.0 IdP/OP Partner mediante los comandos WLST de OAM, ejecute los siguientes pasos:
- Introduzca el entorno WLST ejecutando:
$IAM_ORACLE_HOME/common/bin/wlst.sh. - Conéctese al servidor de administración de WLS:
connect(). - Navegue a la rama Domain Runtime:
domainRuntime(). - Cree el partner de OP OpenID 2.0:
- Para Google (el nombre del socio es google):
addOpenID20GoogleIdPFederationPartner(). - Para Yahoo (el nombre del socio es yahoo):
addOpenID20YahooIdPFederationPartner().
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.
Create SAML 1.1 and OpenID 2.0 IdP Partners in OAM and SP
F59899-01
September 2022
Copyright © 2022, Oracle and/or its affiliates.