Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Secure Network Communications (SNC) mellora a seguridade da súa integración con SAP con Power Platform ao cifrar os datos entre unha pasarela de datos local e un sistema SAP. Este artigo guíache a través da configuración de SNC como proba de concepto.
Importante
As configuracións e recomendacións que se presentan neste artigo non están destinadas ao uso de produción. Consulte o seu equipo de seguridade, as políticas internas e o socio Microsoft para obter orientación sobre a configuración de SNC nun ambiente de produción.
Requisitos previos
- Tes unha conexión SAP que usa o conector SAP ERP.
- Ten acceso a unha instancia de SAP que pode reiniciar e administrar.
- A GUI de SAP está instalada e configurada.
- Coñeces as tecnoloxías de clave pública e privada.
- OpenSSL está instalado e configurado. Se tes Git para Windows, engade
C:\Program Files\Git\usr\bin\
a RUTA do teu sistema para que poidas usar o comandoopenssl
.
Instalar SAP Common Crypto Library
SAP Common Crypto Library permite que o SAP Connector for Microsoft .NET (NCo) cifra as comunicacións entre a pasarela de datos local e SAP. Para extraer a biblioteca, necesitas unha utilidade de descompresión propietaria chamada SAPCAR.
Consigue SAPCAR
- Vaia ao Centro de descarga de software SAP e inicie sesión coas súas credenciais de SAP.
- Busca SAPCAR e selecciona a última versión non arquivada.
- Seleccione o seu sistema operativo.
- Descarga o ficheiro .EXE para
C:\sap\SAR
.
Obter SAP Common Crypto Library
- No Centro de descarga de software SAP, busque "COMMONCRYPTOLIB" e seleccione a versión máis recente.
- Seleccione o seu sistema operativo.
- Descarga o ficheiro .SAR coa data de lanzamento máis recente a
C:\sap\SAR
.
Extraer SAP Common Crypto Library
Abre PowerShell e vai a
C:\sap\SAR
.Introduza o seguinte comando, substituíndo
xxxx
polos seus valores:.\SAPCAR_xxxx.EXE -xvf .\SAPCRYPTOLIBP_xxxx.SAR -R .\..\libs\sapcryptolib
Confirma que
sapgenpse.exe
estea no directorioC:\sap\libs\sapcryptolib
.
Xerar certificados
Agora que instalou SAP Common Crypto Library, pode xerar certificados para establecer a confianza e o cifrado entre a súa pasarela de datos local e o sistema SAP.
Aviso
Este método é só para fins de demostración e non se recomenda para sistemas de produción. Para os sistemas de produción, consulte o seu equipo de seguridade ou orientación PKI interna.
Neste exemplo, os nosos certificados estrutúranse como se mostra no seguinte diagrama. CA raíz [O=Contoso, CN=CA raíz] asina o certificado de cifrado SNC [O=Contoso, CN=SNC] e os certificados de usuario [O=Contoso, CN=UserIDs
].
Este artigo céntrase na configuración dos certificados root CA e SNC.
Crear certificados
Configura a estrutura do cartafol:
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" }
Xerar unha CA raíz:
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"
Xerar o certificado 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"
Crea un ficheiro de configuración de OpenSSL,
sncCert/extensions.cnf
, para asinar:subjectKeyIdentifier = hash authorityKeyIdentifier = keyid,issuer basicConstraints = critical,CA:false keyUsage = critical,digitalSignature,keyEncipherment,dataEncipherment extendedKeyUsage = clientAuth,emailProtection
Asina o certificado SNC coa CA raíz:
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
Crear un entorno persoal seguro
Crea un entorno seguro persoal (PSE) para a pasarela de datos local. A biblioteca NCo busca o certificado SNC dentro do PSE.
Crea un contedor PKCS#12:
openssl pkcs12 -export -out snc.p12 -inkey sncCert\snc.key.pem -in sncCert\snc.cert.pem -certfile rootCA\ca.cert.pem
Cree a variable de ambiente SECUDIR:
- Abre Propiedades do sistema: no Explorador de ficheiros, fai clic co botón dereito do rato en Este PC e, a continuación, selecciona a20>Propiedades>Configuración avanzada do sistema.
- Seleccione Variables de ambiente.
- En Variables do sistema, seleccione Novo.
- Establece o nome da variable en
SECUDIR
. - Establece o valor en
C:\sapsecudir
. - Seleccione Aceptar.
Importa o contedor PKCS#12 nun PSE:
C:\sap\libs\sapcryptolib\sapgenpse.exe import_p12 -p SAPSNCSKERB.pse C:\pki-certs\snc.p12
Configurar SAP para SNC
Inicie sesión na GUI de SAP.
Vaia ao código de transacción
SNC0
.Introduza E como área de traballo.
Seleccione Nova entrada na barra superior e enche a información requirida.
Seleccione Gardar.
Volve á pantalla de inicio de SAP GUI.
Vaia ao código de transacción
RZ10
.Establece estes parámetros de perfil:
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```
Garda os parámetros do perfil e reinicia o teu sistema SAP.
Intercambia certificados entre SAP e a pasarela de datos local
Necesitas intercambiar certificados entre a pasarela de datos local e SAP para establecer a confianza.
Engade o certificado SNC de pasarela a SAP
- Na GUI de SAP, vai ao código de transacción
STRUST
. - Se SNC SAPCryptolib ten unha X vermella, fai clic co botón dereito nel e selecciona Crear.
- En caso contrario, faga dobre clic en SNC SAPCryptolib e, a continuación, faga dobre clic no seu Certificado propio.
- Seleccione Importar certificado e escolle o seu
sncCert\snc.cert.pem
certificado público. - Seleccione Engadir á lista de certificados.
Engade o certificado SAP SNC á pasarela de datos local
Na GUI de SAP, vai ao código de transacción
STRUST
.Fai dobre clic en SNC SAPCryptolib e, a continuación, fai dobre clic no teu Certificado propio.
Exportar o certificado público.
Move o certificado público á máquina de pasarela (por exemplo,
C:\sap\contoso-public-key.crt
).Importe o certificado no PSE da súa pasarela:
C:\sap\libs\sapcryptolib\sapgenpse.exe maintain_pk -p SAPSNCSKERB.pse -v -a C:\pki-certs\sncCert\sapkerb.public.cert
Proba a conexión segura
Siga os pasos para probar a conexión segura. Unha vez que completes a proba con éxito, estarás preparado para implementar SNC no teu ambiente de produción.
Crea un fluxo instantáneo en Power Automate.
Engade unha
SAP ERP Call Function
acción.Engade os seguintes parámetros SNC á cadea Conexión 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" }```
Proba a conexión mediante a función
STFC_CONNECTION
RFC.
Importante
Asegúrate de manexar as claves privadas de forma segura e elimínaas ao finalizar esta configuración.