Crea i partner IdP SAML 2.0 in OAM e SP

Questo articolo spiega come impostare un accordo di federazione tra OAM che funge da provider di servizi SAML 2.0 e un partner remoto SAML 2.0 IdP, tra cui:

L'articolo descrive come eseguire le attività di cui sopra tramite l'interfaccia utente o l'uso dei comandi OAM WLST.

Definizione del trust federativo

Stabilire un trust tra i partner della federazione è un prerequisito prima di poter eseguire qualsiasi operazione SSO della federazione tra i server della federazione.

La creazione di un trust implica lo scambio di informazioni sui certificati, se il protocollo utilizzato si basa sui certificati PKI X.509 per proteggere gli scambi di messaggi, nonché le posizioni/URL dei servizi che implementano il protocollo di federazione.

Mapping asserzioni

Quando OAM funge da provider di servizi e delega l'autenticazione utente a un IdP remoto, l'amministratore deve concordare con l'amministratore dell'IdP le modalità di identificazione dell'utente nell'asserzione SAML (informazioni utente memorizzate in NameID), oppure come attributo SAML o in più attributi SAML, è necessario configurare OAM/SP per mappare l'asserzione SAML in entrata a un record utente LDAP utilizzando NameID e/o gli attributi SAML.

OAM richiede il mapping dell'asserzione in entrata a un record utente LDAP per creare una sessione OAM.

OAM/SP può mappare un'asserzione SAML in entrata a un record utente LDAP mediante:

OAM/SP fornisce inoltre le funzionalità per utilizzare un'area di memorizzazione delle identità e un DN base di ricerca utente specifici durante il mapping dell'asserzione a un record utente LDAP. È facoltativo e:

SAML 2.0 con metadati

Console di amministrazione di OAM

Per creare un nuovo partner SAML 2.0 IdP con metadati, effettuare le operazioni riportate di seguito.

  1. Andare alla console di amministrazione OAM: http(s)://oam-admin-host:oam-adminport/oamconsole

  2. Passare a Identity Federation, Service Provider Administration

  3. Fare clic sul pulsante Crea partner provider di identità

  4. Nella schermata Crea:

    1. Immettere un nome per il partner

    2. Verificare se questo partner deve essere utilizzato o meno come IdP per impostazione predefinita quando si avvia un'operazione SSO Federation, se non è specificato alcun partner IdP.

    3. Selezionare SAML 2.0 come protocollo

    4. Fare clic su Carica metadati e caricare il file dei metadati SAML 2.0 per la sezione Mapping asserzioni IdP.

      1. Facoltativamente, impostare l'area di memorizzazione delle identità OAM da utilizzare Nota: nell'esempio è stato lasciato vuoto il campo per utilizzare l'area di memorizzazione delle identità OAM predefinita.

      2. Facoltativamente, impostare il DN base di ricerca utente Nota: nell'esempio è stato lasciato vuoto il campo per utilizzare il DN base di ricerca utente configurato nell'area di memorizzazione delle identità.

    5. Selezionare la modalità di esecuzione del mapping Nota: nell'esempio viene eseguito il mapping dell'asserzione tramite NameID all'attributo di posta LDAP.

    6. Selezionare il profilo attributo utilizzato per mappare i nomi degli attributi nell'asserzione SAML in entrata ai nomi locali.

  5. Fare clic su Salva

Descrizione dell'immagine Create_IDP_Partner.jpg

Dopo aver creato il partner, viene visualizzata la schermata Modifica partner con:

WLST

Per creare un nuovo partner SAML 2.0 IdP con metadati utilizzando i comandi OAM WLST, eseguire le operazioni riportate di seguito.

  1. Immettere l'ambiente WLST eseguendo: $IAM_ORACLE_HOME/common/bin/wlst.sh

  2. Connetti al server di amministrazione WLS: connect()

  3. Passare alla diramazione Runtime dominio: domainRuntime()

  4. Creare il partner SAML 2.0 IdP con metadati denominato acmeIdP in OAM: addSAML20IdPFederationPartner("acmeIdP", "/tmp/acme-idp-metadata-saml20.xml")

  5. Per impostazione predefinita, il nuovo partner IdP è configurato per:

    1. Usa area memorizzazione identità OAM predefinita

    2. Utilizzare il DN di base di ricerca utente dell'area di memorizzazione delle identità (senza override)

    3. Mappare l'asserzione SAML utilizzando NameID, corrispondente all'attributo di posta LDAP

    4. Impostazione del formato della richiesta di autenticazione NameID su Nessuno

    5. Utilizzare HTTP-POST come autenticazione risposta SSO predefinita

    6. Usa profilo attributo provider di identità predefinito

  6. Uscire dall'ambiente WLST: exit()

SAML 2.0 senza metadati

Console di amministrazione di OAM

Per creare un nuovo partner SAML 2.0 IdP senza metadati, eseguire i passi riportati di seguito (assicurarsi innanzitutto di disporre di tutti i dati del partner IdP, quali certificati, identificativi IdP e URL):

  1. Andare alla console di amministrazione OAM: http(s)://oam-admin-host:oam-adminport/oamconsole

  2. Passare a Identity Federation, Amministrazione provider di servizi

  3. Fare clic sul pulsante Crea partner provider di identità

  4. Nella schermata Crea:

    1. Immettere un nome per il partner

    2. Verificare se questo partner deve essere utilizzato o meno come IdP per impostazione predefinita quando si avvia un'operazione SSO Federation, se non è specificato alcun partner IdP.

    3. Selezionare SAML 2.0 come protocollo

    4. Seleziona immissione manuale

    5. Inserisci Issuer / ProviderID del partner IdP

    6. Se il campo SuccinctID viene lasciato vuoto, OAM/SP lo calcola digitando l'ID provider utilizzando l'algoritmo SHA-1 (deve essere lasciato vuoto).

    7. Immettere l'URL del servizio SSO per il partner IdP specificato. Si tratta dell'URL al quale l'utente viene reindirizzato da OAM/SP con un SAML AuthnRequest al IdP.

    8. Se il partner supporta il protocollo di artifact SAML 2.0, immettere l'URL del servizio SOAP in cui OAM/SP si connette per recuperare l'asserzione SAML durante un'operazione di artifact SSO

    9. Se il partner supporta il protocollo di logout SAML 2.0:

      1. Immettere l'URL della richiesta di logout SAML 2.0 in cui il partner può elaborare un messaggio LogoutRequest SAML 2.0

      2. Immettere l'URL di risposta di logout SAML 2.0 in cui il partner può elaborare un messaggio LogoutResponse SAML 2.0

    10. Carica il file del certificato di firma IdP:

      1. in formato PEM (dove il file contiene come prima riga --BEGIN CERTIFICATE--, quindi il certificato in formato codificato Base64, quindi l'ultima riga come --END CERTIFICATE--)

      2. o nel formato DER in cui il certificato è memorizzato nella codifica binaria

    11. Se IdP dispone di un certificato di cifratura, caricare il file:

      1. in formato PEM (dove il file contiene come prima riga --BEGIN CERTIFICATE--, quindi il certificato in formato codificato Base64, quindi l'ultima riga come --END CERTIFICATE--)

      2. o nel formato DER in cui il certificato è memorizzato nella codifica binaria

    12. Sezione Mapping asserzioni:

      1. Facoltativamente, impostare l'area di memorizzazione delle identità OAM da utilizzare Nota: nell'esempio è stato lasciato vuoto il campo per utilizzare l'area di memorizzazione delle identità OAM predefinita.

      2. Facoltativamente, impostare il DN base di ricerca utente Nota: nell'esempio è stato lasciato vuoto il campo per utilizzare il DN base di ricerca utente configurato nell'area di memorizzazione delle identità.

    13. Selezionare la modalità di esecuzione del mapping Nota: nell'esempio viene eseguito il mapping dell'asserzione tramite NameID all'attributo di posta LDAP.

    14. Selezionare il profilo attributo utilizzato per mappare i nomi degli attributi nell'asserzione SAML in entrata ai nomi locali.

  5. Fare clic su Salva

Descrizione dell'immagine Create_IDP_Provider_Partner.jpg

Dopo aver creato il partner, viene visualizzata la schermata Modifica partner con:

WLST

Per creare un nuovo partner SAML 2.0 IdP senza metadati utilizzando i comandi OAM WLST, eseguire i passi riportati di seguito (assicurarsi innanzitutto di disporre di tutti i dati del partner IdP, quali certificati, identificativi IdP e URL):

  1. Immettere l'ambiente WLST eseguendo: $IAM_ORACLE_HOME/common/bin/wlst.sh

  2. Connetti al server di amministrazione WLS: connect()

  3. Passare alla diramazione Runtime dominio: domainRuntime()

  4. Crea un partner SAML 2.0 IdP senza metadati che chiama acmeIdP in OAM: addSAML20IdPFederationPartnerWithoutMetadata("acmeIdP","https://acme.com/idp", "https://acme.com/saml20/sso", "https://acme.com/saml20/soap")

  5. Per impostazione predefinita, il nuovo partner SP è configurato per:

    1. Usa area memorizzazione identità OAM predefinita

    2. Utilizzare il DN di base di ricerca utente dell'area di memorizzazione delle identità (senza override)

    3. Mappare l'asserzione SAML utilizzando NameID, corrispondente all'attributo di posta LDAP

    4. Impostazione del formato della richiesta di autenticazione NameID su Nessuno

    5. Utilizzare HTTP-POST come autenticazione risposta SSO predefinita

    6. Usa profilo attributo provider di identità predefinito

    7. Nessun certificato caricato per questo partner IdP

  6. Uscire dall'ambiente WLST: exit()

Modifica delle impostazioni federazione tramite WLST

In questa sezione viene descritto come modificare le impostazioni comuni dei partner SP mediante i comandi OAM WLST.

Si supponga di trovarsi già nell'ambiente WLST e di essere connessi mediante:

  1. Immettere l'ambiente WLST eseguendo: $IAM_ORACLE_HOME/common/bin/wlst.sh

  2. Connetti al server di amministrazione WLS: connect()

  3. Passare alla diramazione Runtime dominio: domainRuntime()

Impostazione mappatura asserzione SAML

Per configurare le impostazioni di mapping per un partner SAML IdP, effettuare le operazioni riportate di seguito.

  1. Utilizzare il comando seguente per mappare l'asserzione tramite 1: setIdPPartnerMappingNameID(partnerName, userstoreAttr)

    1. partnerName è il nome utilizzato per creare il partner IdP

    2. userstoreAttr: attributo utente LDAP corrispondente al valore NameID.

  2. Utilizzare il comando seguente per mappare l'asserzione tramite un attributo SAML: setIdPPartnerMappingAttribute(partnerName, assertionAttr, userstoreAttr)

    1. partnerName è il nome utilizzato per creare il partner IdP

    2. assertionAttr: nome dell'attributo SAML.

    3. userstoreAttr: attributo utente LDAP corrispondente al valore dell'attributo SAML.

  3. Utilizzare il comando seguente per mappare l'asserzione tramite una query LDAP: setIdPPartnerMappingAttributeQuery(partnerName, attrQuery)

    1. partnerName è il nome utilizzato per creare il partner IdP

    2. attrQuery: la query LDAP da utilizzare, ad esempio (&(givenname=%firstname%) (sn=%lastname%)).

DN base ricerca utenti e area memorizzazione identità OAM

Per configurare OAM/SP in modo che utilizzi un'area di memorizzazione delle identità OAM specifica e/o un DN base di ricerca utente specifico durante il mapping dell'asserzione SAML in entrata, eseguire il comando setPartnerIDStoreAndBaseDN() seguente:

Logout da SAML 2.0

Per abilitare il logout SAML 2.0 e specificare gli URL di logout SAML 2.0 del partner IdP, eseguire le operazioni riportate di seguito.

Per disabilitare il logout SAML 2.0 per il partner IdP, eseguire le operazioni riportate di seguito.

Certificati SAML

Sono disponibili vari comandi WLST per gestire i certificati di firma e cifratura:

IdP Partner AMribute ProQl

Per configurare il profilo attributo partner IdP per un partner IdP specifico, utilizzare i comandi riportati di seguito.

Per configurare un partner IdP in modo che utilizzi un profilo attributo partner IdP specifico, eseguire le operazioni riportate di seguito.

Associazioni di richieste e risposte SSO SAML

Per configurare le associazioni SAML per un partner IdP specifico, utilizzare i comandi riportati di seguito.

Per configurare il partner IdP, eseguire: configureSAMLBinding(partnerName, partnerType, binding, ssoResponseBinding="httppost")

Esempi

I comandi riportati di seguito possono essere utilizzati per aggiungere un partner IdP senza metadati SAML 2.0:

addSAML20IdPFederationPartnerWithoutMetadata("acmeIdP","https://acme.com/idp", "https://acme.com/saml2 /sso", "https://acme.com/saml20/soap" configureSAML20Logout("acmeIdP", "idp", "true","https://acme.com/saml20/logoutReq" "https://acme.com/saml20/logoutResp" setFederationPartnerSigningCert("acmeIdP", "idp", "/tmp/acme-idp-cert.pem") setPartnerIDStoreAndBaseDN("acmeIdP", "idp", "oid") setIdPPartnerMappingNameID("acmeIdP", "mail")

I comandi riportati di seguito possono essere utilizzati per aggiungere un partner IdP con metadati SAML 2.0 (in questo esempio viene utilizzato lo stile identità OAM predefinito):

addSAML20IdPFederationPartner("acmeIdP", "/tmp/acme-idp-metadata-saml20.xml" setIdPPartnerMappingNameID("acmeIdP", "mail")

Altre risorse di apprendimento

Esplora altri laboratori su docs.oracle.com/learn o visita altri contenuti di formazione gratuiti sul canale Oracle Learning YouTube. Inoltre, visitare education.oracle.com/learning-explorer per diventare un Oracle Learning Explorer.

Per la documentazione sul prodotto, visitare Oracle Help Center.