ServicePointManager.ServerCertificateValidationCallbackクラスとメソッドを利用して証明書のピン留めを実装するXamarin.Formsアプリがあります。AndroidとiOSでは、これは問題なく機能し、証明書キーが固定されている予想されるサービスへの接続を許可し、私が持っていないサービスへの接続を許可しません。
ただし、UWPでは、証明書キーが固定されているかどうかに関係なく、すべての接続が許可されます。証明書の検証メソッドから明示的にfalseを返しましたが、接続はまだ許可されています。証明書の検証方法をデバッグしてステップ実行したため、チェックが実行されていると確信しています。
検証チェックからfalseを返しているのに、何が原因で接続が続行されるのですか
ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertficate;
private static bool ValidateServerCertficate(
object sender,
X509Certificate certificate,
X509Chain chain,
SslPolicyErrors sslPolicyErrors
)
{
return false;
}
1
stackoverflow.com/questions/52289014/certificate-pinning-on-uwp
—
ハンスパッサント
コールバックは発生するため、同じ状況ではありません。
—
Jason
ない
—
Nico Zhu-MSFT
ValidateServerCertficate
あなたの側で呼び出しますか?
ValidateServerCertificateが呼び出されていますが、戻り値は接続が許可されているかどうかには関係ありません
—
Jason