Konfigurowanie bezpiecznej komunikacji sieciowej
Bezpieczna komunikacja sieciowa (SNC) zwiększa bezpieczeństwo integracji Power Platform SAP, szyfrując dane między lokalną bramą danych a systemem SAP. Ten artykuł przeprowadzi Cię przez proces konfigurowania SNC jako weryfikacji koncepcji.
Ważne
Ustawienia i zalecenia nie są przeznaczone do użytku w środowiskach produkcyjnych. Skonsultuj się z zespołem ds. zabezpieczeń, zasadami wewnętrznymi i partnerem Microsoft, aby uzyskać wskazówki dotyczące konfigurowania SNC w środowisku produkcyjnym.
Wymagania wstępne
- Masz połączenie SAP, które korzysta z łącznika SAP ERP.
- Masz dostęp do wystąpienia SAP, które możesz ponownie uruchomić i administrować.
- Graficzny interfejs użytkownika systemu SAP został zainstalowany i skonfigurowany.
- Musisz także znać technologie klucza publicznego i prywatnego.
- OpenSSL został zainstalowany i skonfigurowany. Jeśli masz usługę Git dla systemu Windows, dodaj
C:\Program Files\Git\usr\bin\
do systemu PATH, aby móc użyć poleceniaopenssl
.
Instalowanie wspólnej biblioteki kryptograficznej SAP
Wspólna biblioteka kryptograficzna SAP umożliwia łącznikowi SAP dla Microsoft .NET (NCo) szyfrowanie komunikacji między lokalną bramą danych a systemem SAP. Aby wyodrębnić bibliotekę, potrzebujesz zastrzeżonego narzędzia dekompresyjnego o nazwie SAPCAR.
Pobierz SAPCAR
- Przejdź do Centrum pobierania oprogramowania SAP i zaloguj się przy użyciu poświadczeń administratora globalnego.
- Wyszukaj SAPCAR i wybierz najnowszą, niezarchiwizowaną wersję.
- Wybierz swój system operacyjny.
- Pobierz plik .EXE do
C:\sap\SAR
.
Instalowanie wspólnej biblioteki kryptograficznej SAP
- W Centrum pobierania oprogramowania SAP wyszukaj ciąg "COMMONCRYPTOLIB" i wybierz najnowszą wersję.
- Wybierz swój system operacyjny.
- Pobierz plik . SAR z najnowszą datą wydania do
C:\sap\SAR
.
Ektrahowanie wspólnej biblioteki kryptograficznej SAP
Otwórz PowerShell i przejdź do
C:\sap\SAR
.Wprowadź następujące polecenie, zastępując
xxxx
je wartościami:.\SAPCAR_xxxx.EXE -xvf .\SAPCRYPTOLIBP_xxxx.SAR -R .\..\libs\sapcryptolib
Upewnij się, że
sapgenpse.exe
znajduje się w kataloguC:\sap\libs\sapcryptolib
.
Wygeneruj certyfikaty
Teraz, po zainstalowaniu wspólnej biblioteki kryptograficznej SAP, możesz wygenerować certyfikaty, aby ustanowić zaufanie i szyfrowanie między lokalną bramą danych a systemem SAP.
Ostrzeżenie
Ta metoda służy wyłącznie do celów demonstracyjnych i nie jest zalecana w przypadku systemów produkcyjnych. W przypadku systemów produkcyjnych skonsultuj się z wewnętrznym zespołem ds. wytycznych lub zabezpieczeń infrastruktury kluczy publicznych.
W tym przykładzie nasze certyfikaty mają strukturę pokazaną na poniższym diagramie. Główny urząd certyfikacji [O=Contoso, CN=Główny urząd certyfikacji] podpisuje certyfikat szyfrowania SNC [O=Contoso, CN=SNC] i certyfikaty użytkownika [O=Contoso, CN=UserIDs
].
W tym artykule skoncentrowano się na konfigurowaniu certyfikatów głównego urzędu certyfikacji i SNC.
Utwórz certyfikaty
Utwórz strukturę folderu:
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" }
Wygeneruj główny urząd certyfikacji:
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"
Wygeneruj certyfikaty 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"
Utwórz plik
sncCert/extensions.cnf
konfiguracyjny OpenSSL do podpisania:subjectKeyIdentifier = hash authorityKeyIdentifier = keyid,issuer basicConstraints = critical,CA:false keyUsage = critical,digitalSignature,keyEncipherment,dataEncipherment extendedKeyUsage = clientAuth,emailProtection
Podpisz certyfikat SNC przy użyciu głównego urzędu certyfikacji:
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
Stwórz osobiste, bezpieczne środowisko
Utwórz bezpieczne środowisko osobiste (PSE) dla lokalnej bramy danych. Biblioteka NCo szuka certyfikatu SNC wewnątrz PSE.
Utwórz kontener PKCS#12:
openssl pkcs12 -export -out snc.p12 -inkey sncCert\snc.key.pem -in sncCert\snc.cert.pem -certfile rootCA\ca.cert.pem
Nie można utworzyć zmiennych środowiskowych SECUDIR:
- Otwórz Właściwości systemu: W Eksploratorze plików kliknij prawym przyciskiem myszy pozycję Ten komputer, a następnie wybierz Właściwości>Zaawansowane ustawienia systemu.
- Wybierz opcję Zmienne środowiskowe.
- W Zmienne systemu, wybierz Nowe.
- Ustaw nazwę zmienną na
SECUDIR
. - Ustaw wartość na
C:\sapsecudir
. - Wybierz pozycję OK.
Zaimportuj kontener PKCS#12 do PSE:
C:\sap\libs\sapcryptolib\sapgenpse.exe import_p12 -p SAPSNCSKERB.pse C:\pki-certs\snc.p12
Konfiguruj SAP dla SNC
Zaloguj się SAP GUI.
Przejdź do kodu transakcji
SNC0
.Wprowadź E jako obszar roboczy.
Wybierz pozycję Nowy wpis z górnego paska i wprowadź wymagane informacje.
Wybierz ikonę Zapisz.
Wróc na stronę główną SAP GUI.
Przejdź do kodu transakcji
RZ10
.Ustaw następujące 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```
Zapisz parametry profilu i uruchom ponownie system SAP.
Wymiana certyfikatów między systemem SAP a lokalną bramą danych
Aby ustanowić zaufanie, należy wymienić certyfikaty między lokalną bramą danych a systemem SAP.
Dodawanie certyfikatu SNC bramy do systemu SAP
- W graficznym interfejsie użytkownika systemu SAP przejdź do kodu transakcji
STRUST
. - Jeśli SNC SAPCryptolib ma czerwony znak X, kliknij prawym przyciskiem myszy i wybierz polecenie Utwórz.
- W przeciwnym przypadku wybierz pozycję SNC SAPCryptolib, a następnie kliknij dwukrotnie własny certyfikat.
- Wybierz pozycję Importuj certyfikat i wybierz certyfikat
sncCert\snc.cert.pem
publiczny. - Wybierz pozycję Dodaj do listy certyfikatów.
Dodawanie certyfikatu SAP SNC do lokalnej bramy danych
W graficznym interfejsie użytkownika systemu SAP przejdź do kodu transakcji
STRUST
.W przeciwnym przypadku wybierz pozycję SNC SAPCryptolib, a następnie kliknij dwukrotnie własny certyfikat.
Eksportuj publiczny certyfikat.
Przenieś certyfikat publiczny na maszynę bramy (na przykład,
C:\sap\contoso-public-key.crt
).Zaimportuj certyfikat do PSE bramy:
C:\sap\libs\sapcryptolib\sapgenpse.exe maintain_pk -p SAPSNCSKERB.pse -v -a C:\pki-certs\sncCert\sapkerb.public.cert
Implementowanie bezpiecznego połączenia
Postępuj zgodnie z instrukcjami, aby przetestować bezpieczne połączenie. Po pomyślnym zakończeniu testu możesz przystąpić do implementacji SNC w środowisku produkcyjnym.
Utwórz przepływ Power Automate błyskawiczny.
Dodaj akcję
SAP ERP Call Function
.Dodaj następujące parametry SNC do parametrów połączenia 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" }```
Przetestuj połączenie za pomocą
STFC_CONNECTION
funkcji RFC.
Ważne
Upewnij się, że klucze prywatne są bezpiecznie obsługiwane i usuń je po zakończeniu tej konfiguracji.
Następny krok
Konfigurowanie usługi Tożsamość Microsoft Entra na potrzeby rejestracji jednokrotnej