Självstudie: Microsoft Entra-integrering med enkel inloggning (SSO) med SAP NetWeaver
I den här självstudien lär du dig att integrera SAP NetWeaver med Microsoft Entra-ID. När du integrerar SAP NetWeaver med Microsoft Entra-ID kan du:
- Kontroll i Microsoft Entra-ID som har åtkomst till SAP NetWeaver.
- Gör så att dina användare automatiskt loggas in på SAP NetWeaver med sina Microsoft Entra-konton.
- Hantera dina konton på en central plats.
Förutsättningar
För att komma igång behöver du följande:
- En Microsoft Entra-prenumeration. Om du inte har en prenumeration kan du få ett kostnadsfritt konto.
- SAP NetWeaver-prenumeration med enkel inloggning (SSO) aktiverat.
- SAP NetWeaver V7.20 eller senare
Beskrivning av scenario
- SAP NetWeaver stöder både SAML (SP-initierad enkel inloggning) och OAuth. I den här självstudien konfigurerar och testar du Microsoft Entra SSO i en testmiljö.
Kommentar
Identifieraren för det här programmet är ett fast strängvärde så att endast en instans kan konfigureras i en klientorganisation.
Kommentar
Konfigurera programmet antingen i SAML eller i OAuth enligt organisationens krav.
Lägga till SAP NetWeaver från galleriet
För att konfigurera integreringen av SAP NetWeaver i Microsoft Entra-ID måste du lägga till SAP NetWeaver från galleriet i din lista över hanterade SaaS-appar.
- Logga in på administrationscentret för Microsoft Entra som minst molnprogramadministratör.
- Bläddra till Identity>Applications Enterprise-program>>Nytt program.
- I avsnittet Lägg till från galleriet skriver du SAP NetWeaver i sökrutan.
- Välj SAP NetWeaver från resultatpanelen och lägg sedan till appen. Vänta några sekunder medan appen läggs till i din klientorganisation.
Du kan också använda guiden Konfiguration av företagsappar. I den här guiden kan du lägga till ett program i din klientorganisation, lägga till användare/grupper i appen, tilldela roller samt gå igenom SSO-konfigurationen. Läs mer om Microsoft 365-guider.
Konfigurera och testa Microsoft Entra SSO för SAP NetWeaver
Konfigurera och testa Microsoft Entra SSO med SAP NetWeaver med hjälp av en testanvändare med namnet B.Simon. För att enkel inloggning ska fungera måste du upprätta en länkrelation mellan en Microsoft Entra-användare och den relaterade användaren i SAP NetWeaver.
Utför följande steg för att konfigurera och testa Microsoft Entra SSO med SAP NetWeaver:
- Konfigurera Enkel inloggning med Microsoft Entra så att användarna kan använda den här funktionen.
- Skapa en Microsoft Entra-testanvändare för att testa enkel inloggning med Microsoft Entra med B.Simon.
- Tilldela Microsoft Entra-testanvändaren för att göra det möjligt för B.Simon att använda enkel inloggning med Microsoft Entra.
- Konfigurera SAP NetWeaver med SAML för att konfigurera SSO-inställningarna på programsidan.
- Skapa SAP NetWeaver-testanvändare för att ha en motsvarighet till B.Simon i SAP NetWeaver som är länkad till Microsoft Entra-representationen av användaren.
- Testa enkel inloggning för att kontrollera om konfigurationen fungerar.
- Konfigurera SAP NetWeaver för OAuth för att konfigurera OAuth-inställningarna på programsidan.
- Begär åtkomsttoken från Azure AD för att använda Azure AD som identitetsprovider (IdP).
Konfigurera enkel inloggning med Microsoft Entra
I det här avsnittet aktiverar du enkel inloggning med Microsoft Entra.
Utför följande steg för att konfigurera enkel inloggning med Microsoft Entra med SAP NetWeaver:
Öppna ett nytt webbläsarfönster och logga in på din SAP NetWeaver-företagswebbplats som administratör
Se till att tjänsterna http och https är aktiva och att lämpliga portar tilldelas i transaktionskoden SMICM.
Logga in på affärsklienten för SAP System (T01), där enkel inloggning krävs och aktivera HANTERING av HTTP-säkerhetssessioner.
Gå till transaktionskod SICF_SESSIONS. Den visar alla relevanta profilparametrar med aktuella värden. De ser ut så här:-
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
Kommentar
Justera parametrarna ovan enligt organisationens krav. Parametrarna ovan anges här endast som indikation.
Justera vid behov parametrarna i instansen/standardprofilen för SAP-systemet och starta om SAP-systemet.
Dubbelklicka på relevant klient för att aktivera HTTP-säkerhetssession.
Aktivera nedan SICF-tjänsterna nedan:
/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)
Gå till transaktionskod SAML2 i SAP-systemets företagsklient [T01/122]. Ett användargränssnitt öppnas i en webbläsare. I det här exemplet antog vi att SAP-företagsklienten är 122.
Ange ditt användarnamn och lösenord som ska anges i användargränssnittet och klicka på Redigera.
Ersätt providernamn från T01122 till
http://T01122
och klicka på Spara.Kommentar
Som standard kommer providernamnet som
<sid><client>
format, men Microsoft Entra-ID förväntar sig namn i formatet<protocol>://<name>
, och rekommenderar att du behåller providernamnet såhttps://<sid><client>
att flera SAP NetWeaver ABAP-motorer kan konfigureras i Microsoft Entra-ID.Generera metadata för tjänstprovidern: – När vi är klara med att konfigurera inställningarna för lokal provider och betrodda providers i SAML 2.0-användargränssnittet är nästa steg att generera tjänstleverantörens metadatafil (som skulle innehålla alla inställningar, autentiseringskontexter och andra konfigurationer i SAP). När den här filen har genererats laddar du upp den här filen till Microsoft Entra-ID.
Gå till fliken Local Provider (Lokal provider).
Klicka på Metadata.
Spara den genererade XML-filen för metadata på datorn och ladda upp den i avsnittet Grundläggande SAML-konfiguration för att fylla i värdena identifierare och svars-URL automatiskt i Azure Portal.
Följ de här stegen för att aktivera Enkel inloggning i Microsoft Entra.
Logga in på administrationscentret för Microsoft Entra som minst molnprogramadministratör.
Bläddra till sidan för SAP NetWeaver-programintegrering av Identity>Applications>Enterprise-program>, leta upp avsnittet Hantera och välj Enkel inloggning.
På sidan Välj en metod för enkel inloggning väljer du SAML.
På sidan Konfigurera enkel inloggning med SAML klickar du på pennikonen för Grundläggande SAML-konfiguration för att redigera inställningarna.
I avsnittet Grundläggande SAML-konfiguration utför du följande steg om du vill konfigurera programmet i IDP-initierat läge:
Klicka på Ladda upp metadatafil för att ladda upp metadatafilen för tjänstleverantören, som du har fått tidigare.
Klicka på mappikonen för att välja metadatafilen och klicka på Ladda upp.
När metadatafilen har laddats upp fylls värdena för Identifierare och Svars-URL i automatiskt i textrutan i avsnittet Grundläggande SAML-konfiguration enligt följande:
I textrutan Inloggnings-URL skriver du in en URL med följande mönster:
https://<your company instance of SAP NetWeaver>
Kommentar
Vissa kunder har påträffat ett fel i en felaktig svars-URL som konfigurerats för deras instans. Om du får ett sådant fel använder du dessa PowerShell-kommandon. Uppdatera först svars-URL:erna i programobjektet med svars-URL:en och uppdatera sedan tjänstens huvudnamn. Använd Get-MgServicePrincipal för att hämta ID-värdet för tjänstens huvudnamn.
$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>"
SAP NetWeaver-programmet förväntar sig SAML-försäkran i ett visst format, vilket kräver att du lägger till anpassade attributmappningar i konfigurationen av SAML-tokenattribut. I följande skärmbild visas listan över standardattribut. Klicka på ikonenRedigera för att öppna dialogrutan Användarattribut.
I avsnittet Användaranspråk i dialogrutan Användarattribut konfigurerar du SAML-tokenattributet på det sätt som visas i bilden ovan och utför följande steg:
Öppna dialogrutan Hantera användaranspråk genom att klicka på redigeringsikonen.
Välj ExtractMailPrefix() i listan Transformering.
I listan Parameter 1 väljer du user.userprincipalname.
Klicka på Spara.
På sidan Konfigurera enkel inloggning med SAML går du till avsnittet SAML-signeringscertifikat och letar upp XML för federationsmetadata och väljer Ladda ned för att ladda ned certifikatet och spara det på datorn.
I avsnittet Konfigurera SAP NetWeaver kopierar du lämpliga URL:er baserat på dina behov.
Skapa en Microsoft Entra-testanvändare
I det här avsnittet skapar du en testanvändare med namnet B.Simon.
- Logga in på administrationscentret för Microsoft Entra som minst användaradministratör.
- Gå till Identitet>Användare>Alla användare.
- Välj Ny användare>Skapa ny användare överst på skärmen.
- Följ dessa steg i användaregenskaperna :
- I fältet Visningsnamn anger du
B.Simon
. - I fältet Användarens huvudnamn anger du username@companydomain.extension. Exempel:
B.Simon@contoso.com
- Markera kryssrutan Visa lösenord och skriv sedan ned det värde som visas i rutan Lösenord.
- Välj Granska + skapa.
- I fältet Visningsnamn anger du
- Välj Skapa.
Tilldela Microsoft Entra-testanvändaren
I det här avsnittet gör du det möjligt för B.Simon att använda enkel inloggning genom att ge åtkomst till SAP NetWeaver.
- Logga in på administrationscentret för Microsoft Entra som minst molnprogramadministratör.
- Bläddra till Identity>Applications Enterprise-program>>SAP NetWeaver.
- På appens översiktssida hittar du avsnittet Hantera och väljer Användare och grupper.
- Välj Lägg till användare och välj sedan Användare och grupper i dialogrutan Lägg till tilldelning .
- I dialogrutan Användare och grupper väljer du B.Simon i listan Användare och klickar sedan på knappen Välj längst ned på skärmen. Om du förväntar dig att en roll ska tilldelas till användarna kan du välja den i listrutan Välj en roll . Om ingen roll har konfigurerats för den här appen visas rollen "Standardåtkomst" markerad.
- I dialogrutan Lägg till tilldelning klickar du på knappen Tilldela.
Konfigurera SAP NetWeaver med SAML
Logga in på SAP-systemet och gå till transaktionskoden SAML2. Ett nytt webbläsarfönster öppnas med en skärm för konfiguration av SAML.
Om du vill konfigurera slutpunkter för betrodd identitetsprovider (Microsoft Entra-ID) går du till fliken Betrodda providers .
Tryck på Lägg till och välj Ladda upp metadatafil på snabbmenyn.
Ladda upp metadatafil som du har laddat ned.
På nästa skärm skriver du aliasnamnet. Skriv till exempel
aadsts
och tryck på Nästa för att fortsätta.Se till att din sammandragsalgoritm ska vara SHA-256 och att den inte kräver några ändringar och tryck på Nästa.
På Single Sign-On Endpoints (Slutpunkter för enkel inloggning) använder du HTTP POST och klickar på Nästa för att fortsätta.
På Single Logout Endpoints (Slutpunkter för enkel utloggning) använder du HTTP POST och klickar på Nästa för att fortsätta.
På Artifact Endpoints (Slutpunkter för artefakter) trycker du på Nästa för att fortsätta.
Vid Autentiseringskrav klickar du på Slutför.
Gå till fliken Trusted Provider (Betrodd provider)>Identitetsfederation (längst ned på skärmen). Klicka på Redigera.
Klicka på Lägg till under fliken Identitetsfederation (det nedre fönstret).
I popup-fönstret väljer du Ospecificerad från nameID-format som stöds och klickar på OK.
Ange värdet för användar-ID-källa som kontrollattribut, värdet för mappningsläge för användar-ID som E-post och Kontrollattributnamn som
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
.Observera att värden för mappningsläge för användar-ID :t källa och användar-ID avgör länken mellan SAP-användare och Microsoft Entra-anspråk.
Scenario: SAP-användare till Microsoft Entra-användarmappning.
Skärmbild med NameID-information från SAP.
Skärmbild som nämner obligatoriska anspråk från Microsoft Entra-ID.
Scenario: Välj SAP-användar-ID baserat på konfigurerad e-postadress i SU01. I det här fallet ska e-post-ID konfigureras i su01 för varje användare som behöver enkel inloggning.
Skärmbild med NameID-information från SAP.
skärmbild som nämner obligatoriska anspråk från Microsoft Entra-ID.
Klicka på Spara och klicka sedan på Aktivera för att aktivera identitetsprovider.
Klicka på OK när du uppmanas till detta.
Skapa SAP NetWeaver-testanvändare
I det här avsnittet skapar du en användare med namnet B.simon i SAP NetWeaver. Arbeta med ditt interna SAP-expertteam eller med din organisations SAP-partner för att lägga till användare i SAP NetWeaver-plattformen.
Testa enkel inloggning
När identitetsprovidern Microsoft Entra-ID har aktiverats kan du prova att komma åt webbadressen nedan för att kontrollera enkel inloggning, vilket säkerställer att det inte finns någon uppmaning om användarnamn och lösenord.
https://<sapurl>/sap/bc/bsp/sap/it00/default.htm
(eller) använd webbadressen nedan
https://<sapurl>/sap/bc/bsp/sap/it00/default.htm
Kommentar
Ersätt sapurl med själva SAP-värdnamnet.
Webbadressen ovan bör ta dig under den nämnda skärmen. Om du kan nå upp till sidan nedan är installationen av Enkel inloggning i Microsoft Entra klar.
Om ett användarnamn och en lösenordsprompt inträffar kan du diagnostisera problemet genom att aktivera en spårning med hjälp av URL:en:
https://<sapurl>/sap/bc/webdynpro/sap/sec_diag_tool?sap-client=122&sap-language=EN#
Konfigurera SAP NetWeaver för OAuth
SAP-dokumenterad process är tillgänglig på platsen: NetWeaver Gateway Service Enabling och OAuth 2.0 Scope Creation
Gå till SPRO och leta reda på Aktivera och underhålla tjänster.
I det här exemplet vill vi ansluta OData-tjänsten:
DAAG_MNGGRP
med OAuth till Microsoft Entra SSO. Använd den tekniska tjänstens namnsökning efter tjänstenDAAG_MNGGRP
och aktivera om den inte redan är aktiv (letagreen
efter status under fliken ICF-noder). Kontrollera att systemalias (det anslutna serverdelssystemet, där tjänsten faktiskt körs) är korrekt.- Klicka sedan på pushbutton OAuth i det övre knappfältet och tilldela
scope
(behåll standardnamnet som det erbjuds).
- Klicka sedan på pushbutton OAuth i det övre knappfältet och tilldela
I vårt exempel är
DAAG_MNGGRP_001
omfånget . Det genereras från tjänstnamnet genom att automatiskt lägga till ett tal. Rapporten/IWFND/R_OAUTH_SCOPES
kan användas för att ändra namnet på omfånget eller skapa manuellt.Kommentar
Meddelande
soft state status is not supported
– kan ignoreras, eftersom inga problem.
Skapa en tjänstanvändare för OAuth 2.0-klienten
OAuth2 använder en
service ID
för att hämta åtkomsttoken för slutanvändaren för dess räkning. Viktig begränsning av OAuth-design:OAuth 2.0 Client ID
måste vara identisk medusername
OAuth 2.0-klienten som används för inloggning när du begär en åtkomsttoken. Därför ska vi i vårt exempel registrera en OAuth 2.0-klient med namnet CLIENT1. Som en förutsättning måste en användare med samma namn (CLIENT1) finnas i SAP-systemet och den användare som vi konfigurerar för att användas av det refererade programmet.När du registrerar en OAuth-klient använder
SAML Bearer Grant type
vi .Kommentar
Mer information finns i OAuth 2.0-klientregistrering för SAML Bearer Grant Type här.
Kör T-Code
SU01
för att skapa användare CLIENT1 somSystem type
och tilldela lösenord. Spara lösenordet eftersom du måste ange autentiseringsuppgifterna för API-programmeraren, som ska spara det med användarnamnet i den anropande koden. Ingen profil eller roll ska tilldelas.
Registrera det nya OAuth 2.0-klient-ID:t med guiden skapa
Registrera en ny OAuth 2.0-klientstarttransaktion SOAUTH2. Transaktionen visar en översikt över de OAuth 2.0-klienter som redan har registrerats. Välj Skapa för att starta guiden för den nya OAuth-klienten med namnet som CLIENT1 i det här exemplet.
Gå till T-Code: SOAUTH2 och Ange beskrivningen och klicka sedan på nästa.
Välj det redan tillagda SAML2-ID:t – Microsoft Entra-ID i listrutan och spara.
Klicka på Lägg till under omfångstilldelning för att lägga till det tidigare skapade omfånget:
DAAG_MNGGRP_001
Klicka på Slutför.
Begära åtkomsttoken från Azure AD
Följ dessa steg för att begära en åtkomsttoken från SAP-systemet med Azure Active Directory (Azure AD) som identitetsprovider (IdP):
Steg 1: Registrera program i Azure AD
- Logga in på Azure Portal: Navigera till Azure Portal på portal.azure.com.
- Registrera ett nytt program:
- Gå till "Azure Active Directory".
- Välj "Appregistreringar" > "Ny registrering".
- Fyll i programinformationen, till exempel Namn, Omdirigerings-URI osv.
- Klicka på "Registrera".
- Konfigurera API-behörigheter:
- Efter registreringen navigerar du till "API-behörigheter".
- Klicka på "Lägg till en behörighet" och välj "API:er som min organisation använder".
- Sök efter SAP-systemet eller relevant API och lägg till nödvändiga behörigheter.
- Bevilja administratörsmedgivande för behörigheterna.
Steg 2: Skapa klienthemlighet
- Navigera till det registrerade programmet: Gå till "Certifikat och hemligheter".
- Skapa en ny klienthemlighet:
- Klicka på "Ny klienthemlighet".
- Ange en beskrivning och ange en förfalloperiod.
- Klicka på "Lägg till" och anteckna värdet för klienthemlighet eftersom det behövs för autentisering.
Steg 3: Konfigurera SAP-system för Azure AD-integrering
- Åtkomst till SAP Cloud Platform: Logga in på din SAP Cloud Platform Cockpit.
- Konfigurera förtroendekonfiguration:
- Gå till "Säkerhet" > "Förtroendekonfiguration".
- Lägg till Azure AD som en betrodd IdP genom att importera XML för federationsmetadata från Azure AD. Detta finns i avsnittet "Slutpunkter" i Azure AD-appregistreringen (under federationsmetadatadokument).
- Konfigurera OAuth2-klienten:
- I SAP-systemet konfigurerar du en OAuth2-klient med hjälp av klient-ID och klienthemlighet som hämtats från Azure AD.
- Ange tokenslutpunkten och andra relevanta OAuth2-parametrar.
Steg 4: Begär åtkomsttoken
Dricks
Överväg att använda Azure API Management för att effektivisera SAP Principal Propagation-processen för alla klientappar i Azure, Power Platform, M365 med mera, på en enda plats, inklusive cachelagring av smart token, säker tokenhantering och styrningsalternativ som begränsning av begäranden. Läs mer om SAP Principal Propagation med Azure API Management. Om SAP Business Technology Platform föredras kan du läsa den här artikeln.
Förbered tokenbegäran:
- Skapa en tokenbegäran med hjälp av följande information:
- Tokenslutpunkt: Detta är vanligtvis
https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token
. - Klient-ID: Program-ID (klient)-ID från Azure AD.
- Klienthemlighet: Klienthemlighetsvärdet från Azure AD.
- Omfång: De nödvändiga omfången (t.ex.
https://your-sap-system.com/.default
). - Beviljandetyp: Används
client_credentials
för server-till-server-autentisering.
- Tokenslutpunkt: Detta är vanligtvis
- Skapa en tokenbegäran med hjälp av följande information:
Gör tokenbegäran:
- Använd ett verktyg som Postman eller ett skript för att skicka en POST-begäran till tokenslutpunkten.
- Exempelbegäran (i 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'
Extrahera åtkomsttoken:
- Svaret innehåller en åtkomsttoken om begäran lyckas. Använd den här åtkomsttoken för att autentisera API-begäranden till SAP-systemet.
Steg 5: Använd åtkomsttoken för API-begäranden
- Inkludera åtkomsttoken i API-begäranden:
- För varje begäran till SAP-systemet inkluderar du åtkomsttoken i
Authorization
huvudet. - Exempelrubrik:
Authorization: Bearer {access_token}
- För varje begäran till SAP-systemet inkluderar du åtkomsttoken i
Nästa steg
- Konfigurera Microsoft Entra SAP NetWeaver för att framtvinga sessionskontroll, vilket skyddar exfiltrering och infiltration av organisationens känsliga data i realtid. Sessionskontrollen utökas från villkorsstyrd åtkomst. Lär dig hur du framtvingar sessionskontroll med Microsoft Defender för molnet Apps.
- Konfigurera SAP Principal Propagation (OAuth2) med Azure API Management för att styra och skydda åtkomsten till SAP-system från klientappar i Azure, Power Platform, Microsoft 365 med flera. Läs mer om SAP Principal Propagation med Azure API Management.