Microsoft Entra ID (amb certificats) - inici de sessió únic
Aquesta guia us guiarà a través de la configuració del connector perquè els usuaris puguin accedir a les dades SAP i executar RFC (abreviatura de Remove Function Call) utilitzant Microsoft Power Platform el seu Microsoft Entra ID per a l'autenticació. El procés consisteix a configurar certificats públics i privats per a una comunicació segura.
Important
Aquest article és només per configurar una prova de concepte. La configuració i les recomanacions no estan pensades per a ús de producció. Per obtenir més informació sobre aquest tema, consulteu l'equip de seguretat, les polítiques internes i el soci de Microsoft per obtenir més orientació.
Requisits previs
- Configurar la connexió SAP
- Configurar les comunicacions de xarxa segures
- Familiaritat amb les tecnologies de clau pública i privada.
Generació d'un certificat de signatura per emetre testimonis per als usuaris
Generem un exemple de certificat arrel autosignat similar als certificats proporcionats per una autoritat de certificació.
Creació d'una infraestructura de clau pública de demostració
Estendre la documentació de configuració de la comunicació de xarxa segura mitjançant la implementació de l'altra meitat de la nostra PKI de demostració (abreviatura d'infraestructura de clau pública).
Creeu l'estructura de carpetes.
cd C:\
mkdir pki-certs
cd C:\pki-certs\
mkdir signingUsersCert
mkdir userCerts
Creeu fitxers d'extensió per garantir que els nostres certificats es creïn amb les metadades i les restriccions correctes.
signingUsersCert/extensions.cnf
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = critical,CA:true,pathlen:0
keyUsage = cRLSign, keyCertSign
userCerts/extensions.cnf
basicConstraints=CA:FALSE
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid,issuer
keyUsage = digitalSignature, keyEncipherment
extendedKeyUsage = clientAuth
Crea els fitxers necessaris index.txt
per serial
fer un seguiment dels certificats signats.
# Create the necessary serial and index files if they don't exist
if (-Not (Test-Path "signingUsersCert\index.txt")) { New-Item -Path "signingUsersCert\index.txt" -ItemType File }
if (-Not (Test-Path "signingUsersCert\serial")) { Set-Content -Path "signingUsersCert\serial" -Value "0001" }
Generar el nostre certificat d'usuaris intermedis.
openssl genrsa -out signingUsersCert/users.key.pem 2048
# Create Certificate Signing Request
openssl req -new -key signingUsersCert/users.key.pem -sha256 -out signingUsersCert/users.csr.pem -subj "/O=Contoso/CN=Users Intermediate Cert"
# Sign the certificate with the rootCA cert.
openssl x509 -req -in signingUsersCert/users.csr.pem -days 3650 `
-CA rootCA/ca.cert.pem -CAkey rootCA/ca.key.pem `
-out signingUsersCert/users.cert.pem `
-extfile signingUsersCert/extensions.cnf -extensions v3_ca `
-CAserial rootCA/serial
Generació de certificats d'usuari:
Executeu el següent per generar i signar un certificat per a un usuari amb el nom d'usuari TESTUSER01
SAP.
# Create the private key.
openssl genrsa -out userCerts/TESTUSER01.key.pem 2048
# Generate the certificate signing request
openssl req -key userCerts/TESTUSER01.key.pem -new -sha256 -out userCerts/TESTUSER01.csr.pem -subj "/CN=TESTUSER01"
# Sign the certificate + add extensions with the intermediate cert.
openssl x509 -req -days 365 -in userCerts/TESTUSER01.csr.pem -sha256 `
-CA signingUsersCert/users.cert.pem -CAkey signingUsersCert/users.key.pem `
-out userCerts/TESTUSER01.cert.pem -extfile userCerts/extensions.cnf `
-CAserial signingUsersCert/serial
Nota
CN=TESTUSER01 hauria de ser el primer paràmetre.
Ara teniu un certificat arrel, un certificat SNC intermedi (abreviatura de Secure Network Communications), un certificat d'usuaris intermedi i un certificat per identificar el certificat d'usuari.
Verifiqueu la cadena amb l'ordre següent:
$ openssl verify -CAfile rootCA/ca.cert.pem -untrusted signingUsersCert/users.cert.pem userCerts/TESTUSER01.cert.pem
userCerts/TESTUSER01.cert.pem: OK
Afegir usuaris signant certificat + cadena de certificats a Botiga del Windows
Genera un fitxer .p12 a partir del certificat de signatura dels usuaris i la clau privada.
openssl pkcs12 -export -out user_signing_cert.p12 -inkey .\signingUsersCert\users.key.pem -in .\signingUsersCert\users.cert.pem
- Obriu el Gestor de certificats de Windows:
- Premeu
Win + R
, escriviucertlm.msc
i premeu Retorn.
- Premeu
- Importeu el certificat de CA arrel públic.
- Importa a
Trusted Root Certification Authorities
.
- Importa a
- Importar el certificat d'usuari + clau:
- Al gestor de certificats, aneu al magatzem de certificats adequat (per exemple, Personal).
- Feu clic amb el botó dret i seleccioneu
All Tasks > Import
. - Seguiu l'assistent per importar el
.p12
fitxer, assegurant-vos de marcar la clau com a exportable perquè l'OPDG (abreviatura de On Premises Data Gateway) pugui utilitzar-la per xifrar dades. - Feu clic amb el botó dret i
Users Intermediate Cert
seleccioneuAll Tasks>Manage Private Keys...
.
- Afegiu l'usuari
NT SERVICE\PBIEgwService
a la llista de persones que tenen permisos.
Comprovar el nom del subjecte del certificat al magatzem de certificats del Windows
Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object { $_.Subject -like "*Users Intermediate Cert*" } | Format-List -Property Subject
Assignació d'usuaris Entra ID a SAP
Podeu assignar certificats X.509 als usuaris explícitament, mitjançant regles o afegint un certificat intermedi d'usuari a SAP.
Assignació explícita de certificats X.509 als usuaris
Assigneu explícitament un nombre reduït d'usuaris d'Entra ID a usuaris de SAP.
Navegueu per la GUI de SAP fins al codi SM30
T.
Introduïu la taula VUSREXTID
i seleccioneu el botó de manteniment.
Seleccioneu l'opció DN
quan se us Type of ACL
demani.
Trieu New Entry
i introduïu CN=TESTUSER01@CONTOSO.COM
(substituint el contingut del vostre propi UPN) per a l'ID extern. Assegureu-vos que CN sigui el primer. Seleccioneu el vostre UPN per al camp de nom d'usuari; i últim Marqueu l'opció Activated
i deseu els resultats.
NO INCLOURE
p:
.
Assignació de certificats X.509 a usuaris mitjançant regles
Utilitzeu les regles de certificat per assignar fàcilment els usuaris de l'Entra ID als usuaris de SAP.
Assegureu-vos que el login/certificate_mapping_rulebased
paràmetre de perfil estigui definit en un valor actual de 1
.
El mètode no persisteix entre els reinicis.
A continuació, va crear la següent regla en codi t CERTRULE
Nota
Ara espereu 2 minuts per assegurar-vos que les connexions a la memòria cau a SAP han caducat. A continuació, torneu a provar la connexió. Si no, és possible que us trobeu amb l'error No suitable SAP user found for X.509-client certificate
.
Afegir un certificat intermedi d'usuari a SAP
Obriu el codi STRUST
t i feu doble clic a Afegeix STRUST
el certificat públic users.cert.pem al quadre.
- A SAP GUI, aneu al codi de transacció STRUST.
- Si "SNC SAPCryptolib" té una X vermella, feu clic amb el botó dret i seleccioneu "Crear".
- Feu doble clic a "SNC SAPCryptolib" i, a continuació, feu doble clic al vostre propi certificat.
- Selecciona "Importar certificat" i tria el teu
signingUsersCert\users.cert.pem
certificat públic. - Seleccioneu "Afegir a la llista de certificats".
Actualització del sistema SAP
Afegiu el SsoCertificateSubject
als paràmetres del sistema SAP.
"SsoCertificateSubject": "CN=Users Intermediate Cert, O=Contoso",
Activa també
"SncSso": "On"
Substituïu la connexió per una de nova que utilitzi Microsoft Entra ID (using certificates)
per iniciar sessió a SAP amb el vostre compte d'Entra ID.
Important
Suprimiu les claus temporals TESTUSER01 públiques i privades en completar aquest tutorial.
Important
Assegureu el maneig segur i l'eventual supressió de claus privades un cop finalitzada aquesta configuració per mantenir la integritat de la seguretat.
Més informació: Preguntes freqüents sobre la passarel·la de dades local | Microsoft Learn