Profili partner in OAM
In questo articolo viene illustrato il concetto di profilo partner nella configurazione OAM.
Durante qualsiasi operazione di runtime della federazione tra OAM (come IdP o SP) e i partner remoti, vengono valutate numerose proprietà di configurazione che influiscono sul modo in cui OAM esegue l'operazione.
Alcuni dei parametri di configurazione alla base dello scambio di protocolli sono specifici del partner con cui OAM sta interagendo (ad esempio, come deve essere popolato NameID se OAM agisce come SAML 2.0 IdP), mentre altri possono essere comuni a un gruppo di partner (ad esempio se firmare o meno le asserzioni SAML 2.0 quando OAM agisce come IdP).
Anziché disporre di ogni voce partner nella configurazione OAM contenente tutti i parametri OAM necessari per eseguire le operazioni di runtime della federazione, OAM utilizza un profilo partner che:
-
Contiene un set di impostazioni comuni a tutti i partner che fanno riferimento a tale profilo partner
-
È specifico per
-
Un tipo, IdP o SP
-
Un protocollo: SAML 2.0, SAML 1.1 o OpenID 2.0
-
Un profilo partner in OAM in genere contiene impostazioni di configurazione che in genere non vengono modificate spesso e che vengono considerate avanzate. Per le operazioni quotidiane, le capacità di amministrazione fornite nella console di amministrazione OAM o tramite i comandi WLST OAM sono sufficienti per la maggior parte dei casi.
Per i casi avanzati che richiedono modifiche alla configurazione, un amministratore può scegliere:
-
Aggiornare la voce di configurazione del partner, pertanto le modifiche verranno applicate solo al partner
-
In alternativa, aggiornare la voce Profilo partner in modo che le modifiche vengano applicate a tutti i partner associati al Profilo partner.
Nota importante: data la natura avanzata della configurazione, i profili partner possono essere gestiti solo tramite i comandi OAM WLST.
Profilo partner predefinito
OAM definisce i profili partner predefiniti che contengono le impostazioni predefinite per i rispettivi protocolli federativi e tipi di servizi. Le impostazioni predefinite sono personalizzate per i casi d'uso comuni rilevati oggi nelle distribuzioni di produzione e, di conseguenza, non è necessario modificarle ad eccezione di casi d'uso specifici.
Dopo l'installazione, nella configurazione OAM sono definiti i seguenti profili partner:
-
saml20-idp-partner-profile:
-
Protocollo: SAML 2.0
-
Tipo: profilo partner per i partner IdP
-
-
saml20-sp-partner-profile:
-
Protocollo: SAML 2.0
-
Tipo: profilo partner per partner SP
-
-
saml11-idp-partner-profile:
-
Protocollo: SAML 1.1
-
Tipo: profilo partner per i partner IdP
-
-
saml11-sp-partner-profile:
-
Protocollo: SAML 1.1
-
Tipo: profilo partner per partner SP
-
-
openid20-idp-partner-profile:
-
Protocollo: OpenID 2.0
-
Tipo: profilo partner per partner IdP/OP
-
-
openid20-sp-partner-profile:
-
Protocollo: OpenID 2.0
-
Tipo: profilo partner per partner SP/RP
-
Comandi WLST
Le impostazioni contenute in una voce del profilo partner sono considerate proprietà avanzate e, ad esempio, gestibili solo tramite i comandi OAM WLST, mentre le modifiche delle impostazioni di base o le operazioni quotidiane possono essere eseguite tramite la console di amministrazione OAM o i comandi OAM WLST.
Nelle sezioni successive viene illustrato come utilizzare i vari comandi del profilo partner WLST OAM per:
-
Elenca tutti i profili partner
-
Elenca i partner associati a un profilo partner specifico
-
Elenca il profilo partner utilizzato da un partner
-
Visualizza il contenuto di un profilo partner
-
Crea un nuovo profilo partner
-
Aggiorna profilo partner: in questo caso modificare l'algoritmo di hashing utilizzato nelle firme digitali nei messaggi firmati in uscita in SHA-256
-
Associa profilo partner a partner
-
Elimina un profilo partner
A volte è opportuno creare nuove voci profilo partner quando diversi partner dispongono di un set comune di casi d'uso che differiscono dalla configurazione definita nella voce profilo partner a cui sono associati. Anziché fare in modo che ogni partner esegua l'override di un'impostazione (ad esempio la firma dei messaggi mediante l'algoritmo digest SHA-256 anziché l'impostazione predefinita SHA-1 definita nelle relative voci di profilo partner), l'approccio migliore consiste nei seguenti elementi:
-
Creazione di un nuovo profilo partner eseguendo una copia del profilo partner attualmente utilizzato dal partner
-
Imposta il partner per utilizzare il nuovo profilo partner
-
Modifica il profilo partner
Per ulteriori informazioni sui comandi WLST OAM, fare riferimento alla documentazione Oracle.
Ambiente WLST
Supponiamo che tu sia già in ambiente WLST e connesso utilizzando:
- Immettere l'ambiente WLST eseguendo:
$IAM_ORACLE_HOME/common/bin/wlst.sh - Connetti al server di amministrazione WLS:
connect() - Passare alla diramazione Runtime dominio:
domainRuntime()
Elenco profili partner
Il comando WLST listFedPartnerProfiles() elenca tutti i profili partner attualmente presenti in OAM e visualizza:
-
Nome
-
Tipo (SP o IdP)
-
Versione protocollo: SAML 2.0, SAML 1.1 o OpenID 2.0
Ad esempio, un'esecuzione del comando visualizza quanto segue:
wls:/test_domain/domainRuntime> listFedPartnerProfiles()
Partner Profile ID | Type | Protocol Version saml20-sp-partner-profile | sp | saml20 saml20-idp-partner-profile | idp | saml20 saml11-sp-partner-profile | sp | saml11 saml11-idp-partner-profile | idp | saml11 openid20-sp-partner-profile | sp | openid20 openid20-idp-partner-profile | idp | openid20
Elenco di partner per un profilo partner specifico
Il comando listFedPartnersForProfile() elenca tutti i partner associati al profilo partner specificato come parametro.
Se si esegue il comando per visualizzare tutti i partner che fanno riferimento al profilo partner saml20-sp-partnerprofile (ovvero al profilo OOTB predefinito per i partner SP SAML 2.0), vengono visualizzati i seguenti elementi:
wls:/test_domain/domainRuntime> listFedPartnersForProfile("saml20-sp-partnerprofile")
-
adc00peq
-
Office365
-
ACME-ADFS
Elenco di profili partner per un partner specifico
Il comando getFedPartnerProfile() visualizza il profilo partner utilizzato dal partner e il tipo di partner specificato come parametri (il tipo di partner è idp o sp)
Se si esegue il comando per visualizzare il profilo partner a cui fa riferimento il partner SP ACMEADFS, viene visualizzato quanto segue:
wls:/test_domain/domainRuntime> getFedPartnerProfile("ACME-ADFS", "sp") saml20-sp-partner-profile
Visualizzazione del contenuto di un profilo partner
Il comando WLST displayFedPartnerProfile() visualizza sulla riga di comando le impostazioni definite nella voce specificata come parametro.
Se si esegue il comando per mostrare il profilo del partner, vengono visualizzati i seguenti elementi:
wls:/test_domain/domainRuntime> displayFedPartnerProfile("saml20-sp-partnerprofile") includecertinsignature=0 nameidqualifier= forceconsent=0 authnmethodmappings={urn%3Aoasis%3Anames%3Atc%3ASAML%3A2.0%3Aac%3Aclasses%3APasswordProtectedTransport=LDAPS1,OAM10gScheme-0,FAAuthScheme-1,BasicScheme-1,BasicFAScheme-1} sendsignedrequestquery=1 forceconsenturl= sendencryptednameid=0 sendsignedresponsequery=1 setconsentenabled=0 sessionaOributeforceauthn=0defaultauthnrequestnameidformat=orafed-emailaddress version=saml20 requesOimeout=2000 audiencerestrictionenabled=1 setconsentvalue= sendsignedresponsesoap=1 allowfederationcreation=1 sendsignedresponseassertionpost=0 reauthenticate=3600 description= sendaOribute=1defaultencryptionmethod=hOp://www.w3.org/2001/04/xmlenc#aes128-cbc requiresignedrequestquery=0 requiresignedresponsepost=0 audiencerestrictionvalue= sendsignedrequestsoap=1 sendsignedrequestpost=1 sendencryptedaOribute=0 partnerprofiletype=sp requiresignedresponsesoap=0 requiresignedrequestpost=0requiresignedresponsequery=0 partnerprofileid=saml20-sp-partner-profile sendsignedresponsepost=1 requiresignedrequestsoap=0 sendsignedassertion=1 sendsignedresponseassertionsoap=0 assertionvalidityinterval=300
Creazione di un nuovo profilo partner
In questa sezione viene illustrato come creare un nuovo profilo partner da un profilo esistente utilizzando il metodo createFedPartnerProfileFrom() utilizzato come argomenti:
-
Il nome del nuovo profilo partner
-
Nome del profilo partner da cui eseguire la copia
L'esecuzione del comando per creare un nuovo profilo partner SP SAML 2.0 basato su OOTB visualizza quanto segue:
wls:/test_domain/domainRuntime> createFedPartnerProfileFrom("new-saml20pp", "saml20-sp-partner-profile")
Esecuzione del comando riuscita.
Aggiornamento di un profilo partner
In questa sezione viene mostrato un esempio di comando di modifica della configurazione WLST che coinvolge un profilo partner. Come accennato in precedenza, abbiamo creato questo profilo partner per i partner per i quali SHA-256 deve essere utilizzato nelle firme digitali in uscita. Utilizzare il comando configureFedDigitalSignature() per configurare il nuovo profilo partner denominato new-saml20-pp per utilizzare SHA-256.
Il comando utilizza il nome del profilo partner, il tipo di profilo e l'algoritmo di hashing da utilizzare come parametri:
wls:/test_domain/domainRuntime>configureFedDigitalSignature(partnerProfile="new-saml20-pp", partnerType="sp", algorithm="SHA-256")
Esecuzione del comando riuscita.
Associazione di un partner a un profilo partner
Una volta creato (e configurato) il nuovo profilo partner, i partner esistenti possono essere associati ad esso.
Nell'esempio, sono elencati tre partner SP:
-
adc00peq
-
Office365
-
ACME-ADFS
Vogliamo che adc00peq e ACME-ADFS vengano trasferiti al nuovo profilo del partner. Utilizzare il comando setFedPartnerProfile() e specificare il partner, il relativo tipo e il nuovo profilo partner da utilizzare:
wls:/test_domain/domainRuntime> setFedPartnerProfile("adc00peq", "sp", "newsaml20-pp")
Esecuzione del comando riuscita.
wls:/test_domain/domainRuntime> setFedPartnerProfile("ACME-ADFS", "sp", "new-saml20-pp")
Esecuzione del comando riuscita.
L'elenco dei partner associati al nuovo profilo mostra adc00peq e ACMEADFS, mentre l'elenco dei partner al profilo saml20-sp-partner-profile mostra solo Office365:
wls:/test_domain/domainRuntime> listFedPartnersForProfile("new-saml20-pp")
adc00peq
ACME-ADFS
wls:/test_domain/domainRuntime> listFedPartnersForProfile("saml20-sp-partnerprofile")
Office365
Nell'esempio, IdP ora utilizza l'algoritmo digest SHA-256 per adc00peq e ACME-ADFS, mentre utilizza ancora SHA-1 per Office365
Eliminazione di un profilo partner
I profili partner possono essere eliminati tramite deleteFedPartnerProfile(), che assume il nome del profilo come parametro, ma prima di eseguire il comando è necessario assicurarsi che nessuna voce partner sia attualmente associata a questo profilo partner.
Se si tenta di eliminare il profilo partner new-saml20-pp mentre viene ancora fatto riferimento dai partner SP adc00peq e ACME-ADFS, il metodo restituisce un errore:
wls:/test_domain/domainRuntime> deleteFedPartnerProfile("new-saml20-pp")
Il profilo partner federazione è utilizzato da un partner
In primo luogo, è necessario ripristinare un altro profilo partner (saml20-sp-partner-profile in questo esempio) e quindi richiamare deleteFedPartnerProfile():
wls:/test_domain/domainRuntime> setFedPartnerProfile("adc00peq", "sp", "saml20-sp-partner-profile")
Esecuzione del comando riuscita.
wls:/test_domain/domainRuntime> setFedPartnerProfile("ACME-ADFS", "sp", "saml20-sp-partner-profile")
Esecuzione del comando riuscita.
wls:/test_domain/domainRuntime> deleteFedPartnerProfile("new-saml20-pp")
Esecuzione del comando riuscita.
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.