Sdílet prostřednictvím


Nastavení zabezpečené síťové komunikace

Zabezpečená síťová komunikace (SNC) zvyšuje zabezpečení integrace SAP s Power Platform šifrováním dat mezi místní bránou dat a systémem SAP. Tento článek vás provede nastavením SNC jako důkazu konceptu.

Důležité

Nastavení a doporučení uvedená v tomto článku nejsou určena pro produkční použití. Poraďte se se svým bezpečnostním týmem, interními zásadami a partnerem Microsoft, který vám poradí s nastavením SNC v produkčním prostředí.

Předpoklady

  1. Máte připojení SAP, které používá konektor SAP ERP.
  2. Máte přístup k instanci SAP, kterou můžete restartovat a spravovat.
  3. Grafické uživatelské rozhraní SAP je nainstalované a nastavené.
  4. Jste obeznámeni s technologiemi veřejného a privátního klíče.
  5. OpenSSL je nainstalované a nastavené. Pokud máte Git pro Windows, přidejte C:\Program Files\Git\usr\bin\ do systému PATH, abyste mohli příkaz openssl použít.

Instalace společné kryptografické knihovny SAP

Společná kryptografická knihovna SAP umožňuje konektoru SAP pro Microsoft .NET (NCo) šifrovat komunikaci mezi místní bránou dat a SAP. Chcete-li extrahovat knihovnu, potřebujete proprietární dekompresní nástroj s názvem SAPCAR.

Získání SAPCAR

  1. Přejděte do Centra pro stahování softwaru SAP a přihlaste se pomocí přihlašovacích údajů SAP.
  2. Vyhledejte SAPCAR a vyberte nejnovější nearchivovanou verzi.
  3. Vyberte svůj operační systém.
  4. Stáhněte soubor .EXE do C:\sap\SAR.

Získání společné kryptografické knihovny SAP

  1. V centru stahování softwaru SAP vyhledejte „COMMONCRYPTOLIB“ a vyberte nejnovější verzi.
  2. Vyberte svůj operační systém.
  3. Stáhněte si soubor . SAR s nejnovějším datem vydání do C:\sap\SAR.

Extrahování společné kryptografické knihovny SAP

  1. Otevřete PowerShell a přejděte na C:\sap\SAR.

  2. Zadejte následující příkaz a nahraďte xxxx svými hodnotami:

    .\SAPCAR_xxxx.EXE -xvf .\SAPCRYPTOLIBP_xxxx.SAR -R .\..\libs\sapcryptolib
    
  3. Potvrďte, že sapgenpse.exe je v adresáři C:\sap\libs\sapcryptolib.

Vygenerování certifikátů

Teď, když jste nainstalovali společnou kryptografickou knihovnu SAP, můžete vygenerovat certifikáty pro navázání důvěry a šifrování mezi místní bránou dat a systémem SAP.

Upozorňující

Tato metoda slouží pouze pro demonstrační účely a nedoporučuje se pro produkční systémy. V případě produkčních systémů se obraťte na interní pokyny k infrastruktuře veřejných klíčů nebo bezpečnostní tým.

V tomto příkladu jsou naše certifikáty strukturované, jak je znázorněno v následujícím diagramu. Kořenová certifikační autorita [O=Contoso, CN=Root CA] podepisuje šifrovací certifikát SNC [O=Contoso, CN=SNC] a uživatelské certifikáty [O=Contoso, CN=UserIDs]. Tento článek se zaměřuje na nastavení kořenové certifikační autority a certifikátů SNC.

Diagram znázorňující tok certifikátů z kořenové certifikační autority do šifrovacího certifikátu, podpisového certifikátu a ID uživatele.

Vytváření certifikátů

  1. Nastavení struktury složky:

    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. Vygenerování kořenové certifikační autority:

    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. Vygenerování certifikátu 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. Vytvořte konfigurační soubor OpenSSL, sncCert/extensions.cnf, pro podepisování:

    subjectKeyIdentifier = hash
    authorityKeyIdentifier = keyid,issuer
    basicConstraints = critical,CA:false
    keyUsage = critical,digitalSignature,keyEncipherment,dataEncipherment
    extendedKeyUsage = clientAuth,emailProtection
    
  5. Podepište certifikát SNC kořenovou certifikační autoritou:

    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
    

Vytvoření osobního bezpečného prostředí

Vytvořte osobní zabezpečené prostředí (PSE) pro místní bránu dat. Knihovna NCo hledá certifikát SNC uvnitř PSE.

  1. Vytvoření kontejneru PKCS#12:

    openssl pkcs12 -export -out snc.p12 -inkey sncCert\snc.key.pem -in sncCert\snc.cert.pem -certfile rootCA\ca.cert.pem
    
  2. Vytvořte proměnnou prostředí SECUDIR:

    1. Otevřete Vlastnosti systému: V Průzkumníku souborů klikněte pravým tlačítkem na Tento počítač a poté vyberte Vlastnosti>Upřesnit nastavení systému.
    2. Vybrat Proměnné prostředí.
    3. V části Systémové proměnné vyberte Nový.
    4. Nastavte název proměnné na SECUDIR.
    5. Nastavte hodnotu na C:\sapsecudir.
    6. Vyberte OK.
  3. Importujte kontejner PKCS#12 do PSE:

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

Nastavení SAP pro SNC

  1. Přihlaste se k SAP GUI.

  2. Přejděte na kód transakce SNC0.

  3. Zadejte E jako pracovní oblast.

  4. Na horní liště vyberte Nový záznam a vyplňte požadované informace.

    Snímek obrazovky SAP GUI zobrazující seznam řízení přístupu pro systémy.

  5. Vyberte Uložit.

  6. Vraťte se na úvodní stránku SAP GUI.

  7. Přejděte na kód transakce RZ10.

  8. Nastavte tyto parametry profilu:

    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. Uložte parametry profilu a restartujte systém SAP.

Výměna certifikátů mezi SAP a místní bránou dat

Pokud chcete vytvořit vztah důvěry, musíte si vyměňovat certifikáty mezi místní bránou dat a SAP.

Přidání certifikátu SNC brány do SAP

  1. V SAP GUI přejděte na kód transakce STRUST.
  2. Pokud má SNC SAPCryptolib červené X, klikněte na něj pravým tlačítkem a vyberte Vytvořit.
  3. V opačném případě klikněte dvakrát na SNC SAPCryptolib a potom dvakrát klikněte na Vlastní certifikát.
  4. Vyberte Importovat certifikát a zvolte svůj veřejný certifikát sncCert\snc.cert.pem.
  5. Vyberte Přidat do seznamu certifikátů.

Přidání certifikátu SAP SNC do místní brány dat

  1. V SAP GUI přejděte na kód transakce STRUST.

  2. Klikněte dvakrát na SNC SAPCryptolib a potom dvakrát klikněte na Vlastní certifikát.

  3. Exportujte veřejný certifikát.

  4. Přesuňte veřejný certifikát do počítače brány (například C:\sap\contoso-public-key.crt).

  5. Importujte certifikát do PSE vaší brány:

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

Otestování zabezpečeného připojení

Postupujte podle pokynů a otestujte zabezpečené připojení. Po úspěšném dokončení testu jste připraveni implementovat SNC v produkčním prostředí.

  1. Vytvořte okamžitý tok v Power Automate.

  2. Přidejte akci SAP ERP Call Function.

  3. Do řetězce Připojení SAP přidejte následující parametry SNC:

    {
    "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. Otestujte připojení pomocí funkce STFC_CONNECTION RFC.

    Snímek obrazovky zobrazující výsledky testu v toku Power Automate.

Důležité

Ujistěte se, že s privátními klíči zacházíte bezpečně, a po dokončení tohoto nastavení je odstraňte.

Další krok

Nastavení Microsoft Entra ID s certifikáty pro SSO