Integrazione di Office 365 con i prerequisiti OAM e ID
Questo articolo mostra come integrare OAM (11.1.2.2.0 o versione successiva) come IdP con Office 365 per SSO Federation utilizzando il protocollo SAML 2.0.
L'integrazione riguarda:
-
Integrazione SSO di Browser Federation: questo è il flusso che l'utente esercita quando accede alle risorse www.office365.com tramite un browser:
-
www.office365.com richiede all'utente di immettere il proprio indirizzo di posta elettronica.
-
Il server rileva che Federation SSO deve essere utilizzato per tale dominio e avvia un flusso SSO Federation IdP
-
IdP esegue la verifica dell'utente, crea un'asserzione SAML e reindirizza l'utente a www.office365.com
-
www.office365.com concede l'accesso all'utente
-
Integrazione della posta ActiveSync: in questo flusso l'utente utilizza un'applicazione di posta configurata per Office 365
-
Quando viene avviata, l'applicazione di posta invia le credenziali dell'utente (indirizzo di posta elettronica e password IdP) a Office 365.
-
www.office365.com effettua una connessione diretta tramite SSL a IdP e utilizza il protocollo ECP SAML 2.0 per inviare un AuthnRequest SAML e le credenziali dell'utente tramite l'autenticazione Basic HTTPwww.office365.com
-
IdP convalida tali credenziali e restituisce un'asserzione SAML tramite il protocollo ECP.
-
Office 365 concede l'accesso all'applicazione di posta elettronica
È importante notare che l'integrazione con Office 365 per componenti non SAML 2.0 non funzionerà, ad esempio:
-
Clienti Lync
-
OWA: applicazioni mobile
Questo articolo si basa su
-
Test eseguito
-
L'articolo Microsoft relativo al supporto SAML 2.0 per Office 365 e, in particolare, i passi per l'elenco dei documenti tecnici necessari per configurare Office 365 (gestione degli utenti e creazione di trust federativa):
-
Blog di Microsoft
-
Documento tecnico che descrive come configurare Office 365
Panoramica
Per eseguire l'integrazione con Office 365 utilizzando il protocollo SAML 2.0, OAM deve essere configurato per utilizzare HTTPS/SSL come endpoint con i certificati SSL emessi da CA note (se è richiesta l'integrazione della posta ActiveSync). In caso contrario, Office 365 potrebbe non accettare i metadati SAML 2.0 di OAM durante la creazione del trust federativo.
Office 365 prevede che tutti i messaggi SAML siano firmati utilizzando l'algoritmo digest SHA-1. Pertanto, IdP deve essere configurato per utilizzare SHA-1, altrimenti Office 365 SP restituisce un errore se si utilizza SHA-256. Inoltre, Office 365 richiede che il certificato di firma dell'IdP sia incluso nell'asserzione SAML firmata; pertanto OAM deve essere configurato per includerlo in tutti i messaggi firmati in uscita per Office 365.
Se si utilizza l'autenticazione Basic HTTP in IdP (come richiesto per l'integrazione della posta ActiveSync), il dominio WebLogic in cui è in esecuzione OAM deve essere configurato per non convalidare l'autenticazione Basic HTTP per le risorse non protette.
Per stabilire la fiducia tra i due server federativi, devono essere recuperati i seguenti dati:
-
Metadati SAML 2.0 di Office 365 SP.
-
Poiché Office 365 non supporta ancora il consumo di metadati SAML 2.0, è necessario raccogliere le seguenti informazioni:
-
Certificato di firma OAM IdP in formato codificato Base64
-
Il valore dell'emittente OAM IdP
-
URL SSO e di logout OAM IdP
Infine, per poter stabilire la fiducia della Federazione, devono verificarsi le seguenti esigenze:
-
Per un determinato utente, sia Office 365 che la directory utilizzata da
-
OAM deve avere un account per tale utente
-
L'ID univoco globale utente (o
ImmutableId
) e l'indirizzo e-mail (oUserPrincipalName
) utilizzati nell'account Office 365 devono essere impostati nell'account utente in OAM -
Per l'integrazione della posta ActiveSync, l'identificativo nell'indirizzo di posta elettronica (o
UserPrincipalName
) utilizzato da Office 365 deve essere il nome utente utilizzato per l'autenticazione Basic HTTP in OAM
Abilitazione di SSL
Nota importante: il certificato SSL utilizzato per abilitare SSL per OAM deve essere stato emesso da CA note, poiché il server Office 365 tenta di stabilire una connessione diretta al server OAM per il caso d'uso ActiveSync.
Esistono diversi modi per abilitare SSL sugli endpoint pubblici per OAM:
-
Se un load balancer si trova accanto a OAM, è possibile abilitare/configurare SSL/HTTPS sul load balancer
-
Se OHS fa fronte a OAM, OHS è configurato per SSL
-
Se nessun componente si trova davanti a OAM, è possibile configurare il server WLS in cui è in esecuzione OAM per SSL/HTTPS
Dopo aver configurato il componente (Load balancer, OHS o WLS) per SSL, è necessario aggiornare la configurazione OAM in modo che faccia riferimento al nuovo endpoint come URL pubblico:
-
Andare alla console di amministrazione OAM:
http(s)://oam-admin- host:oam-admin-port/oamconsole
-
Passare a Configurazione, Impostazioni Access Manager
-
Impostare l'host del server OAM sul nome host dell'endpoint pubblico
-
Impostare Post server OAM sulla porta SSL dell'endpoint pubblico
-
Impostazione del protocollo del server OAM su https
-
Fare clic su Apply.
Descrizione dell'immagine Access_Manager_Settings.jpg
Nota: dopo aver apportato le modifiche, il recupero dei metadati SAML 2.0 OAM contiene i nuovi URL https
Autenticazione Basic HTTP
Per impostazione predefinita, se un browser invia credenziali di autenticazione Basic HTTP a OAM, il server WLS tenta di convalidarle prima di consentire l'elaborazione della richiesta da parte di OAM: ciò può causare errori di autenticazione, in particolare se il dominio WLS non è stato configurato con autenticatori LDAP WLS per ogni area di memorizzazione delle identità creata in OAM.
Nota: anche se il dominio WLS è stato configurato correttamente per avere un autenticatore LDAP WLS per ogni area di memorizzazione delle identità creata in OAM, vengono generate due operazioni di autenticazione, una per WLS e l'altra richiesta da OAM per creare una sessione OAM.
È possibile disabilitare la convalida automatica delle credenziali di autenticazione Basic HTTP inviate alle applicazioni non protette nel dominio WLS in cui è in esecuzione OAM. Per ulteriori informazioni, vedere la sezione "Informazioni sull'autenticazione BASIC con risorse non protette" del manuale Oracle Fusion Middleware Programming Security for Oracle WebLogic Server.
Per disabilitare la convalida automatica delle credenziali di autenticazione Basic HTTP inviate alle applicazioni non protette nel dominio WLS, eseguire le operazioni riportate di seguito.
-
Immettere l'ambiente WLST eseguendo:
$IAM_ORACLE_HOME/common/bin/wlst.sh
-
Connetti al server di amministrazione WLS:
connect()
-
Avvia una sessione di modifica:
edit()
startEdit()
-
Passare al nodo
SecurityConfiguration
:cd('SecurityConfiguration')
-
Passare al dominio (sostituire DOMAIN_NAME con il nome del dominio WLS in cui è installato OAM):
cd('DOMAIN_NAME')
-
Impostare l'impostazione
EnforceValidBasicAuthCredentials
su false per disabilitare la convalidaautomatic
delle credenziali di autenticazione Basic HTTP inviate ad applicazioni non protette:set('EnforceValidBasicAuthCredentials','false')
-
Salva e attiva le modifiche:
save()
activate()
-
Riavviare i server nel dominio WLS per rendere effettive le modifiche
Metadati, certificato ed emittente SAML 2.0
Per scaricare i metadati SAML 2.0 dal server SP di Office 365, effettuare le operazioni riportate di seguito.
-
Aprire un browser
-
Vai al servizio di pubblicazione dei metadati di Azure / Office 365:
https://nexus.microsoftonline-p.com/federationmetadata/saml20/federationmetadata.xml
-
Salvare i metadati localmente utilizzando il pulsante Salva con nome nel browser
Il certificato di firma OAM IdP deve essere fornito come stringa con codifica Base64 per i comandi Windows Powershell, come una singola stringa senza spazi o interruzioni di riga. Per recuperare il certificato di firma IdP OAM, eseguire le operazioni riportate di seguito per determinare la voce keyID
utilizzata per firmare i messaggi SAML in uscita.
-
Andare alla console di amministrazione OAM:
http(s)://oam-adminhost:oam-admin-port/oamconsole
-
Passare a Configurazione, Impostazioni federazione
-
Prendere nota dell'
keyID
della chiave di firma per le operazioni di firma SAML nel campo Chiave di firma.
Descrizione dell'immagine Federation_Settings.jpg
Eseguire i passi riportati di seguito per recuperare il certificato per la voce keyID
.
-
Aprire un browser
-
Andare al seguente URL (sostituire KEYENTRY_ID con il nome
keyID
recuperato nel passo precedente): -
Salvare il certificato in un file di testo.
-
Apri il file con il tuo editor di testo preferito
-
Il contenuto del file è simile al seguente:
-----BEGIN CERTIFICATE----- MIIB+DCCAWGgAwIBAgIBCjANBgkqhkiG9w0BAQQFADAhMR8wHQYDVQQDExZhZGMMHBjYy51cy5vcmFjbGUuY29tMB4XDTE0MDMwNDE5MjAzMloXDTI0MDMwMTE5MjAzMlowITEfMB0GA1UEAxMWYWRjMDBwY2MudXMub3JhY2xlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAkQOdZCmoOQRuxSvI/74bjnUPq7u7qiGbmaN1D5TB JaM+j5XRixEUI3pidaxlbykaraqVBMJpXJ6ua0QWectv6SdzuqcvH8C5el06NxTs fB6pcvxHGXVAbAvtGr2tOPSL+5HaFQoATpiY3HugTnJfjmHRfOqIo8nUMek6zCtv rKUCAwEAAaNAMD4wDAYDVR0TAQH/BAIwADAPBgNVHQ8BAf8EBQMDB9gAMB0GA DgQWBBQ/7yJbGCbbAnaLEi4ReLwLlvSxJTANBgkqhkiG9w0BAQQFAAOBgQBrMb2i6zcChhVM7a9VVgBr8xljBsPxVWCAYNUYaoyUj9VkD4CpFF9hVX0CpceoSBTiyMQp 3sg0FAYz1PGfjrq7uFEq9iTCwa5J/7k/VSOLKd3IDqzz7w0ZERksgp3OOqOct/wB/wQplaoMZLcRoInVUbGTBDMfqmW5iZ/wjpzItg== —–END CERTIFICATE—–
-
Rimuovere la prima riga
(-----BEGIN CERTIFICATE-----)
, rimuovere l'ultima riga(-----END CERTIFICATE-----)
e modificare il resto del file per rimuovere le interruzioni di riga. Il risultato deve essere un file a riga singola (il contenuto è stato abbreviato): - Salvare il file. Questa riga viene fornita come input per il comando Windows Powershell.
http://oam-runtime-host:oam-runtime-port/oamfed/idp/cert?id=<KEYENTRY_ID>
MIIB+DCCAWGgAwIBAgIBCjANBg....InVUbGTBDMfqmW5iZ/wjpzItg==
Eseguire i passi riportati di seguito per recuperare l'ID emittente/provider dell'IdP.
-
Andare alla console di amministrazione OAM:
http(s)://oam-admin-host:oam-admin-port/oamconsole
-
Passare a Configurazione, Impostazioni federazione
-
Prendere nota del valore dell'ID emittente/provider OAM nel campo ID provider
Descrizione dell'immagine Retrieve_IDP.jpg
Gli URL SSO e di logout OAM IdP sono (Nota: assicurarsi di disporre degli endpoint pubblici, ovvero degli URL utilizzati dall'utente finale):
-
URL SSO browser:
http(s)://oam-public-host:oam-publicport/oamfed/idp/samlv20
-
URL SSO ECP:
http(s)://oam-public-host:oam-publicport/oamfed/idp/soap
-
URL di logout:
http(s)://oam-public-host:oam-publicport/oamfed/idp/samlv20
In caso di dubbi, è possibile recuperare gli URL dai metadati IdP:
-
Aprire un browser
-
Vai a
http(s)://oam-public-host:oam-public-port/oamfed/idp/metadata
-
L'URL SSO del browser sarà l'attributo Location del file XML
Element EntityDescriptor , IDPSSODescriptor , SingleSignOnService for which the Binding attribute is set to urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect: <md:EntityDescriptor ...> ... <md:IDPSSODescriptor ...> ... <md:SingleSignOnService> Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTPRedirect" Location="https://acme.com/oamfed/idp/samlv20"/> ... </md:IDPSSODescriptor> ... </md:EntityDescriptor>
-
L'URL SSO ECP sarà l'attributo Location del file XML
Element EntityDescriptor , IDPSSODescriptor , SingleSignOnService for which the Binding attribute is set to urn:oasis:names:tc:SAML:2.0:bindings:SOAP: <md:EntityDescriptor ...> ... <md:IDPSSODescriptor ...> ... <md:SingleSignOnService> Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP"Location="https://acme.com/oamfed/idp/soap"/> ... </md:IDPSSODescriptor> ... </md:EntityDescriptor>
-
L'URL di logout sarà l'attributo Location del file XML
Element EntityDescriptor , IDPSSODescriptor , SingleLogoutService for which the Binding attribute is set to urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect: <md:EntityDescriptor ...> ... <md:IDPSSODescriptor ...> ... <md:SingleLogoutServiceBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTPRedirect" Location="https://acme.com/oamfed/idp/samlv20"ResponseLocation="https://acme.com/oamfed/idp/samlv20"/> ... </md:IDPSSODescriptor> ... </md:EntityDescriptor>
SHA-256 e SHA-1
Dopo aver impostato Federation tra OAM e Office 365, è necessario configurare OAM in modo che utilizzi SHA-1 per le firme per il partner SP di Office 365.
Certificato di firma OAM nei messaggi firma
Dopo aver impostato Federation tra OAM e Office 365, è necessario configurare OAM in modo che il server Federation includa il certificato di firma X.509 in tutti i messaggi SAML firmati in uscita per il partner SP di Office 365.
Account utente
Gli account utente in Office 365 e nella directory OAM devono essere sincronizzati per supportare i vari flussi federativi (SSO browser e ActiveSync):
-
Per un determinato utente, sia Office 365 che la directory utilizzata da OAM devono disporre di un account per tale utente
-
L'ID univoco globale utente (o
ImmutableId
) e l'indirizzo e-mail (oUserPrincipalName
) utilizzati nell'account Office 365 devono essere impostati nell'account utente in OAM -
Per l'integrazione della posta ActiveSync,
userID
(oImmutableId
) utilizzato da Office 365 deve essere il nome utente utilizzato per l'autenticazione Basic HTTP in OAM: -
L'identificativo nell'indirizzo di posta elettronica (o
UserPrincipalName
) è la parte dell'indirizzo di posta elettronica prima del carattere@
. Ad esempio, seUserPrincipalName
è alice.appleton@acme.com, l'identificativo èalice.appleton
-
L'identificativo è il nome utente dell'autenticazione Basic HTTP. Ad esempio
alice.appleton
-
L'attributo ID utente utilizzato nella configurazione dell'area di memorizzazione delle identità OAM per lo schema di autenticazione Basic HTTP OAM deve corrispondere al nome utente di autenticazione Basic HTTP in entrata. Ad esempio, l'attributo ID utente utilizzato nell'area di memorizzazione delle identità OAM per l'alice utente deve essere alice.appleton.
ImmutableId
ImmutableId
è un attributo utilizzato da Office 365 per fare riferimento in modo univoco a un utente. Anche se il record utente deve essere eliminato in un secondo momento, nessun altro utente creato successivamente deve essere in grado di avere lo stesso valore ImmutableId
.
Un ImmutableId
in genere è
-
Un identificativo univoco casuale (ad esempio 2848cfc7f6914af2a550c024bcbf0c6e)
-
Oppure un nome utente considerato univoco: nessun altro utente avrà lo stesso nome utente anche se l'utente originale è stato eliminato dal sistema.
UserPrincipalName
UserPrincipalName
(o UPN) è un identificativo che ha il formato di un indirizzo e-mail. Il nome di dominio dell'indirizzo di posta elettronica deve essere mappato al nome utilizzato nel dominio di Office 365.
Ad esempio, se Office 365 è stato configurato per il dominio acme.com per SSO Federation, tutti gli utenti con un indirizzo di posta elettronica simile a identiSer@acme.com potranno eseguire SSO Federation con IdP configurato per tale dominio Office 365.
ActiveSync Requisiti
In un flusso di posta ActiveSync:
-
Il server di posta di Office 365 effettua una connessione diretta su SSL a IdP e utilizza il protocollo ECP SAML 2.0 per inviare un AuthnRequest SAML e le credenziali dell'utente tramite l'autenticazione Basic HTTP
-
IdP convalida tali credenziali e restituisce un'asserzione SAML tramite il protocollo ECP.
-
Office 365 concede l'accesso all'applicazione di posta elettronica
In tale flusso l'utente:
-
Fornire il proprio indirizzo di posta elettronica a Office 365 (ad esempio alice.appleton@acme.com)
-
Office 365 utilizza l'identificativo prima del carattere '@' come nome utente di autenticazione Basic HTTP (ad esempio alice.appleton)
-
IdP deve essere in grado di convalidare le credenziali con il nome utente come identificativo nell'indirizzo di posta elettronica (ad esempio alice.appleton)
Requisiti nome utente
In base a quanto precede, i requisiti per l'autenticazione utente in IdP sono:
Browser |
Nome utente autenticazione |
Nome utente autenticazione di base HTTP all'indirizzo IdP |
---|---|---|
SSO Federation basato su browser | Qualunque | N/D |
SSO Federation basato su browser + ActiveSync ECP |
Qualunque | Identificativo nell'indirizzo e-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.
Integrating Office 365 with OAM and Id Pre-Requisites
F60937-01
September 2022
Copyright © 2022, Oracle and/or its affiliates.