Tôi có một ứng dụng Xamarin.Forms thực hiện việc ghim chứng chỉ bằng cách sử dụng lớp và phương thức ServicePointManager.ServerCert veValidationCallback. Trên Android và iOS, điều này hoạt động mà không có vấn đề gì ở chỗ nó sẽ cho phép kết nối với các dịch vụ dự kiến có khóa chứng chỉ đã được ghim và không cho phép kết nối cho những dịch vụ mà tôi không có.
Tuy nhiên, trên UWP, tất cả các kết nối được cho phép bất kể khóa chứng chỉ đã được ghim hay chưa. Tôi đã trả lại sai từ phương thức xác thực chứng chỉ và kết nối vẫn được cho phép. Tôi chắc chắn kiểm tra đang được thực hiện khi tôi đã gỡ lỗi và bước qua phương thức xác thực chứng chỉ.
Điều gì có thể khiến kết nối tiếp tục ngay cả khi tôi trả về sai từ kiểm tra xác thực?
ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertficate;
private static bool ValidateServerCertficate(
object sender,
X509Certificate certificate,
X509Chain chain,
SslPolicyErrors sslPolicyErrors
)
{
return false;
}
ValidateServerCertficate
cuộc gọi trong phía bạn?