Establir comunicacions de xarxa segures

Secure Network Communications (SNC) millora la seguretat de la vostra integració amb SAP xifrant Power Platform les dades entre una passarel·la de dades local i un sistema SAP. Aquest article us guia a través de la configuració de SNC com a prova de concepte.

Important

Els paràmetres i recomanacions presentats en aquest article no estan destinats a l'ús de producció. Consulteu el vostre equip de seguretat, les polítiques internes i el soci de Microsoft per obtenir orientació sobre la configuració de SNC en un entorn de producció.

Requisits previs

  1. Teniu una connexió SAP que utilitza el connector SAP ERP.
  2. Teniu accés a una instància de SAP que podeu reiniciar i administrar.
  3. La GUI de SAP està instal·lada i configurada.
  4. Estàs familiaritzat amb les tecnologies de clau pública i privada.
  5. OpenSSL està instal·lat i configurat. Si teniu Git per a Windows, afegiu C:\Program Files\Git\usr\bin\ al vostre sistema PATH perquè pugueu utilitzar l'ordre openssl .

Instal·leu la biblioteca criptogràfica comuna de SAP

SAP Common Crypto Library permet que el SAP Connector for Microsoft .NET (NCo) xifri les comunicacions entre la passarel·la de dades local i SAP. Per extreure la biblioteca, necessiteu una utilitat de descompressió patentada anomenada SAPCAR.

Aconsegueix SAPCAR

  1. Aneu al Centre de descàrregues de programari SAP i inicieu sessió amb les vostres credencials SAP.
  2. Cerqueu SAPCAR i seleccioneu l'última versió no arxivada.
  3. Seleccioneu el vostre sistema operatiu.
  4. Baixeu el fitxer .EXE a C:\sap\SAR.

Obteniu la biblioteca criptogràfica comuna de SAP

  1. Al Centre de descàrregues de programari SAP, cerqueu "COMMONCRYPTOLIB" i seleccioneu la darrera versió.
  2. Seleccioneu el vostre sistema operatiu.
  3. Baixeu el fitxer . SAR amb la data de llançament més recent a C:\sap\SAR.

Extreu la biblioteca criptogràfica comuna de SAP

  1. Obriu PowerShell i aneu a C:\sap\SAR.

  2. Introduïu l'ordre següent, substituint-la xxxx pels vostres valors:

    .\SAPCAR_xxxx.EXE -xvf .\SAPCRYPTOLIBP_xxxx.SAR -R .\..\libs\sapcryptolib
    
  3. Confirmeu que sapgenpse.exe es troba al C:\sap\libs\sapcryptolib directori.

Generar certificats

Després d'instal·lar SAP Common Crypto Library, genera certificats per establir confiança i xifrat entre la teva passarel·la de dades local i el sistema SAP.

Advertiment

Aquest mètode és només per a demostracions i no es recomana per a sistemes de producció. Per als sistemes de producció, consulteu la vostra guia interna de PKI o l'equip de seguretat.

En aquest exemple, estructura els teus certificats tal com es mostra en el diagrama següent. La CA arrel [O=Contoso, CN=CA arrel] signa el certificat de xifratge SNC [O=Contoso, CN=SNC] i els certificats d'usuari [O=Contoso, CN=UserIDs]. Aquest article se centra en la configuració dels certificats CA i SNC arrel.

Diagrama que mostra el flux de certificats des de la CA arrel fins al certificat de xifratge, el certificat de signatura i els identificadors d'usuari.

Crear certificats

  1. Configureu l'estructura de carpetes:

    mkdir rootCA
    mkdir sncCert
    
    # Create the necessary serial and index files if they don't exist
    if (-Not (Test-Path "rootCA\index.txt")) { New-Item -Path "rootCA\index.txt" -ItemType File }
    if (-Not (Test-Path "rootCA\serial")) { Set-Content -Path "rootCA\serial" -Value "01" }
    
  2. Generar una CA arrel:

    openssl genpkey -algorithm RSA -out rootCA/ca.key.pem -pkeyopt rsa_keygen_bits:2048
    openssl req -x509 -new -key rootCA/ca.key.pem -days 7305 -sha256 -extensions v3_ca -out rootCA/ca.cert.pem -subj "/O=Contoso/CN=Root CA"
    
  3. Genera el certificat SNC:

    openssl genrsa -out sncCert/snc.key.pem 2048
    openssl req -key sncCert/snc.key.pem -new -sha256 -out sncCert/snc.csr.pem -subj "/O=Contoso/CN=SNC"
    
  4. Creeu un fitxer de configuració OpenSSL, sncCert/extensions.cnf per signar:

    [ v3_leaf ]
    subjectKeyIdentifier = hash
    authorityKeyIdentifier = keyid,issuer
    basicConstraints = critical,CA:false
    keyUsage = critical,digitalSignature,keyEncipherment,dataEncipherment
    extendedKeyUsage = clientAuth,emailProtection
    
  5. Signa el certificat SNC utilitzant la Root CA:

    openssl x509 -req `
       -in sncCert/snc.csr.pem `
       -CA rootCA/ca.cert.pem `
       -CAkey rootCA/ca.key.pem `
       -CAcreateserial `
       -out sncCert/snc.cert.pem `
       -days 3650 `
       -sha256 `
       -extfile sncCert\extensions.cnf `
       -extensions v3_leaf
    

Crea un entorn personal i segur

Crea un entorn personal segur (PSE) per a la passarel·la de dades local. La biblioteca NCo cerca el certificat SNC dins del PSE.

  1. Creeu un contenidor PKCS#12:

    openssl pkcs12 -export -out snc.p12 -inkey sncCert\snc.key.pem -in sncCert\snc.cert.pem -certfile rootCA\ca.cert.pem
    
  2. Creeu la variable d'entorn SECUDIR:

    1. Obriu Propietats del sistema: a l'Explorador de fitxers, feu clic amb el botó dret a Aquest ordinador i seleccioneu Propietats>Configuració avançada del sistema.
    2. Seleccioneu Variables d'entorn.
    3. A Variables del sistema, seleccioneu Crea.
    4. Definiu el nom de la variable a SECUDIR.
    5. Configura el valor a C:\sapsecudir (crea aquest directori si no existeix).
    6. Seleccioneu D'acord.
    7. Reinicia la teva sessió de PowerShell per captar aquesta nova variable d'entorn.
  3. Importar el contenidor PKCS#12 a un PSE:

    C:\sap\libs\sapcryptolib\sapgenpse.exe import_p12 -p SAPSNCSKERB.pse C:\pki-certs\snc.p12
    

Configurar SAP per a SNC

  1. Inicieu sessió a la GUI de SAP.

  2. Aneu al codi SNC0 de transacció.

  3. Introduïu E com a àrea de treball.

  4. Seleccioneu Nova entrada a la barra superior i empleneu la informació requerida.

    Captura de pantalla de la GUI de SAP que mostra la llista de control d'accés per a sistemes.

  5. Seleccioneu Desa.

  6. Torneu a la pantalla d'inici de SAP GUI.

  7. Aneu al codi RZ10 de transacció.

  8. Definiu aquests paràmetres de perfil:

    snc/accept_insecure_cpic: 1
    snc/accept_insecure_gui: 1
    snc/accept_insecure_rfc: 1
    snc/enable: 1
    snc/extid_login_diag: 1
    snc/extid_login_rfc: 1
    snc/gssapi_lib: $(SAPCRYPTOLIB)
    snc/identity/as: p:CN=ID3, O=Contoso
    snc/permit_insecure_start: 1
    snc/data_protection/max: 3```
    
    
  9. Deseu els paràmetres del perfil i reinicieu el vostre sistema SAP.

Intercanvi de certificats entre SAP i la passarel·la de dades local

Heu d'intercanviar certificats entre la passarel·la de dades local i SAP per establir confiança.

Afegir el certificat SNC de passarel·la a SAP

  1. A la GUI de SAP, aneu al codi STRUST de transacció.
  2. Si SNC SAPCryptolib té una X vermella, feu-hi clic amb el botó dret i seleccioneu Crea.
  3. En cas contrari, feu doble clic a SNC SAPCryptolib i, a continuació, feu doble clic al vostre propi certificat.
  4. Seleccioneu Importa certificat i trieu el vostre sncCert\snc.cert.pem certificat públic.
  5. Seleccioneu Afegeix a la llista de certificats.

Afegir el certificat SAP SNC a la passarel·la de dades local

  1. A la GUI de SAP, aneu al codi STRUST de transacció.

  2. Feu doble clic a SNC SAPCryptolib i, a continuació, feu doble clic al vostre propi certificat.

  3. Exportar el certificat públic.

  4. Mou el certificat públic a l'equip de passarel·la (per exemple, C:\sap\contoso-public-key.crt).

  5. Importar el certificat al PSE de la passarel·la:

    C:\sap\libs\sapcryptolib\sapgenpse.exe maintain_pk -p SAPSNCSKERB.pse -v -a C:\pki-certs\sncCert\sapkerb.public.cert
    

Prova la connexió segura

Seguiu els passos per provar la connexió segura. Un cop hàgiu completat la prova correctament, ja esteu preparats per implementar SNC al vostre entorn de producció.

  1. Creeu un flux instantani Power Automate.

  2. Afegeix una SAP ERP Call Function acció.

  3. Afegiu els paràmetres SNC següents a la cadena de connexió SAP:

    {
    "AppServerHost": "xxx",
    "Client": "xx",
    "SystemNumber": "xx",
    "LogonType": "ApplicationServer",
    "SncLibraryPath": "C:\\sap\\libs\\sapcryptolib\\sapcrypto.dll",
    "SncMyName": "p:CN=SNC, O=Contoso",
    "SncPartnerName": "p:CN=ID3, O=Contoso",
    "SncQop": "Default",
    "UseSnc": "true",
    "SncSso": "Off"
    }```
    
    
  4. Proveu la connexió mitjançant la STFC_CONNECTION funció RFC.

    Captura de pantalla que mostra els resultats d'una prova en un Power Automate flux.

Important

Assegura't de gestionar de manera segura les claus privades i elimina-les quan completis aquesta configuració.

Pas següent

Configurar Microsoft Entra l'identificador amb certificats per a SSO