Windows 10 Universal App - ละเว้นการตรวจสอบใบรับรอง SSL

ฉันกำลังทำงานกับ Windows 10 Universal Application บนโทรศัพท์ ฉันกำลังพยายามเชื่อมต่อกับเซิร์ฟเวอร์ OAuth ด้วยใบรับรองที่ลงนามอัตโนมัติ

เมื่อฉันเปิดมุมมองเว็บไปยังเซิร์ฟเวอร์นั้น ฉันได้รับข้อผิดพลาด:

"ใบรับรองความปลอดภัยที่จำเป็นสำหรับการเข้าถึงทรัพยากรนี้ไม่ถูกต้อง"

ฉันต้องการใช้คำแนะนำต่อไปนี้ แต่ไม่มี ServicePointManager ใน Universal App

ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

มีความคิดใดที่จะเลี่ยงผ่านการตรวจสอบ SSL บนแอพเหล่านี้ได้อย่างไร ขอบคุณ.


person Julien Coqueret    schedule 07.10.2015    source แหล่งที่มา
comment
คุณพบความสำเร็จหรือไม่?   -  person Rashmin Javiya    schedule 26.10.2015


คำตอบ (1)


ใน Windows Runtime นั้น webview ไม่ควรไปที่หน้าที่ไม่น่าเชื่อถือ ดังนั้นคุณจะพบกับข้อยกเว้นข้างต้น
ในการแก้ปัญหา คุณต้องรวมใบรับรองไว้ในแอป UWP ของคุณ หรือคุณต้องละเว้นข้อผิดพลาดของใบรับรอง SSL .

หากต้องการรวมใบรับรองในแอป UWP คุณต้องเพิ่มการประกาศ "ใบรับรอง" ลงใน Package.appxmanifest ของคุณ ป้อนคำอธิบายรูปภาพที่นี่
สำหรับข้อมูลเพิ่มเติม โปรดลองอ่านบทความนี้: http://blogs.msdn.com/b/wsdevsol/archive/2014/06/05/รวมทั้ง-self-signed-certificates-with-your-windows-runtime-based-windows-phone-8-1-apps.aspx

ใช่ ServicePointManager คือ ไม่พร้อมใช้งานในแอป Windows Runtime เพื่อเพิกเฉยต่อข้อผิดพลาดใบรับรอง SSL เราสามารถใช้ HttpBaseProtocolFilter.IgnorableServerCertificateErrors | คุณสมบัติ ignorableServerCertificateErrors เพื่อช่วยเรา สำหรับข้อมูลเพิ่มเติม โปรดลองอ้างอิงถึงสองบทความต่อไปนี้:
http://blogs.msdn.com/b/wsdevsol/archive/2013/10/17/how-to-ignore-ลงนามด้วยตนเองใบรับรอง-errors-in-windows-store-apps-8-1.aspx
https://bernhardelbl.wordpress.com/28/06/2013/ignore-ssl-certificate-errors-in-windows-8-1-apps/

person Amy Peng - MSFT    schedule 13.10.2015
comment
เป็นไปได้ไหมที่จะใช้ HttpBaseProtocolFilter เชื่อมต่อกับ SignalR - person Storm; 19.01.2016
comment
ฉันลองวิธีการข้างต้นแล้วแต่ไม่ได้ผล ฉันมีแอปพลิเคชัน Cordova สำหรับแพลตฟอร์ม Windows 10 ที่กำลังโทร Ajax ผ่าน https ที่ลงนามด้วยตนเอง ฉันใส่ทั้งค่า CA และ Root ใน Store Name แล้ว แต่มันใช้งานไม่ได้ ฉันยังคงได้รับข้อผิดพลาดกับ {data: null, status:0} มีข้อเสนอแนะอื่นๆ อีกไหม? - person hirenhcm; 17.04.2016
comment
ฉันได้ดาวน์โหลดใบรับรองของเซิร์ฟเวอร์จากกล่องโต้ตอบ do-you-want-to-trust-it - firefox แล้วแปลงจาก .crt เป็น .cer (แต่ไฟล์ไม่เปลี่ยนแปลง) และเพิ่มลงในแอป UWP ของฉัน อย่างไรก็ตาม เมื่อฉันเชื่อมต่อกับเซิร์ฟเวอร์ด้วย ClientWebSocket มันจะแสดงข้อยกเว้นใบรับรองที่ไม่ถูกต้อง ฉันพลาดอะไรไปรึเปล่า? - person Benni; 07.03.2017