Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Comunicación de red segura (SNC) mejora la seguridad de su integración de SAP con Power Platform mediante el cifrado de los datos entre una puerta de enlace de datos local y un sistema SAP. Este artículo le muestra cómo configurar SNC como prueba de concepto.
Importante
La configuración y las recomendaciones presentadas en este artículo no están pensadas para su uso en producción. Consulte a su equipo de seguridad, a las directivas internas y a Microsoft Partner para obtener instrucciones sobre cómo configurar SNC en un ambiente de producción.
Prerrequisitos
- Tiene una conexión SAP que utiliza el conector SAP ERP.
- Tiene acceso a una instancia de SAP que puede reiniciar y administrar.
- La GUI de SAP está instalada y configurada.
- Está familiarizado con las tecnologías de clave pública y privada.
- OpenSSL está instalado y configurado. Si tiene Git para Windows, agregue
C:\Program Files\Git\usr\bin\a su sistema PATH para que pueda usar el comandoopenssl.
Instalar SAP Common Crypto Library
SAP Common Crypto Library permite que SAP Connector for Microsoft .NET (NCo) cifre las comunicaciones entre la puerta de enlace de datos local y SAP. Para extraer la biblioteca, necesita una utilidad de descompresión propietaria llamada SAPCAR.
Obtener SAPCAR
- Vaya al Centro de descarga de software SAP e inicie sesión mediante las credenciales SAP.
- Busque SAPCAR y seleccione la versión no archivada más reciente.
- Seleccione su sistema operativo.
- Descargar el archivo .EXE a
C:\sap\SAR.
Obtener la biblioteca de cifrado común de SAP
- En el Centro de descarga de software de SAP, busque "COMMONCRYPTOLIB" y seleccione la última versión.
- Seleccione su sistema operativo.
- Descargue el archivo .SAR con la fecha de versión más reciente a
C:\sap\SAR.
Extraer SAP Common Crypto Library
Abra el PowerShell y diríjase a
C:\sap\SAR.Introduzca el siguiente comando, reemplazando
xxxxcon sus valores:.\SAPCAR_xxxx.EXE -xvf .\SAPCRYPTOLIBP_xxxx.SAR -R .\..\libs\sapcryptolibConfirme que
sapgenpse.exeestá en elC:\sap\libs\sapcryptolibdirectorio.
Generación de certificados
Después de instalar sap Common Crypto Library, genere certificados para establecer la confianza y el cifrado entre la puerta de enlace de datos local y el sistema SAP.
Advertencia
Este método es solo para fines de demostración y no se recomienda para sistemas de producción. En el caso de los sistemas de producción, consulte a su equipo de seguridad interno o a su guía de PKI.
En este ejemplo, estructure los certificados como se muestra en el diagrama siguiente. La Root CA [O = Contoso, CN = Root CA] firma el certificado de cifrado SNC [O = Contoso, CN = SNC] y los certificados de usuario [O = Contoso, CN =UserIDs].
Este artículo se centra en la configuración de los certificados de Root CA y SNC.
Crear certificados
Configurar la estructura de carpetas:
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" }Generar una 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"Generar el 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"Cree un archivo de configuración de OpenSSL,
sncCert/extensions.cnf, para firmar:[ v3_leaf ] subjectKeyIdentifier = hash authorityKeyIdentifier = keyid,issuer basicConstraints = critical,CA:false keyUsage = critical,digitalSignature,keyEncipherment,dataEncipherment extendedKeyUsage = clientAuth,emailProtectionFirme el certificado SNC mediante la Autoridad Certificadora 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
Creación de un entorno seguro personal
Cree un entorno seguro personal (PSE) para la puerta de enlace de datos local. La biblioteca NCo busca el certificado SNC dentro del PSE.
Crear un contenedor PKCS#12:
openssl pkcs12 -export -out snc.p12 -inkey sncCert\snc.key.pem -in sncCert\snc.cert.pem -certfile rootCA\ca.cert.pemCree la variable de entorno SECUDIR:
- Abra Propiedades del sistema: En el Explorador de archivos, haga clic con el botón derecho en Este PC y luego seleccione Propiedades>Configuración avanzada del sistema.
- Seleccione Variable de entorno.
- En Variables del sistema, seleccione Nuevo.
- Establezca el nombre de la variable en
SECUDIR. - Establezca el valor en
C:\sapsecudir(cree este directorio si no existe). - Seleccione Aceptar.
- Reinicie la sesión de PowerShell para seleccionar esta nueva variable de entorno.
Importe el contenedor PKCS#12 en un PSE:
C:\sap\libs\sapcryptolib\sapgenpse.exe import_p12 -p SAPSNCSKERB.pse C:\pki-certs\snc.p12
Configurar SAP para SNC
Inicie sesión en SAP GUI.
Vaya al código de transacción
SNC0.Introduzca E como área de trabajo.
Seleccione Nueva entrada en la barra superior y complete la información requerida.
Seleccione Guardar.
Vuelva a la pantalla principal de SAP GUI .
Vaya al código de transacción
RZ10.Establezca estos parámetros 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```Guarde los parámetros del perfil y reinicie su sistema SAP.
Intercambio de certificados entre SAP y la puerta de enlace de datos en las instalaciones
Debe intercambiar certificados entre la puerta de enlace de datos en las instalaciones y SAP para establecer la confianza.
Agregue el certificado SNC de la pasarela a SAP
- En SAP GUI, vaya al código de transacción
STRUST. - Si SNC SAPCryptolib tiene una X roja, haga clic derecho sobre ella y seleccione Crear.
- De lo contrario, haga doble clic en SNC SAPCryptolib y, a continuación, haga doble clic en su Propio certificado.
- Seleccione Importar certificado y elija su
sncCert\snc.cert.pemcertificado público. - Seleccione Agregar a la lista de certificados.
Agregar el certificado SNC de SAP a la puerta de enlace de datos local
En SAP GUI, vaya al código de transacción
STRUST.Haga doble clic en SNC SAPCryptolib y, a continuación, haga doble clic en su Certificado propio.
Exportar el certificado público.
Mueva el certificado público a la máquina de puerta de enlace (por ejemplo,
C:\sap\contoso-public-key.crt).Importe el certificado en el PSE de su gateway.
C:\sap\libs\sapcryptolib\sapgenpse.exe maintain_pk -p SAPSNCSKERB.pse -v -a C:\pki-certs\sncCert\sapkerb.public.cert
Pruebe la conexión segura
Siga los pasos para probar la conexión segura. Una vez que complete la prueba con éxito, estará listo para implementar SNC en su entorno de producción.
Crear un flujo instantáneo en Power Automate.
Agregar una acción
SAP ERP Call Function.Agregue los siguientes parámetros SNC a la cadena 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" }```Pruebe la conexión utilizando la función RFC.
STFC_CONNECTION
Importante
Asegúrese de controlar de forma segura las claves privadas y eliminarlas cuando complete esta configuración.