Creazione di partner SP SAML 2.0 in OAM e IdP
Questo articolo tratta i vari tipi di informazioni che si devono sapere per impostare un accordo di federazione tra OAM che funge da SAML 2.0 IdP e un partner SP SAML 2.0 remoto, tra cui:
-
Impostare un partner SP SAML 2.0 remoto con metadati SAML 2.0
-
Impostare un partner SP SAML 2.0 remoto senza metadati SAML 2.0
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.
SAML 2.0 con metadati
Console di amministrazione di OAM
Per creare un nuovo partner SP SAML 2.0 con metadati, eseguire le operazioni riportate di seguito.
-
Andare alla console di amministrazione OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
. -
Passare a Identity Federation, Amministrazione provider di identità.
-
Fare clic sul pulsante Crea partner provider di servizi.
-
Nella schermata Crea:
-
Immettere un nome per il partner.
-
Selezionare SAML 2.0 come protocollo.
-
Fare clic su Carica metadati e caricare il file dei metadati SAML 2.0 per il provider di servizi.
-
Selezionare il formato
NameID
da impostare nell'asserzione SAML 2.0, ad esempio il formato Indirizzo e-mailNameID
.
-
-
Immettere la modalità di impostazione del valore
NameID
:-
Se si seleziona Attributo area di memorizzazione ID utente, il valore
NameID
da impostare sull'attributo LDAP specificato nel campo accanto all'elenco a discesa. -
Se si seleziona Espressione, il valore
NameID
da impostare in base all'espressione specificata nel campo accanto all'elenco a discesa.
-
-
Selezionare il profilo attributo da utilizzare per popolare l'asserzione SAML con gli attributi.
-
Fare clic su Salva.
Descrizione dell'immagine Service_provider_partner_Screen.jpg
Dopo aver creato il partner, viene visualizzata la schermata Modifica partner con:
-
Le impostazioni impostate nella schermata precedente possono essere modificate
-
Viene visualizzata una sezione Impostazioni avanzate:
-
Abilita logout globale, che indica se OAM deve eseguire o meno lo scambio di logout SAML 2.0 con il partner nell'ambito del processo di logout.
-
Cifra asserzione: se l'asserzione inviata dal
IdP
deve essere cifrata utilizzando il certificato di cifratura del provider di servizi (nota: il provider di servizi deve supportare le asserzioni cifrate e il certificato di cifratura del provider di servizi deve essere presente nei metadati del provider di servizi SAML 2.0). -
Associazione risposta SSO: modalità di invio dell'asserzione al provider di servizi, se il provider di servizi non ha richiesto alcuna associazione particolare.
Nota: la sottosezione "Mapping utente query attributo" è rilevante solo per il flusso Autorità/Richiesta attributo SAML quando viene eseguito lo scambio di query attributo SAML. Questo flusso non fa parte del flusso SSO Federation.
Descrizione dell'immagine Edit_Partner_Screen.jpg
WLST
Per creare un nuovo partner SP SAML 2.0 con metadati utilizzando i comandi OAM WLST, eseguire le operazioni riportate di seguito.
-
Immettere l'ambiente WLST eseguendo:
$IAM_ORACLE_HOME/common/bin/wlst.sh
. -
Connettersi al server di amministrazione WLS:
connect()
. -
Passare alla diramazione Runtime dominio:
domainRuntime()
. -
Creare il partner SP SAML 2.0 con metadati che verranno denominati
acmeSP
in OAM:addSAML20SPFederationPartner("acmeSP", "/tmp/acme-sp-metadata-saml20.xml")
. -
Per impostazione predefinita, il nuovo partner SP è configurato per:
-
Usa indirizzo e-mail come formato
NameID
-
Utilizzare l'attributo utente LDAP di posta come valore
NameID
-
Non cifrare l'asserzione
-
Utilizzare HTTP-POST come autenticazione risposta SSO predefinita
-
-
Uscire dall'ambiente WLST:
exit()
.
SAML 2.0 senza metadati
Console di amministrazione di OAM
Per creare un nuovo partner SP SAML 2.0 senza metadati, eseguire i passi riportati di seguito. Assicurarsi innanzitutto di disporre di tutti i dati del partner SP, quali certificati, identificativi SP e URL.
-
Andare alla console di amministrazione OAM:
http(s)://oam-admin-host:oam-adminport/oamconsole
. -
Passare a Identity Federation, Amministrazione provider di identità.
-
Fare clic sul pulsante Crea partner provider di servizi.
-
Nella schermata Crea:
-
Immettere un nome per il partner.
-
Selezionare SAML 2.0 come protocollo.
-
Selezionare Immetti manualmente.
-
Immettere l'emittente/ProviderID del partner SP.
-
Immettere l'URL del servizio consumer asserzioni per il partner SP specificato. Si tratta dell'URL in cui l'utente viene reindirizzato da IdP con l'asserzione SAML.
-
Se il partner supporta il protocollo di logout SAML 2.0:
-
Immettere l'URL della richiesta di logout SAML 2.0 in cui il partner può elaborare un messaggio
LogoutRequest
SAML 2.0. -
Immettere l'URL di risposta di logout SAML 2.0 in cui il partner può elaborare un messaggio
LogoutResponse
SAML 2.0.
-
-
Se il partner SP firma i messaggi SAML, caricare il file del certificato di firma:
-
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--)
-
o nel formato DER in cui il certificato è memorizzato nella codifica binaria
-
-
Se è necessario cifrare l'asserzione SAML e disporre di un certificato di cifratura per l'SP, caricare il file:
-
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--)
-
o nel formato DER in cui il certificato è memorizzato nella codifica binaria
-
-
-
Immettere la modalità di impostazione del valore NameID:
-
Se si seleziona Attributo area di memorizzazione ID utente, il valore
NameID
da impostare sull'attributo LDAP specificato nel campo accanto all'elenco a discesa. -
Se si seleziona Espressione, il valore
NameID
da impostare in base all'espressione specificata nel campo accanto all'elenco a discesa.
-
-
Selezionare il profilo attributo utilizzato per popolare l'asserzione SAML con gli attributi.
-
Fare clic su Salva.
Descrizione dell'immagine Create_Service_Provider_Screen.jpg
Dopo aver creato il partner, viene visualizzata la schermata Modifica partner con:
-
Le impostazioni impostate nella schermata precedente possono essere modificate
-
Viene visualizzata una sezione Impostazioni avanzate:
-
Abilita logout globale, che indica se OAM deve eseguire o meno lo scambio di logout SAML 2.0 con il partner nell'ambito del processo di logout.
-
Cifra asserzione: se l'asserzione inviata dal IdP deve essere cifrata utilizzando il certificato di cifratura dell'SP. Nota: l'SP deve supportare le asserzioni cifrate e il certificato di cifratura dell'SP deve essere presente nei metadati dell'SP SAML 2.0.
-
Associazione risposta SSO: modalità di invio dell'asserzione al provider di servizi, se il provider di servizi non ha richiesto alcuna associazione particolare.
-
Nota: la sottosezione "Mapping utente query attributo" è rilevante solo per il flusso Autorità/Richiesta attributo SAML quando viene eseguito lo scambio di query attributo SAML. Questo flusso non fa parte del flusso SSO Federation.
Descrizione dell'immagine Edit_Partner_withAdvOption_Screen.jpg
WLST
Per creare un nuovo partner SP SAML 2.0 senza metadati utilizzando i comandi OAM WLST, eseguire le operazioni riportate di seguito (assicurarsi innanzitutto di disporre di tutti i dati del partner SP, quali certificati, identificativi SP e URL):
-
Immettere l'ambiente WLST eseguendo:
$IAM_ORACLE_HOME/common/bin/wlst.sh
. -
Connettersi al server di amministrazione WLS:
connect()
. -
Passare alla diramazione Runtime dominio:
domainRuntime()
. -
Crea partner SP SAML 2.0 senza metadati che verranno denominati
acmeSP
in OAM:addSAML20SPFederationPartnerWithoutMetadata("acmeSP","https://sp.com", "https://sp.com/saml20/sso")
-
Per impostazione predefinita, il nuovo partner SP è configurato per:
-
Usa indirizzo e-mail come formato
NameID
-
Utilizzare l'attributo utente LDAP di posta come valore
NameID
-
Non cifrare l'asserzione
-
Non eseguire il logout
-
Utilizzare HTTP-POST come autenticazione risposta SSO predefinita
-
Usa profilo attributo fornitore di servizi predefinito
-
Nessun certificato caricato per questo partner SP
-
-
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.
-
Certificato di firma SAML
-
Certificato di cifratura SAML
-
Profilo attributi partner SP per un partner SP
-
Impostazioni
NameID
SAML -
Associazioni di richieste e risposte SSO SAML
-
Asserzione cifrata SAML 2.0
Si supponga di trovarsi già nell'ambiente WLST e di essere connessi mediante:
-
Immettere l'ambiente WLST eseguendo:
$IAM_ORACLE_HOME/common/bin/wlst.sh
. -
Connettersi al server di amministrazione WLS:
connect()
. -
Passare alla diramazione Runtime dominio:
domainRuntime()
.
Logout da SAML 2.0
Per abilitare il logout SAML 2.0 e specificare gli URL di logout SAML 2.0 del partner SP, eseguire le operazioni riportate di seguito.
-
Comando
configureSAML20Logout()
:configureSAML20Logout("acmeSP", "sp","true",saml20LogoutRequestURL="https://sp.com/saml20/logoutReq",saml20LogoutResponseURL="https://sp.com/saml20/logoutResp")
-
acmeSP
rappresenta il nome del partner creato in precedenza -
sp
indica il tipo di partner -
true indica che il logout da SAML 2.0 è abilitato
-
saml20LogoutRequestURL
fa riferimento all'endpoint del partner SP che può elaborare un messaggioLogoutRequest
SAML 2.0 -
saml20LogoutResponseURL
fa riferimento all'endpoint del partner SP che può elaborare un messaggioLogoutResponse
SAML 2.0
-
Per disabilitare il logout SAML 2.0 per il partner SP, eseguire le operazioni riportate di seguito.
-
Comando
configureSAML20Logout()
:configureSAML20Logout("acmeSP", "sp","false")
-
acmeSP
rappresenta il nome del partner creato in precedenza -
sp
indica il tipo di partner -
false indica che il logout da SAML 2.0 è abilitato
-
Certificati SAML
Sono disponibili vari comandi WLST per gestire i certificati di firma e cifratura:
-
getFederationPartnerSigningCert()
che stampa il certificato di firma del partner nel formato codificato Base64:getFederationPartnerSigningCert("acmeSP","sp")
-
acmeSP
rappresenta il nome del partner creato in precedenza -
sp
indica il tipo di partner
-
-
setFederationPartnerSigningCert()
che carica il file del certificato di firma passato come parametro alla configurazione del partner SP:setFederationPartnerSigningCert("acmeSP","sp", "/tmp/cert.file")
-
acmeSP
rappresenta il nome del partner creato in precedenza -
sp
indica il tipo di partner -
il terzo parametro indica la posizione nel file system del file contenente il certificato:
-
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--)
-
o nel formato DER in cui il certificato è memorizzato nella codifica binaria
-
-
-
deleteFederationPartnerSigningCert()
che rimuove il certificato di firma dalla voce del partner SP:deleteFederationPartnerSigningCert("acmeSP","sp")
-
acmeSP
rappresenta il nome del partner creato in precedenza -
sp
indica il tipo di partner -
i comandi
getFederationPartnerEncryptionCert()
,setFederationPartnerEncryptionCert()
edeleteFederationPartnerEncryptionCert()
sono simili a quelli sopra riportati, ad eccezione del fatto che gestiscono il certificato di cifratura del partner:-
getFederationPartnerEncryptionCert("acmeSP","sp")
-
setFederationPartnerEncryptionCert("acmeSP","sp", "/tmp/cert.file")
-
deleteFederationPartnerEncryptionCert("acmeSP","sp")
-
-
Profilo attributi partner SP
Per configurare il profilo attributo partner SP per un partner SP specifico, utilizzare i comandi riportati di seguito.
-
Per configurare un partner SP in modo che utilizzi un profilo attributo partner SP specifico, eseguire le operazioni riportate di seguito.
setSPPartnerAttributeProfile(partnerName, attrProfileID)
-
partnerName
è il nome utilizzato per creare il partner SP -
attrProfileID
è l'ID profilo attributo partner SP
-
-
Per elencare i profili attributo partner SP esistenti, eseguire:
listSPPartnerAttributeProfileIDs()
Associazioni di richieste e risposte SSO SAML
Per configurare le associazioni SAML per un partner SP specifico, utilizzare i comandi seguenti:
-
Per configurare il partner SP, eseguire:
configureSAMLBinding(partnerName, partnerType, binding, ssoResponseBinding="httppost")
-
partnerName
è il nome utilizzato per creare il partner SP -
partnerType
deve essere impostato susp
poiché il partner è un SP -
associazione: l'associazione per utilizzare
httppost
per l'associazione HTTPPOST ohttpredirect
per l'associazioneHTTPRedirect
per i messaggi AuthnRequest eLogoutRequest
/LogoutResponse
SAML 2.0. Solo SAML 2.0 -
ssoResponseBinding
: l'associazione da utilizzare per inviare di nuovo l'asserzione SAML all'SP;httppost
per l'associazione HTTP-POST o l'artifact per l'associazione dell'artifact
-
Impostazioni NameID SAML
Per configurare le impostazioni NameID
per un partner SP SAML, effettuare le operazioni riportate di seguito.
-
Usare il comando seguente:
setSPSAMLPartnerNameID(partnerName, nameIDFormat, nameIDValue="", customFormat="", nameIDValueComputed="false")
-
partnerName
è il nome utilizzato per creare il partner SP -
nameIDFormat
: i valori possibili sonoorafed-emailaddress
perurn:oasis:names:tc:SAML:1.1:nameidformat:emailAddress
-
orafed-x509
perurn:oasis:names:tc:SAML:1.1:nameidformat:X509SubjectName
-
orafed-winflowsnamequaliRer
perurn:oasis:names:tc:SAML:1.1:nameidformat:WinflowsDomainQualiRedName
-
orafed-kerberos
perurn:oasis:names:tc:SAML:2.0:nameidformat:Kerberos
-
orafed-transient
perurn:oasis:names:tc:SAML:2.0:nameidformat:transient
-
orafed-persistent
perurn:oasis:names:tc:SAML:2.0:nameidformat:persistent
-
orafed-unspecified
perurn:oasis:names:tc:SAML:1.1:nameidformat:unspecified
-
orafed-custom
per un formatoNameID
personalizzato specificato nel parametrocustomFormat
.
-
-
-
customFormat
contenente il formato da utilizzare, senameIDFormat
è stato impostato suorafedcustom
-
nameIDValueComputed
: true o false e indica se generare o menoNameID
da un hash diUserID
, senameIDFormat
è impostato suorafed-persistent
(solo SAML 2.0)
Asserzione cifrata SAML 2.0
Per configurare IdP per l'invio o la cifratura delle asserzioni SAML 2.0, eseguire i comandi riportati di seguito.
-
Per configurare IdP per cifrare l'asserzione SAML 2.0 per un partner SP, eseguire:
updatePartnerProperty(partnerName, "sp", "sendencryptedassertion", "true", "boolean") partnerName
è il nome utilizzato per creare il partner SP. -
Per configurare IdP per l'invio di un'asserzione SAML 2.0 semplice (predefinita), eseguire:
updatePartnerProperty(partnerName, "SP", "sendencryptedassertion", "false", "boolean")
partnerName
è il nome utilizzato per creare il partner SP
Esempi
I comandi riportati di seguito potrebbero essere utilizzati per aggiungere un partner SP senza metadati SAML 2.0:
addSAML20SPFederationPartnerWithoutMetadata("acmeSP","https://sp.com","https://sp.com/saml20/sso")configureSAML20Logout("acmeSP","sp","true",saml20LogoutRequestURL="https://sp.com/saml20/logoutReq",saml20LogoutResponseURL="https://sp.com/saml20/logoutResp")setFederationPartnerSigningCert("acmeSP","sp","/tmp/cert.file")setFederationPartnerEncryptionCert("acmeSP","sp","/tmp/cert.file")setSPSAMLPartnerNameID("acmeSP","orafedemailaddress",nameIDValue="$user.aZr.mail")
I comandi riportati di seguito potrebbero essere utilizzati per aggiungere un partner SP con metadati SAML 2.0 (in questo esempio viene utilizzato lo stile identità OAM predefinito):
addSAML20SPFederationPartner("acmeSP", "/tmp/acme-sp-metadata-saml20.xml") setSPSAMLPartnerNameID("acmeSP","orafedemailaddress", nameIDValue="$user.attr.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.
Creating SAML 2.0 SP Partners in OAM and IdP
F60926-01
September 2022
Copyright © 2022, Oracle and/or its affiliates.