Acerca de la configuración de SSO entre Azure AD y Oracle Access Manager para Oracle E-Business Suite

Ahora, deberá realizar los pasos necesarios para registrar un nuevo proveedor de servicios federados en Azure AD, registrar un nuevo proveedor de identidad (E-Business Suite) en Oracle Access Manager y realizar los cambios de configuración necesarios para realizar la autenticación de SSO federada con Azure AD y E-Business Suite mediante Oracle Access Manager.

Comprender el flujo de federación de Azure AD y E-Business Suite

Antes de continuar con la configuración, debe comprender el flujo de federación de Azure AD y E-Business Suite.

A continuación se muestra la descripción de ebiz-federation-flow.png
Descripción de la ilustración ebiz-federation-flow.png

En este escenario, los usuarios acceden a E-Business Suite con credenciales almacenadas en Azure AD. Este acceso se consigue mediante una configuración de autenticación federada con el protocolo SAML 2.0, en el que Azure AD es el proveedor de identidad (IDP) y E-Business Suite es el proveedor de servicios (SP). Puesto que Oracle Access Manager se despliega delante de E-Business Suite para SSO, también es el componente que proporciona las capacidades de federación a E-Business Suite. En esta sección se proporcionan los pasos necesarios para implantar la federación de identidad entre Azure AD y Oracle Access Manager.

Tenga en cuenta que principalmente estamos interesados en un flujo de federación que se inicia en el acceso a un punto final protegido por E-Business Suite. En términos de protocolo SAML, esto se conoce como flujo iniciado por el proveedor de servicios (iniciado por SP) y se ilustra en la figura 2. En ese flujo, el servidor de Oracle Access Manager (OAM) detecta el acceso a un recurso protegido por E-Business Suite, crea una solicitud de autenticación (SAMLRequest) y redirige el explorador a Azure AD para la autenticación. Azure AD desafía al usuario las credenciales, las valida, crea SAMLResponse como respuesta a la solicitud de autenticación recibida y la envía a Oracle Access Manager. A su vez, Oracle Access Manager valida la afirmación y confirma la información de identificación de usuario embebida en la afirmación, otorgando acceso al recurso protegido.

Tenga en cuenta que la configuración presentada en esta sección también tiene en cuenta el flujo iniciado por el proveedor de identidad (iniciado por IdP), donde se realiza una solicitud inicialmente a la URL entre sitios de SAML de Azure AD, que a su vez envía un SAMLResponse no solicitado al servidor de Oracle Access Manager.

La configuración presentada también soporta la desconexión única iniciada por SP (donde E-Business Suite inicia el flujo de desconexión). En el momento de la publicación inicial de este documento, no se admite la desconexión única iniciada por IDP (donde el flujo de desconexión se inicia en el portal de Azure). Consulte la sección "Problema conocido" al final de este documento para obtener más información.

Configurar Azure AD como proveedor de identidad

En primer lugar, debe configurar Azure AD como proveedor de identidad.

  1. Inicie sesión en el portal de Azure como administrador de dominio
  2. En el panel de navegación de la izquierda, haga clic en Azure Active Directory.
  3. En el panel de Azure Active Directory, haga clic en Aplicaciones empresariales.
  4. Haga clic en New application.
  5. En la sección Agregar desde galería, escriba Oracle Access Manager para EBS en el cuadro de búsqueda, seleccione Oracle Access Manager para EBS en las aplicaciones resultantes y, a continuación, haga clic en Agregar.
  6. Para configurar Oracle Access Manager como proveedor de servicios para la aplicación, haga clic en Conexión única.
  7. Seleccione SAML como método de inicio de sesión único.

    Aparece la página Configurar el conexión única con SAML. Aquí, puede introducir los detalles de integración en los siguientes pasos.

    Algunos de los valores que debe introducir proceden de los metadatos de SAML de Oracle Access Manager. Para obtener los metadatos, vaya a http(s)://<oam_hostname>:<port>/oamfed/sp/metadata. La salida son datos XML, algunos de los cuales se necesitan en los siguientes pasos.

  8. En el área Configuración básica de SAML de la página Configurar conexión única con SAML, proporcione valores para Identificador (ID de entidad), URL de respuesta (URL de servicio de consumidor de afirmaciones) y URL de desconexión.
    • Identificador (ID de entidad) corresponde al atributo entityID del elemento EntityDescriptor en los metadatos de SAML. En tiempo de ejecución, Azure AD agrega el valor al elemento Audience de la afirmación de SAML, indicando el público que es el destino esperado de la afirmación. Busque el siguiente valor en los metadatos de Oracle Access Manager e introduzca ese valor:
      <md:EntityDescriptor
      …
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       ID="id-4TfauRP-ZeWyweEXkrqcBA0w0nRhe64hOPfnY2YR"
       cacheDuration="P30DT0H0M0S"
       entityID="http://myoamserver.mycompany.com:14100/oam/fed"
       validUntil="2029-03-19T21:13:40Z">
      …
    • La URL de respuesta (URL de servicio del consumidor de afirmaciones) corresponde al atributo Location del elemento AssertionConsumerService en los metadatos de SAML. Asegúrese de seleccionar el atributo de ubicación relativo al enlace HTTP_POST, como se muestra en el siguiente ejemplo. La URL de respuesta es el punto final del servicio SAML del partner de federación que se espera que procese la afirmación.
      <md:AssertionConsumerService
      Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
      Location="https://myoamserver.mycompany.com/oam/server/fed/sp/sso"
      index="1"/>
    • La URL de desconexión corresponde al punto final logout de SAML de Oracle Access Manager. Ese valor corresponde al atributo Location del elemento SingleLogoutService en los metadatos de SAML de Oracle Access Manager. Este valor se utiliza exclusivamente en el flujo de desconexión iniciado por IdP.
      <md:SingleLogoutService
      Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
      Location="https://myoamserver.mycompany.com/oamfed/sp/samlv20"
      ResponseLocation="https://myoamserver.mycompany.com/oamfed/sp/samlv20"
      />
      

    Nota:

    Las propiedades URL de inicio de sesión y Estado de retransmisión no son relevantes para este escenario, por lo que puede omitirlas.
  9. En el área Atributos y reclamaciones de usuario, configure los atributos de usuario que se insertarán en la afirmación de SAML y se enviarán a Oracle Access Manager. Para este escenario, basta con enviar algún tipo de identificación de usuario única.
    Deje los valores por defecto para el identificador de nombre value: user.userprincipalname [nameid-format:emailAddress] porque userprincipalname es un atributo único dentro de Azure AD. La implicación de esta configuración es la necesidad de importar el valor userprincipalname a la entrada de usuario en el almacén de identidades de Oracle Access Manager (almacén de servidor LDAP).
  10. . En el área SAML Signing Certificate, haga clic en el enlace Download situado junto al XML de metadatos de federación y guarde el archivo en la computadora. Lo utilizará más adelante al configurar Oracle Access Manager como proveedor de servicios.

Asignación de usuarios a la aplicación

A continuación, asigne usuarios a la aplicación. Una vez que Azure AD recibe una solicitud de autenticación de la aplicación, solo los usuarios que asigne a la aplicación pueden iniciar sesión.

  1. En la aplicación Azure AD que ha creado en la sección anterior, haga clic en Usuarios y grupos y, a continuación, haga clic en Agregar usuario.
  2. Seleccione la opción Usuarios y grupos: ninguno seleccionado y realice los siguientes pasos:
    1. En el cuadro de búsqueda Seleccionar miembro o invitar a un usuario externo, introduzca el nombre de un usuario y, a continuación, pulse Intro.
    2. Seleccione el usuario y, a continuación, haga clic en Seleccionar para agregarlo.
    3. Haga clic en Asignar.
    4. Para agregar más usuarios o grupos, repita estos pasos.
  3. Para evitar que los usuarios vean esta aplicación empresarial destinada solo a la configuración de SSO, haga clic en Propiedades, cambie el valor de Visible para los usuarios a No y haga clic en Guardar.

Creación de un nuevo proveedor de identidad para Azure AD

A continuación, cree un nuevo proveedor de identidad para Azure AD. En este paso se asume que los servicios de federación de Oracle Access Manager se han activado.

  1. Conectarse a la consola de Oracle Access Manager como administrador
  2. Haga clic en el separador Federación en la parte superior de la consola.
  3. En el área Federación del separador Pasador de inicio, haga clic en Gestión de proveedores de servicios.
  4. En el separador Administración de proveedores de servicios, haga clic en Crear partner de proveedor de identidad.
  5. En el área General, introduzca un nombre para el socio de proveedor de identidad y seleccione Activar socio y Socio de proveedor de identidad por defecto. Vaya al siguiente paso antes de guardar.
  6. . En el área Información de servicio:
    1. Seleccione SAML2.0 como protocolo.
    2. Seleccione Cargar desde metadatos de proveedor.
    3. Haga clic en Examinar (para Windows) o Seleccionar archivo (para Mac) y seleccione el archivo de metadatos SAML de Azure AD que guardó anteriormente.
    4. Vaya al siguiente paso antes de guardar.
  7. En el área Opciones de asignación:
    1. Seleccione la opción Almacén de identidades de usuario que se utilizará como almacén de identidades LDAP de Oracle Access Manager que se comprueba para los usuarios de E-Business Suite. Normalmente, ya está configurado como almacén de identidades de Oracle Access Manager.
    2. Deje User Search Base DN en blanco. La base de búsqueda se selecciona automáticamente de la configuración del almacén de identidades.
    3. Seleccione Asignar identificador de nombre de afirmación a almacén de ID de usuario atributo e introduzca el correo en el cuadro de texto.

    Nota:

    Esta configuración define la asignación de usuarios entre Azure AD y Oracle Access Manager. Oracle Access Manager tomará el valor del elemento NameID en la afirmación de SAML entrante e intentará buscar ese valor en el atributo de correo en todas las entradas de usuario del almacén de identidades configurado. Por lo tanto, es imprescindible que el nombre de principal de usuario de Azure AD (en la configuración de Azure AD mostrada anteriormente) esté sincronizado con el atributo mail en el almacén de identidades de Oracle Access Manager.
  8. Haga clic en Guardar para guardar el socio del proveedor de identidad.
  9. Después de guardar el socio, vuelva al área Avanzado en la parte inferior del separador. Asegúrese de que las opciones estén configuradas de la siguiente forma:
    • Activar desconexión global está seleccionado.
    • Se ha seleccionado el enlace de respuesta HTTP POST SSO.
      Esta es una instrucción que Oracle Access Manager envía en la solicitud de autenticación indicando a Azure AD cómo debe transmitir la afirmación de SAML. Si inspecciona la solicitud de autenticación que envía Oracle Access Manager, verá algo parecido al siguiente ejemplo. Observe el atributo negrita ProtocolBinding del elemento AuthnRequest en el ejemplo.
      <?xml version="1.0"?>
      <samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
      xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"
      xmlns:enc="http://www.w3.org/2001/04/xmlenc#"
      xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
      xmlns:x500="urn:oasis:names:tc:SAML:2.0:profiles:attribute:X500"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      Destination="https://login.microsoftonline.com/4e39517e-7ef9-45a7-
      9751-6ef6f2d43429/saml2" ID="id-y5nmx61xB8QWXtDmYWcH7rPYs5zXtV-fcKRyyM9" IssueInstant="2019-04-23T17:01:25Z"
      ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
      Version="2.0">
      <saml:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameidformat:entity">http://myoamserver.mycompany.com:14100/oam/fed</saml:Is
      suer>
      <dsig:Signature>
      <dsig:SignedInfo>
      <dsig:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xmlexc-c14n#"/>
      <dsig:SignatureMethod
      Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
      <dsig:Reference URI="#id-y5nmx61xB8QWXtDmYWcH7rPYs5zXtV-fcKRy-yM9">
      <dsig:Transforms>
      <dsig:Transform
      Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
      <dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
      </dsig:Transforms>
      <dsig:DigestMethod
      Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
      <dsig:DigestValue>pa00UWdqfywm4Qb59HioA6BhD18=</dsig:DigestValue>
      </dsig:Reference>
      </dsig:SignedInfo>
      <dsig:SignatureValue>X4eZRyFD6sznA0g3BJebU2c6ftunG2UvwbMptO+10wFky0aAL
      nnr0Na+5fF83U4Ut99OvAIZ41K3YMNaR4A8zr37SSlBrb72X7CTtxjh2mAphWDRPmkJx4v
      S0HACzZh0MHimdwq+qVXuFRbSLBE+9XNSGWJzGAh//WqGBlNrKnw=</dsig:SignatureV
      alue>
      </dsig:Signature>
      </samlp:AuthnRequest>
    • La activación de la autenticación básica HTTP (enlace de artefacto de SSO) no está seleccionada.

      Este valor solicita a Azure AD que envíe la afirmación mediante una solicitud HTTP POST. Al recibir una solicitud como esta, los proveedores de identidad suelen crear un formulario HTML con la afirmación como un elemento de formulario oculto que se publica automáticamente en el servicio de afirmación del consumidor (ACS) del proveedor de servicios.

  10. En el área General, haga clic en el botón Create Authentication Scheme and Module (Crear esquema de autenticación y módulo).
    Se crea un esquema de autenticación y un módulo con el nombre del socio. La única configuración que queda es asociar el esquema de autenticación a los recursos de E-Business Suite que necesitan credenciales de Azure AD para la autenticación, lo que hará en la siguiente sección.
  11. Puede comprobar el módulo de autenticación creado siguiendo estos pasos:
    1. Haga clic en el separador Application Security en la parte superior de la consola.
    2. En Plugins, seleccione Módulos de autenticación, haga clic en Buscar y busque el módulo de federación.
    3. Seleccione el módulo y, a continuación, haga clic en el separador Steps.
    4. Tenga en cuenta que el valor de la propiedad FedSSOIdP es el partner del proveedor de identidad

Asociar los recursos de E-Business Suite al esquema de autenticación

El paso de configuración final es asociar los recursos de E-Business Suite al esquema de autenticación. Realice estos pasos mientras está conectado a la consola de Oracle Access Manager como administrador

  1. En la parte superior de la consola, haga clic en Seguridad de la aplicación.
  2. En Gestor de acceso, seleccione Dominio de aplicación, haga clic en Buscar y seleccione el dominio de aplicación que se creó durante la ejecución del script de E-Business Suite para la integración que habría registrado E-Business Suite WebGate.
  3. Haga clic en el separador Políticas de autenticación y, a continuación, haga clic en Política de recursos protegidos.
    Cambie el esquema de autenticación cambiando el esquema de autenticación creado anteriormente por el nuevo esquema de autenticación de federación. Así es como Oracle Access Manager vincula un recurso protegido a un proveedor de identidad
  4. Haga clic en Aplicar para guardar el cambio.