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:

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:

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:

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:

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:

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:

  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()

Elenco profili partner

Il comando WLST listFedPartnerProfiles() elenca tutti i profili partner attualmente presenti in OAM e visualizza:

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")

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:

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:

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.