簡體   English   中英

使用自簽名SSL證書的Azure Web App調用本地服務

[英]Azure Web App calling on-prem service with Self-Signed SSL Cert

我們有一個Azure Web應用程序,需要通過VPN調用內部Web服務

我們已經配置了所有內容,但是由於非生產內部服務器上的Web服務使用自簽名證書,因此調用失敗:

根據驗證過程,遠程證書無效。

在本地,我們可以將.cer導入Trusted People。

在Azure上如何實現?

您不能將.cer文件導入Azure Web App服務器。 如果可以修改代碼,則可以實施變通辦法,創建自己的證書驗證。 一個例子:

    ServicePointManager.ServerCertificateValidationCallback += (
        object sender,
        X509Certificate certificate,
        X509Chain chain,
        SslPolicyErrors sslPolicyErrors) =>
    {
        if (sslPolicyErrors == SslPolicyErrors.None)
        {
            return true;
        }
        else
        {
            var myGoodCert = X509Certificate.CreateFromCertFile(Server.MapPath("~/path/to/mycert.cer"));
            return myGoodCert.Equals(certificate);  // compares issuer and serial number
        }          
    };

切記將.cer文件與Web應用程序文件一起部署或將其放置在Web應用程序可訪問的位置(azure blob存儲,sql上的blob等)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM