หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
Secure Network Communications (SNC) ช่วยเพิ่มความปลอดภัยของการรวม SAP กับ Power Platform โดยการเข้ารหัสลับข้อมูลระหว่างเกตเวย์ข้อมูลภายในองค์กรกับระบบ SAP บทความนี้จะแนะนำคุณเกี่ยวกับการตั้งค่า SNC เพื่อพิสูจน์แนวคิด
สําคัญ
การตั้งค่าและคําแนะนําที่นําเสนอในบทความนี้ไม่ได้มีไว้สําหรับการใช้งานด้านการผลิต ปรึกษาทีมรักษาความปลอดภัย นโยบายภายใน และคู่ค้าของ Microsoft ของคุณสำหรับคำแนะนำในการตั้งค่า SNC ในสภาพแวดล้อมการทำงานจริง
ข้อกําหนดเบื้องต้น
- คุณมีการเชื่อมต่อ SAP ที่ใช้ตัวเชื่อมต่อ SAP ERP
- คุณสามารถเข้าถึงอินสแตนซ์ SAP ที่คุณสามารถรีสตาร์ทและจัดการได้
- มีการติดตั้งและตั้งค่า SAP GUI
- คุณคุ้นเคยกับเทคโนโลยีคีย์สาธารณะและส่วนตัว
- มีการติดตั้งและตั้งค่า OpenSSL หากคุณมี Git สำหรับ Windows ให้เพิ่ม
C:\Program Files\Git\usr\bin\ลงในพาธระบบของคุณเพื่อให้คุณสามารถใช้คำสั่งopensslได้
ติดตั้ง SAP Common Crypto Library
SAP Common Crypto Library ช่วยให้ตัวเชื่อมต่อ SAP สำหรับ Microsoft .NET (NCo) สามารถเข้ารหัสลับการสื่อสารระหว่างเกตเวย์ข้อมูลภายในองค์กรกับ SAP ในการแยกไลบรารี คุณต้องมียูทิลิตีการยกเลิกการบีบอัดที่เป็นกรรมสิทธิ์ที่เรียกว่า SAPCAR
ดาวน์โหลด SAPCAR
- ไปที่ ศูนย์ดาวน์โหลดซอฟต์แวร์ SAP และลงชื่อเข้าใช้ด้วยข้อมูลประจำตัว SAP ของคุณ
- ค้นหา SAPCAR และเลือกเวอร์ชันล่าสุดที่ไม่ได้เก็บถาวร
- เลือกระบบปฏิบัติการของคุณ
- ดาวน์โหลดไฟล์ .EXE ไปยัง
C:\sap\SAR
รับ SAP Common Crypto Library
- ในศูนย์ดาวน์โหลดซอฟต์แวร์ SAP ให้ค้นหา "COMMONCRYPTOLIB" และเลือกเวอร์ชันล่าสุด
- เลือกระบบปฏิบัติการของคุณ
- ดาวน์โหลดไฟล์ .SAR ที่มีวันที่เผยแพร่ล่าสุดไปยัง
C:\sap\SAR
แยก SAP Common Crypto Library
เปิด PowerShell และไปที่
C:\sap\SARป้อนคำสั่งต่อไปนี้ แทนที่
xxxxด้วยค่าของคุณ:.\SAPCAR_xxxx.EXE -xvf .\SAPCRYPTOLIBP_xxxx.SAR -R .\..\libs\sapcryptolibยืนยันว่า
sapgenpse.exeอยู่ในไดเรกทอรีC:\sap\libs\sapcryptolib
สร้างใบรับรอง
หลังจากที่คุณติดตั้งไลบรารี SAP Common Crypto แล้ว ให้สร้างใบรับรองเพื่อสร้างความน่าเชื่อถือและการเข้ารหัสระหว่างเกตเวย์ข้อมูลภายในองค์กรของคุณและระบบ SAP
คำเตือน
วิธีนี้มีไว้เพื่อวัตถุประสงค์ในการสาธิตเท่านั้น และไม่แนะนําสําหรับระบบการผลิต สำหรับระบบการทำงานจริง โปรดขอคำแนะนำ PKI ภายในหรือทีมรักษาความปลอดภัยของคุณ
ในตัวอย่างนี้ ให้จัดโครงสร้างใบรับรองของคุณตามที่แสดงในไดอะแกรมต่อไปนี้ Root CA ระดับสูง [O=Contoso, CN=Root CA] ลงนามในใบรับรองการเข้ารหัสลับ SNC [O=Contoso, CN=SNC] และใบรับรองผู้ใช้ [O=Contoso, CN=UserIDs]
บทความนี้เน้นไปที่การตั้งค่าใบรับรอง CA ระดับสูงและ SNC
สร้างประกาศนียบัตร
ตั้งค่าโครงสร้างโฟลเดอร์:
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" }สร้าง CA ระดับสูง:
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"สร้างใบรับรอง 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"สร้างไฟล์การกำหนดค่า OpenSSL
sncCert/extensions.cnfสำหรับการลงนาม:[ v3_leaf ] subjectKeyIdentifier = hash authorityKeyIdentifier = keyid,issuer basicConstraints = critical,CA:false keyUsage = critical,digitalSignature,keyEncipherment,dataEncipherment extendedKeyUsage = clientAuth,emailProtectionลงนามใบรับรอง SNC โดยใช้ 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
สร้างสภาพแวดล้อมความปลอดภัยส่วนบุคคล
สร้างสภาพแวดล้อมความปลอดภัยส่วนบุคคล (PSE) สําหรับเกตเวย์ข้อมูลภายในองค์กร ไลบรารี NCo จะค้นหาใบรับรอง SNC ภายใน PSE
สร้างคอนเทนเนอร์ PKCS#12:
openssl pkcs12 -export -out snc.p12 -inkey sncCert\snc.key.pem -in sncCert\snc.cert.pem -certfile rootCA\ca.cert.pemสร้างตัวแปรสภาพแวดล้อม SECUDIR:
- เปิด คุณสมบัติของระบบ: ใน File Explorer คลิกขวาที่ พีซีเครื่องนี้ แล้วเลือก คุณสมบัติ>การตั้งค่าระบบขั้นสูง
- เลือก ตัวแปรสภาพแวดล้อม
- ภายใต้ ตัวแปรระบบ เลือก ใหม่
- ตั้งค่าชื่อตัวแปรเป็น
SECUDIR - ตั้งค่าเป็น
C:\sapsecudir(สร้างไดเรกทอรีนี้ถ้าไม่มีอยู่) - เลือก ตกลง
- รีสตาร์ตเซสชัน PowerShell ของคุณเพื่อรับตัวแปรสภาพแวดล้อมใหม่นี้
นำเข้าคอนเทนเนอร์ PKCS#12 ลงใน PSE:
C:\sap\libs\sapcryptolib\sapgenpse.exe import_p12 -p SAPSNCSKERB.pse C:\pki-certs\snc.p12
ตั้งค่า SAP สำหรับ SNC
ลงชื่อเข้าใช้ SAP GUI
ไปที่รหัสทรานแซคชัน
SNC0ป้อน E เป็นพื้นที่ทำงาน
เลือก รายการใหม่ จากแถบด้านบนและกรอกข้อมูลที่จำเป็น
เลือก บันทึก
กลับไปยังหน้าแรก SAP GUI
ไปที่รหัสทรานแซคชัน
RZ10ตั้งค่าพารามิเตอร์โปรไฟล์เหล่านี้:
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```บันทึกพารามิเตอร์โปรไฟล์และรีสตาร์ทระบบ SAP ของคุณ
แลกเปลี่ยนใบรับรองระหว่าง SAP กับเกตเวย์ข้อมูลภายในองค์กร
คุณจำเป็นต้องแลกเปลี่ยนใบรับรองระหว่างเกตเวย์ข้อมูลภายในองค์กรกับ SAP เพื่อสร้างความน่าเชื่อถือ
เพิ่มใบรับรอง SNC เกตเวย์ไปยัง SAP
- ใน SAP GUI ไปที่รหัสทรานแซคชัน
STRUST - หาก SNC SAPCryptolib มีเครื่องหมาย X สีแดง ให้คลิกขวาแล้วเลือก สร้าง
- หรือให้ดับเบิลคลิกที่ SNC SAPCryptolib แล้วดับเบิลคลิกที่ ใบรับรองของคุณเอง
- เลือก นำเข้าใบรับรอง และเลือกใบรับรองสาธารณะ
sncCert\snc.cert.pemของคุณ - เลือก เพิ่มลงในรายการใบรับรอง
เพิ่มใบรับรอง SAP SNC ไปยังเกตเวย์ข้อมูลภายในองค์กร
ใน SAP GUI ไปที่รหัสทรานแซคชัน
STRUSTดับเบิลคลิกที่ SNC SAPCryptolib แล้วดับเบิลคลิกที่ ใบรับรองของคุณเอง
ส่งออกใบรับรองสาธารณะ
ย้ายใบรับรองสาธารณะไปยังเครื่องเกตเวย์ของคุณ (ตัวอย่างเช่น
C:\sap\contoso-public-key.crt)นำเข้าใบรับรองไปยัง PSE ของเกตเวย์ของคุณ:
C:\sap\libs\sapcryptolib\sapgenpse.exe maintain_pk -p SAPSNCSKERB.pse -v -a C:\pki-certs\sncCert\sapkerb.public.cert
ทดสอบการเชื่อมต่อที่ปลอดภัย
ทำตามขั้นตอนเพื่อทดสอบการเชื่อมต่อที่ปลอดภัย เมื่อคุณทดสอบสำเร็จ คุณก็พร้อมจะใช้ SNC ในสภาพแวดล้อมการทำงานจริงของคุณ
สร้างโฟลว์แบบทันทีใน Power Automate
เพิ่มการดำเนินการ
SAP ERP Call Functionเพิ่มพารามิเตอร์ SNC ต่อไปนี้ไปยังสตริง การเชื่อมต่อ 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" }```ทดสอบการเชื่อมต่อโดยใช้ฟังก์ชัน
STFC_CONNECTIONRFC
สําคัญ
ตรวจสอบให้แน่ใจว่าคุณจัดการคีย์ส่วนตัวอย่างปลอดภัยและลบคีย์เหล่านั้นเมื่อคุณทําการตั้งค่านี้เสร็จสิ้นแล้ว