Informazioni sulla configurazione di SSO tra Azure AD e Oracle Access Manager per Oracle E-Business Suite

A questo punto, completare i passi necessari per registrare un nuovo provider di servizi federati in Azure AD, registrare un nuovo provider di identità (E-Business Suite) in Oracle Access Manager e apportare le modifiche di configurazione necessarie per eseguire l'autenticazione SSO federata con Azure AD ed E-Business Suite utilizzando Oracle Access Manager.

Comprendere il flusso della federazione di Azure AD ed E-Business Suite

Prima di procedere con la configurazione, è necessario comprendere il flusso di federazione di Azure AD ed E-Business Suite.

Descrizione di ebiz-federation-flow.png:
Descrizione dell'illustrazione ebiz-federation-flow.png

In questo scenario, gli utenti accedono a E-Business Suite con le credenziali memorizzate in Azure AD. Questo accesso viene ottenuto tramite un'impostazione di autenticazione federata con il protocollo SAML 2.0, in cui Azure AD è il provider di identità (IDP) e E-Business Suite è il provider di servizi (SP). Poiché Oracle Access Manager viene distribuito di fronte a E-Business Suite per SSO, è anche il componente che fornisce le funzionalità di federazione a E-Business Suite. In questa sezione vengono descritti i passi necessari per implementare la federazione delle identità tra Azure AD e Oracle Access Manager.

Si noti che siamo particolarmente interessati a un flusso di federazione avviato per l'accesso a un endpoint protetto da E-Business Suite. Nei termini del protocollo SAML, questo è noto come flusso avviato dal provider di servizi (iniziato dal provider di servizi) ed è illustrato nella Figura 2. In tale flusso, il server Oracle Access Manager (OAM) rileva l'accesso a una risorsa protetta da E-Business Suite, crea una richiesta di autenticazione (SAMLRequest) e reindirizza il browser a Azure AD per l'autenticazione. Azure AD sfida l'utente per le credenziali, le convalida, crea un SAMLResponse come risposta alla richiesta di autenticazione ricevuta e lo invia a Oracle Access Manager. A sua volta, Oracle Access Manager convalida l'asserzione e dichiara le informazioni di identificazione utente incorporate nell'asserzione, consentendo l'accesso alla risorsa protetta.

Tenere presente che la configurazione presentata in questa sezione tiene conto anche del flusso avviato dal provider di identità (iniziato da IdP), in cui viene inizialmente effettuata una richiesta all'URL dell'intersito SAML di Azure AD, che a sua volta invia un SAMLResponse non richiesto al server Oracle Access Manager.

Il logout singolo avviato da SP (in cui il flusso di logout viene avviato da E-Business Suite) è supportato anche dalla configurazione presentata. Quando questo documento è stato pubblicato inizialmente, il logout singolo avviato da IDP (dove il flusso di logout viene avviato dal portale di Azure) non è supportato. Per ulteriori informazioni, vedere la sezione "Problema conosciuto" alla fine di questo documento.

Configura Azure AD come provider di identità

In primo luogo, devi configurare Azure AD come provider di identità.

  1. Accedere al portale Azure come amministratore del dominio
  2. Nel riquadro di navigazione all'estrema sinistra fare clic su Azure Active Directory.
  3. Nel riquadro Azure Active Directory fare clic su Applicazioni enterprise.
  4. Fare clic su Nuova applicazione.
  5. Nella sezione Aggiungi da galleria digitare Oracle Access Manager for EBS nella casella di ricerca, selezionare Oracle Access Manager for EBS dalle applicazioni risultanti, quindi fare clic su Aggiungi.
  6. Per configurare Oracle Access Manager come provider di servizi per l'applicazione, fare clic su Single Sign-On.
  7. Selezionare SAML come metodo di accesso Single Sign-On.

    Viene visualizzata la pagina Imposta accesso singolo con SAML. Qui è possibile immettere i dettagli di integrazione nei passi riportati di seguito.

    Alcuni valori da immettere provengono dai metadati SAML di Oracle Access Manager. Per ottenere i metadati, andare a http(s)://<oam_hostname>:<port>/oamfed/sp/metadata. L'output è dato XML, alcuni dei quali sono necessari nei passi successivi.

  8. Nell'area Configurazione SAML di base della pagina Imposta Single Sign-On con SAML, fornire i valori per Identifier (Entity ID), URL risposta (Assertion Consumer Service URL) e URL logout.
    • Identificatore (ID entità) corrisponde all'attributo entityID dell'elemento EntityDescriptor nei metadati SAML. In runtime, Azure AD aggiunge il valore all'elemento Audience dell'asserzione SAML, indicando l'audience che rappresenta la destinazione prevista dell'asserzione. Trovare il valore seguente nei metadati di Oracle Access Manager e immettere tale valore:
      <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">
      …
    • URL risposta (URL servizio consumer di asserzione) corrisponde all'attributo Location dell'elemento AssertionConsumerService nei metadati SAML. Assicurarsi di selezionare l'attributo Location relativo all'associazione HTTP_POST, come mostrato nell'esempio riportato di seguito. L'URL di risposta è l'endpoint del servizio SAML nel partner federato che dovrebbe elaborare l'asserzione.
      <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"/>
    • L'URL di logout corrisponde all'endpoint logout SAML di Oracle Access Manager. Tale valore corrisponde all'attributo Location dell'elemento SingleLogoutService nei metadati SAML di Oracle Access Manager. Questo valore viene utilizzato esclusivamente nel flusso di logout avviato da 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:

    Le proprietà dell'URL di accesso e dello stato di ripetizione non sono rilevanti per questo scenario, pertanto è possibile ignorarle.
  9. Nell'area Attributi utente e richieste configurare gli attributi utente che verranno inseriti nell'asserzione SAML e inviati a Oracle Access Manager. Per questo scenario, è sufficiente inviare una forma di identificazione utente univoca.
    Lasciare i valori predefiniti per l'identificativo del nome value: user.userprincipalname [nameid-format:emailAddress] poiché userprincipalname è un attributo univoco in Azure AD. L'implicazione di tale configurazione è la necessità di importare il valore userprincipalname nella voce utente nell'area di memorizzazione delle identità di Oracle Access Manager (l'area di memorizzazione dei server LDAP).
  10. . Nell'area SAML Signing Certificate fare clic sul collegamento Download accanto a Federation Metadata XML, quindi salvare il file sul computer. Verrà utilizzato in seguito durante la configurazione di Oracle Access Manager come provider di servizi.

Assegna gli utenti all'applicazione

Successivamente, assegnare gli utenti all'applicazione. Dopo che Azure AD ha ricevuto una richiesta di autenticazione dall'applicazione, solo gli utenti assegnati all'applicazione possono eseguire il login.

  1. Dall'applicazione Azure AD creata nella sezione precedente, fare clic su Utenti e gruppi, quindi su Aggiungi utente.
  2. Selezionare l'opzione Utenti e gruppi: nessuna selezione ed eseguire le seguenti operazioni:
    1. Nella casella di ricerca Selezionare un membro o invitare un utente esterno immettere il nome di un utente, quindi premere Invio.
    2. Selezionare l'utente, quindi fare clic su Seleziona per aggiungere l'utente.
    3. Fare clic su Assegna.
    4. Per aggiungere più utenti o gruppi, ripetere questi passi.
  3. Per impedire agli utenti di visualizzare questa applicazione enterprise destinata solo alla configurazione SSO, fare clic su Proprietà, modificare il valore di Visibile agli utenti in No e fare clic su Salva.

Crea un nuovo provider di identità per Azure AD

Successivamente, creare un nuovo provider di identità per Azure AD. Questo passo presuppone che i servizi federati di Oracle Access Manager siano stati abilitati.

  1. Accedere alla console Oracle Access Manager come amministratore
  2. Fare clic sulla scheda Federazione nella parte superiore della console.
  3. Nell'area Federazione della scheda Avvia pad fare clic su Gestione provider di servizi.
  4. Nella scheda Amministrazione provider di servizi fare clic su Crea partner provider di identità.
  5. Nell'area Generale, immettere un nome per il partner provider di identità e selezionare sia Abilita partner che Partner provider di identità predefinito. Prima di salvare, andare al passo successivo.
  6. . Nell'area Informazioni servizio:
    1. Selezionare SAML2.0 come protocollo.
    2. Selezionare Carica da metadati provider.
    3. Fare clic su Sfoglia (per Windows) o Scegli file (per Mac) e selezionare il file di metadati SAML di Azure AD salvato in precedenza.
    4. Andare al passo successivo prima di salvare.
  7. Nell'area Opzioni di mapping:
    1. Selezionare l'opzione Area di memorizzazione delle identità utente che verrà utilizzata come area di memorizzazione delle identità LDAP di Oracle Access Manager selezionata per gli utenti di E-Business Suite. In genere, questa impostazione è già configurata come area di memorizzazione delle identità di Oracle Access Manager.
    2. Lasciare vuoto il campo DN base ricerca utenti. La base di ricerca viene selezionata automaticamente dalla configurazione dell'area di memorizzazione delle identità.
    3. Selezionare Mappa ID nome asserzione all'area di memorizzazione ID utente attributo e immettere la posta nella casella di testo.

    Nota:

    Questa configurazione definisce il mapping degli utenti tra Azure AD e Oracle Access Manager. Oracle Access Manager assumerà il valore dell'elemento NameID nell'asserzione SAML in entrata e tenterà di cercare tale valore rispetto all'attributo di posta tra tutte le voci utente nell'area di memorizzazione delle identità configurata. È pertanto indispensabile che il nome principal dell'utente di Azure AD (nella configurazione di Azure AD visualizzata in precedenza) sia sincronizzato con l'attributo mail nell'area di memorizzazione delle identità di Oracle Access Manager.
  8. Fare clic su Salva per salvare il partner del provider di identità.
  9. Dopo aver salvato il partner, tornare all'area Avanzate nella parte inferiore della scheda. Assicurarsi che le opzioni siano configurate come indicato di seguito.
    • L'opzione Abilita logout globale è selezionata.
    • L'associazione delle risposte di HTTP POST SSO è selezionata.
      Questa è un'istruzione inviata da Oracle Access Manager nella richiesta di autenticazione che indica a Azure AD come deve ritrasmettere l'asserzione SAML. Se si ispeziona la richiesta di autenticazione inviata da Oracle Access Manager, viene visualizzato un esempio simile a quello riportato di seguito. Prendere nota dell'attributo ProtocolBinding in grassetto dell'elemento AuthnRequest nell'esempio.
      <?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>
    • L'opzione Abilita autenticazione base HTTP (associazione artifact SSO) non è selezionata.

      Questa impostazione richiede a Azure AD di inviare l'asserzione tramite una richiesta POST HTTP. Quando si riceve una richiesta come questa, i provider di identità in genere creano un form HTML con l'asserzione come elemento del form nascosto che viene automaticamente inviato al servizio clienti asserzione (ACS, Assertion Consumer Service) del provider di servizi.

  10. Nell'area General (Generale), fare clic sul pulsante Create Authentication Scheme and Module (Crea schema di autenticazione e modulo).
    Uno schema di autenticazione e un modulo vengono creati con il nome del partner. L'unica configurazione a sinistra consiste nel collegare lo schema di autenticazione alle risorse E-Business Suite che richiedono le credenziali di Azure AD per l'autenticazione, che verranno eseguite nella sezione successiva.
  11. È possibile controllare il modulo di autenticazione creato effettuando le operazioni riportate di seguito.
    1. Fare clic sulla scheda Application Security nella parte superiore della console.
    2. In Plugin, selezionare Moduli di autenticazione, fare clic su Cerca e trovare il modulo di federazione.
    3. Selezionare il modulo, quindi fare clic sulla scheda Steps.
    4. Si noti che il valore nella proprietà FedSSOIdP è il partner del provider di identità

Associare le risorse di E-Business Suite allo schema di autenticazione

Il passo di configurazione finale consiste nell'associare le risorse E-Business Suite allo schema di autenticazione. Eseguire le operazioni riportate di seguito durante il login alla console di Oracle Access Manager come amministratore.

  1. Nella parte superiore della console fare clic su Application Security.
  2. In Gestione accessi selezionare Dominio applicazione, fare clic su Cerca e selezionare il dominio dell'applicazione creato durante l'esecuzione dello script di E-Business Suite per l'integrazione che avrebbe registrato E-Business Suite WebGate.
  3. Fare clic sulla scheda Criteri di autenticazione, quindi su Criterio risorse protette.
    Modificare lo schema di autenticazione modificando lo schema di autenticazione creato in precedenza con il nuovo schema di autenticazione federata. Ecco come Oracle Access Manager collega una risorsa protetta a un provider di identità
  4. Fare clic su Apply per salvare la modifica.