Esercitazione: Integrazione dell'accesso Single Sign-On (SSO) di Microsoft Entra con SAP NetWeaver
Questa esercitazione descrive come integrare SAP NetWeaver con Microsoft Entra ID. Integrando SAP NetWeaver con Microsoft Entra ID, è possibile:
- Controllare in Microsoft Entra ID chi può accedere a SAP NetWeaver.
- Abilitare gli utenti per l'accesso automatico a SAP NetWeaver con gli account Microsoft Entra personali.
- Gestire gli account in un'unica posizione centrale.
Prerequisiti
Per iniziare, sono necessari gli elementi seguenti:
- Una sottoscrizione di Microsoft Entra. Se non si possiede una sottoscrizione, è possibile ottenere un account gratuito.
- Sottoscrizione di SAP NetWeaver abilitata per l'accesso Single Sign-On (SSO).
- SAP NetWeaver V7.20 o versione successiva
Descrizione dello scenario
- SAP NetWeaver supporta sia SAML (accesso SSO avviato da SP) che OAuth. In questa esercitazione viene configurato e testato l'accesso SSO di Microsoft Entra in un ambiente di test.
Nota
Dal momento che l'identificatore di questa applicazione è un valore stringa fisso, è possibile configurare una sola istanza in un solo tenant.
Nota
Configurare l'applicazione in SAML o in OAuth in base ai requisiti dell'organizzazione.
Aggiunta di SAP NetWeaver dalla raccolta
Per configurare l'integrazione di SAP NetWeaver in Microsoft Entra ID, è necessario aggiungere SAP NetWeaver dalla raccolta all'elenco di app SaaS gestite.
- Accedere all'Interfaccia di amministrazione di Microsoft Entra almeno come Amministratore applicazione cloud.
- Passare a Identità>Applicazioni>Applicazioni aziendali>Nuova applicazione.
- Nella sezione Aggiungi dalla raccolta digitare SAP NetWeaver nella casella di ricerca.
- Selezionare SAP NetWeaver nel pannello dei risultati e quindi aggiungere l'app. Attendere alcuni secondi che l'app venga aggiunta al tenant.
In alternativa, è anche possibile usare Configurazione guidata app aziendali. In questa procedura guidata è possibile aggiungere un'applicazione al tenant, aggiungere utenti/gruppi all'app, assegnare ruoli, nonché esaminare la configurazione dell'accesso SSO. Altre informazioni sulle procedure guidate di Microsoft 365.
Configurare e testare l'accesso SSO di Microsoft Entra per SAP NetWeaver
Configurare e testare l'accesso SSO di Microsoft Entra con SAP NetWeaver usando un utente di test di nome B.Simon. Per consentire il funzionamento dell'accesso Single Sign-On, è necessario stabilire una relazione di collegamento tra un utente di Microsoft Entra e l'utente correlato in SAP NetWeaver.
Per configurare e testare l'accesso SSO di Microsoft Entra con SAP NetWeaver, seguire questa procedura:
- Configurare l'accesso SSO di Microsoft Entra per consentire agli utenti di usare questa funzionalità.
- Creare un utente di test di Microsoft Entra per testare l'accesso Single Sign-On di Microsoft Entra con B.Simon.
- Assegnare l'utente di test di Microsoft Entra: per abilitare B.Simon all'uso dell'accesso Single Sign-On di Microsoft Entra.
- Configurare SAP NetWeaver con SAML: per configurare le impostazioni dell'accesso Single Sign-On sul lato applicazione.
- Creare l'utente di test di SAP NetWeaver per avere una controparte di B.Simon in SAP NetWeaver collegata alla rappresentazione dell'utente in Microsoft Entra.
- Testare l'accesso Single Sign-On: per verificare se la configurazione funziona.
- Configurare SAP NetWeaver per OAuth per configurare le impostazioni OAuth sul lato applicazione.
- Richiedere il token di accesso da Azure AD per usare Azure AD come provider di identità (IdP).
Configurare l'accesso Single Sign-On di Microsoft Entra
In questa sezione viene abilitato l'accesso Single Sign-On di Microsoft Entra.
Per configurare l'accesso Single Sign-On di Microsoft Entra con SAP NetWeaver, seguire questa procedura:
Aprire una nuova finestra del Web browser e accedere al sito aziendale di SAP NetWeaver come amministratore.
Assicurarsi che i servizi http e https siano attivi e che le porte appropriate siano assegnate nel codice di transazione SMICM.
Accedere al client aziendale del sistema SAP (T01) in cui è richiesto l'accesso SSO e attivare la gestione della sessione di sicurezza HTTP.
Passare al codice di transazione SICF_SESSIONS. Questo codice mostra tutti i parametri di profilo rilevanti con i valori correnti. L'aspetto è simile al seguente:
login/create_sso2_ticket = 2 login/accept_sso2_ticket = 1 login/ticketcache_entries_max = 1000 login/ticketcache_off = 0 login/ticket_only_by_https = 0 icf/set_HTTPonly_flag_on_cookies = 3 icf/user_recheck = 0 http/security_session_timeout = 1800 http/security_context_cache_size = 2500 rdisp/plugin_auto_logout = 1800 rdisp/autothtime = 60
Nota
Modificare i parametri indicati sopra in base alle esigenze dell'organizzazione. I valori precedenti sono solo a scopo illustrativo.
Se necessario, modificare i parametri nel profilo predefinito/dell'istanza per il sistema SAP e riavviare il sistema SAP.
Fare doppio clic sul client appropriato per abilitare la sessione di sicurezza HTTP.
Attivare i servizi SICF seguenti:
/sap/public/bc/sec/saml2 /sap/public/bc/sec/cdc_ext_service /sap/bc/webdynpro/sap/saml2 /sap/bc/webdynpro/sap/sec_diag_tool (This is only to enable / disable trace)
Passare al codice di transazione SAML2 nel client aziendale del sistema SAP [T01/122]. Verrà aperta un'interfaccia utente in un browser. In questo esempio si presuppone che il client aziendale SAP sia 122.
Fornire il nome utente e la password da immettere nell'interfaccia utente e fare clic su Edit (Modifica).
Sostituire Provider Name (Nome provider) T01122 con
http://T01122
e fare clic su Save (Salva).Nota
Per impostazione predefinita, il nome del provider è formato
<sid><client>
, ma Microsoft Entra ID prevede il nome nel formato , consigliando di mantenere il nome del<protocol>://<name>
provider perhttps://<sid><client>
consentire a più motori ABAP SAP NetWeaver di configurare in Microsoft Entra ID.Generazione dei metadati del provider di servizi: dopo aver configurato le impostazioni Provider locale e Provider attendibili nell'interfaccia utente SAML 2.0, il passaggio successivo consiste nel generare il file di metadati del provider di servizi ( che conterrà tutte le impostazioni, i contesti di autenticazione e altre configurazioni in SAP). Dopo aver generato questo file, caricare questo file in Microsoft Entra ID.
Passare alla scheda Local Provider (Provider locale).
Fare clic su Metadata (Metadati).
Salvare il file XML dei metadati nel computer e caricarlo nella sezione Configurazione SAML di base per inserire automaticamente i valori di Identificatore e URL di risposta nel portale di Azure.
Seguire questa procedura per abilitare l'accesso Single Sign-On di Microsoft Entra.
Accedere all'Interfaccia di amministrazione di Microsoft Entra almeno come Amministratore applicazione cloud.
Passare alla pagina di integrazione dell'applicazione SAP NetWeaver per applicazioni aziendali di Applicazioni>>di identità>, individuare la sezione Gestione e selezionare Single Sign-On.
Nella pagina Selezionare un metodo di accesso Single Sign-On selezionare SAML.
Nella pagina Configura l'accesso Single Sign-On con SAML fare clic sull'icona della matita per modificare le impostazioni di Configurazione SAML di base.
Nella sezione Configurazione SAML di base seguire questa procedura se si vuole configurare l'applicazione in modalità avviata da IDP:
Fare clic su Carica file di metadati per caricare il file di metadati del provider di servizi ottenuto in precedenza.
Fare clic su logo cartella per selezionare il file di metadati e fare quindi clic su Upload.
Al termine del caricamento del file di metadati, i valori di Identificatore e URL di risposta vengono inseriti automaticamente nella casella di testo della sezione Configurazione SAML di base, come illustrato di seguito:
Nella casella di testo URL accesso digitare un URL nel formato seguente:
https://<your company instance of SAP NetWeaver>
Nota
Alcuni clienti hanno rilevato un errore di un URL di risposta non corretto configurato per l'istanza. Se viene visualizzato un errore di questo tipo, usare questi comandi di PowerShell. Aggiornare prima gli URL di risposta nell'oggetto applicazione con l'URL di risposta, quindi aggiornare l'entità servizio. Usare Get-MgServicePrincipal per ottenere il valore dell'ID entità servizio.
$params = @{ web = @{ redirectUris = "<Your Correct Reply URL>" } } Update-MgApplication -ApplicationId "<Application ID>" -BodyParameter $params Update-MgServicePrincipal -ServicePrincipalId "<Service Principal ID>" -ReplyUrls "<Your Correct Reply URL>"
L'applicazione SAP NetWeaver prevede un formato specifico per le asserzioni SAML. È quindi necessario aggiungere mapping di attributi personalizzati alla configurazione degli attributi del token SAML. Lo screenshot seguente mostra l'elenco degli attributi predefiniti. Fare clic su Modifica per aprire la finestra di dialogo Attributi utente.
Nella sezione Attestazioni utente della finestra di dialogo Attributi utente configurare l'attributo del token SAML come mostrato nell'immagine precedente e seguire questa procedura:
Fare clic sull'icona Modifica per aprire la finestra di dialogo Gestisci attestazioni utente.
Nell'elenco Trasformazione selezionare ExtractMailPrefix().
Nell'elenco Parametro 1 selezionare user.userprincipalname.
Fare clic su Salva.
Nella sezione Certificato di firma SAML della pagina Configura l'accesso Single Sign-On con SAML individuare il file XML dei metadati della federazione e selezionare Scarica per scaricare il certificato e salvarlo nel computer.
Nella sezione Configura SAP NetWeaver copiare gli URL appropriati in base alle esigenze.
Creare un utente di test di Microsoft Entra
In questa sezione verrà creato un utente di test di nome B.Simon.
- Accedere all'interfaccia di amministrazione di Microsoft Entra almeno come Amministratore utenti.
- Passare a Identità>Utenti>Tutti gli utenti.
- Selezionare Nuovo utente>Crea nuovo utente nella parte superiore della schermata.
- In Proprietà utente seguire questa procedura:
- Nel campo Nome visualizzato inserire
B.Simon
. - Nel campo Nome entità utente, immettere username@companydomain.extension. Ad esempio:
B.Simon@contoso.com
. - Selezionare la casella di controllo Mostra password e quindi prendere nota del valore visualizzato nella casella Password.
- Selezionare Rivedi e crea.
- Nel campo Nome visualizzato inserire
- Seleziona Crea.
Assegnare l'utente di test di Microsoft Entra
In questa sezione si abiliterà B.Simon all'uso dell'accesso Single Sign-On concedendole l'accesso a SAP NetWeaver.
- Accedere all'Interfaccia di amministrazione di Microsoft Entra almeno come Amministratore applicazione cloud.
- Passare ad Applicazioni di identità>Applicazioni>aziendali>SAP NetWeaver.
- Nella pagina di panoramica dell'app individuare la sezione Gestione e selezionare Utenti e gruppi.
- Selezionare Aggiungi utente e quindi Utenti e gruppi nella finestra di dialogo Aggiungi assegnazione.
- Nella finestra di dialogo Utenti e gruppi selezionare B.Simon dall'elenco degli utenti e quindi fare clic sul pulsante Seleziona nella parte inferiore della schermata. Se si prevede che agli utenti venga assegnato un ruolo, è possibile selezionarlo nell'elenco a discesa Selezionare un ruolo. Se per questa app non è stato configurato alcun ruolo, il ruolo selezionato è "Accesso predefinito".
- Nella finestra di dialogo Aggiungi assegnazione fare clic sul pulsante Assegna.
Configurare SAP NetWeaver con SAML
Accedere al sistema SAP e passare al codice transazione SAML2. Verrà visualizzata una nuova finestra del browser con la schermata di configurazione SAML.
Per la configurazione dei punti finali per il provider di identità attendibile (Microsoft Entra ID) passare alla scheda Provider attendibili.
Premere Add (Aggiungi) e scegliere Upload Metadata File (Carica file di metadati) dal menu di scelta rapida.
Caricare il file di metadati scaricato.
Nella schermata successiva digitare il nome alias. Ad esempio, digitare
aadsts
e premere Avanti per continuare.Assicurarsi che il valore di Digest Algorithm (Algoritmo digest) sia SHA-256 e che non siano necessarie modifiche e premere Next (Avanti).
In Single Sign-On Endpoints (Endpoint Single Sign-On) selezionare HTTP POST e fare clic su Next (Avanti) per continuare.
In Single Logout Endpoints (Endpoint punto di disconnessione singolo) selezionare HTTPRedirect e fare clic su Next (Avanti) per continuare.
In Artifact Endpoints (Endpoint artefatto) premere Next (Avanti) per continuare.
In Authentication Requirements (Requisiti di autenticazione) fare clic su Finish (Fine).
Passare alla scheda Trusted Providers>Identity Federation (Provider attendibili > Federazione identità), nella parte inferiore dello schermo. Fare clic su Modifica.
Fare clic su Add (Aggiungi) sotto Identity Federation (Federazione identità), nella finestra inferiore.
Nella finestra popup selezionare Unspecified (Non specificato) in Supported NameID formats (Formati NameID supportati) e fare clic su OK.
Assegnare a User ID Source (Origine ID utente) il valore Assertion Attribute (Attributo di asserzione), a User ID mapping mode (Modalità di mapping ID utente) il valore Email (Posta elettronica) e a Assertion Attribute Name (Nome attributo di asserzione) il valore
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
.Si noti che i valori della modalità di mapping id utente e origine ID utente determinano il collegamento tra l'utente SAP e l'attestazione Microsoft Entra.
Scenario: mapping utente SAP a Microsoft Entra utente.
Screenshot dei dettagli di NameID in SAP.
Screenshot che indica le attestazioni obbligatorie da Microsoft Entra ID.
Scenario: Selezionare l'ID utente SAP in base all'indirizzo e-mail configurato in SU01. In questo caso l'ID posta elettronica deve essere configurato in SU01 per ogni utente che richiede l'accesso SSO.
Screenshot dei dettagli di NameID in SAP.
screenshot che indica le attestazioni obbligatorie da Microsoft Entra ID.
Fare clic su Save (Salva) e quindi su Enable (Abilita) per abilitare il provider di identità.
Quando richiesto, fare clic su OK.
Creare un utente di test di SAP NetWeaver
In questa sezione viene creato un utente di nome B.Simon in SAP NetWeaver. Collaborare con il team di esperti SAP interno o con il partner SAP dell'organizzazione per aggiungere gli utenti nella piattaforma SAP NetWeaver.
Testare l'accesso SSO
Dopo aver attivato l'ID Microsoft Entra del provider di identità, provare ad accedere all'URL seguente per controllare l'accesso SSO, assicurandosi che non venga visualizzata una richiesta di nome utente e password.
https://<sapurl>/sap/bc/bsp/sap/it00/default.htm
(oppure) usare l'URL seguente
https://<sapurl>/sap/bc/bsp/sap/it00/default.htm
Nota
Sostituire sapurl con il nome host SAP effettivo.
L'URL precedente dovrebbe consentire di visualizzare la schermata illustrata sotto. Se si è in grado di raggiungere la pagina seguente, la configurazione di Microsoft Entra SSO viene completata correttamente.
Se si verifica una richiesta di nome utente e password, è possibile diagnosticare il problema abilitando una traccia usando l'URL:
https://<sapurl>/sap/bc/webdynpro/sap/sec_diag_tool?sap-client=122&sap-language=EN#
Configurare SAP NetWeaver per OAuth
Il processo documentato da SAP è disponibile nel percorso: NetWeaver Gateway Service Enabling and OAuth 2.0 Scope Creation (Abilitazione del servizio Gateway NetWeaver e creazione dell'ambito OAuth 2.0)
Passare a SPRO e individuare la voce Activate and Maintain services (Attiva e gestisci i servizi).
In questo esempio si vuole connettere il servizio OData:
DAAG_MNGGRP
con OAuth all'accesso SSO di Microsoft Entra. Usare la ricerca del nome del servizio tecnico per il servizioDAAG_MNGGRP
e attivarlo se non è ancora attivo (cercare lo statogreen
nella scheda dei nodi ICF). Assicurarsi che l'alias di sistema (ovvero il sistema back-end connesso, in cui è in esecuzione il servizio) sia corretto.- Fare quindi clic sul pulsante OAuth sulla barra dei pulsanti in alto e assegnare
scope
(non modificare il nome predefinito visualizzato).
- Fare quindi clic sul pulsante OAuth sulla barra dei pulsanti in alto e assegnare
Per questo esempio, l'ambito è
DAAG_MNGGRP_001
. Viene generato dal nome del servizio aggiungendo automaticamente un numero. È possibile usare il report/IWFND/R_OAUTH_SCOPES
per modificare il nome dell'ambito o per crearlo manualmente.Nota
Il messaggio
soft state status is not supported
può essere ignorato perché non costituisce un problema.
Creare un utente del servizio per il client OAuth 2.0
OAuth2 usa un
service ID
per ottenere il token di accesso per l'utente finale per suo conto. La progettazione di OAuth prevede un'importante restrizione:OAuth 2.0 Client ID
deve essere identico al valore diusername
che il client OAuth 2.0 usa per l'accesso quando viene richiesto un token di accesso. Pertanto, per questo esempio si registrerà un client OAuth 2.0 con nome CLIENT1. Come prerequisito, un utente con lo stesso nome (CLIENT1) deve esistere nel sistema SAP e tale utente verrà configurato per essere usato dall'applicazione di riferimento.Durante la registrazione di un client OAuth si usato il
SAML Bearer Grant type
.Nota
Per altri dettagli, vedere la procedura di registrazione del client di OAuth 2.0 per il tipo di concessione bearer SAML disponibile qui.
Eseguire T-Code
SU01
per creare CLIENT1 utente comeSystem type
e assegnare la password. Salvare la password perché sarà necessario fornire le credenziali al programmatore dell'API, che deve salvarla con il nome utente nel codice chiamante. Non devono essere assegnati alcun profilo o ruolo.
Registrare il nuovo ID client OAuth 2.0 con la creazione guidata
Per registrare un nuovo client OAuth 2.0, avviare la transazione SOAUTH2. La transazione visualizzerà una panoramica sui client OAuth 2.0 già registrati. Scegliere Crea per avviare la procedura guidata per il nuovo client OAuth denominato come CLIENT1 in questo esempio.
Passare a T-Code: SOAUTH2 e Specificare la descrizione e quindi fare clic su Avanti.
Selezionare l'IDP SAML2 – Microsoft Entra ID già aggiunto dall'elenco a discesa e salvare.
Fare clic su Add (Aggiungi) sotto l'assegnazione dell'ambito per aggiungere l'ambito creato in precedenza:
DAAG_MNGGRP_001
Fare clic su finish (fine).
Richiedere il token di accesso da Azure AD
Per richiedere un token di accesso dal sistema SAP usando Azure Active Directory (Azure AD) come provider di identità (IdP), seguire questa procedura:
Passaggio 1: Registrare un'applicazione in Azure AD
- Accedere al portale di Azure: passare al portale di Azure in portal.azure.com.
- Registrare una nuova applicazione:
- Passare a "Azure Active Directory".
- Selezionare "Registrazioni app" > "Nuova registrazione".
- Compilare i dettagli dell'applicazione, ad esempio Nome, URI di reindirizzamento e così via.
- Fare clic su "Registra".
- Configurare le autorizzazioni API:
- Dopo la registrazione, passare a "Autorizzazioni API".
- Fare clic su "Aggiungi un'autorizzazione" e selezionare "API usate dall'organizzazione".
- Cercare il sistema SAP o l'API pertinente e aggiungere le autorizzazioni necessarie.
- Concedere il consenso amministratore per le autorizzazioni.
Passaggio 2: Creare un segreto client
- Passare all'applicazione registrata: passare a "Certificati e segreti".
- Creare un nuovo segreto client:
- Fare clic su "Nuovo segreto client".
- Specificare una descrizione e impostare un periodo di scadenza.
- Fare clic su "Aggiungi" e annotare il valore del segreto client perché sarà necessario per l'autenticazione.
Passaggio 3: Configurare il sistema SAP per l'integrazione di Azure AD
- Accedere a SAP Cloud Platform: accedere al pannello di controllo di SAP Cloud Platform.
- Configurare la configurazione dell'attendibilità:
- Passare a "Sicurezza" > "Configurazione attendibilità".
- Aggiungere Azure AD come IdP attendibile importando il codice XML dei metadati della federazione da Azure AD. Questa opzione è disponibile nella sezione "Endpoint" della registrazione dell'app Azure AD (in Documento metadati federazione).
- Configurare il client OAuth2:
- Nel sistema SAP configurare un client OAuth2 usando l'ID client e il segreto client ottenuti da Azure AD.
- Impostare l'endpoint del token e altri parametri OAuth2 pertinenti.
Passaggio 4: Richiedere il token di accesso
Suggerimento
Prendere in considerazione l'uso di Azure Gestione API per semplificare il processo di propagazione delle entità SAP per tutte le app client in Azure, Power Platform, M365 e altro ancora, in un'unica posizione, tra cui la memorizzazione nella cache dei token intelligenti, la gestione sicura dei token e le opzioni di governance, ad esempio la limitazione delle richieste. Altre informazioni sulla propagazione delle entità SAP con Azure Gestione API. Nel caso in cui SAP Business Technology Platform sia preferibile, vedere questo articolo.
Preparare la richiesta di token:
- Creare una richiesta di token usando i dettagli seguenti:
- Endpoint del token: si tratta in
https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token
genere di . - ID client: ID applicazione (client) da Azure AD.
- Segreto client: valore del segreto client di Azure AD.
- Ambito: ambiti obbligatori (ad esempio,
https://your-sap-system.com/.default
). - Tipo di concessione: usare
client_credentials
per l'autenticazione da server a server.
- Endpoint del token: si tratta in
- Creare una richiesta di token usando i dettagli seguenti:
Effettuare la richiesta di token:
- Usare uno strumento come Postman o uno script per inviare una richiesta POST all'endpoint del token.
- Richiesta di esempio (in cURL):
curl -X POST \ https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'client_id={client_id}&scope=https://your-sap-system.com/.default&client_secret={client_secret}&grant_type=client_credentials'
Estrarre il token di accesso:
- La risposta conterrà un token di accesso se la richiesta ha esito positivo. Usare questo token di accesso per autenticare le richieste API al sistema SAP.
Passaggio 5: Usare il token di accesso per le richieste API
- Includere il token di accesso nelle richieste API:
- Per ogni richiesta al sistema SAP, includere il token di accesso nell'intestazione
Authorization
. - Intestazione di esempio:
Authorization: Bearer {access_token}
- Per ogni richiesta al sistema SAP, includere il token di accesso nell'intestazione
Passaggi successivi
- Configurare Microsoft Entra SAP NetWeaver per applicare il controllo sessione che consente di proteggere in tempo reale l'esfiltrazione e l'infiltrazione dei dati sensibili dell'organizzazione. Il controllo sessione costituisce un'estensione dell'accesso condizionale. Informazioni su come applicare il controllo della sessione con Microsoft Defender for Cloud Apps.
- Configurare la propagazione delle entità SAP (OAuth2) usando Azure Gestione API per gestire e proteggere l'accesso ai sistemi SAP dalle app client in Azure, Power Platform, Microsoft 365 e altri. Altre informazioni sulla propagazione delle entità SAP con Azure Gestione API.