2016-10-13 130 views
2

我想使用證書上傳(上傳,通過門戶網站,雲服務部署)動態訪問證書。在我的雲服務webrole在Azure的門戶,從雲服務

我期望 - 上傳證書後 - 他們將被應用到我運行的Web角色,然後我可以找到通過自己的拇指印的證書。

我轉到我的雲服務,選擇「證書」,然後上傳.pfx或提供密碼上傳通過門戶證書。

這是我使用的嘗試獲得證書代碼:

var store = new X509Store(StoreName.My, StoreLocation.LocalMachine); 
    store.Open(OpenFlags.ReadOnly); 

    X509Certificate2 certificate = null; 
    foreach (X509Certificate2 cert in store.Certificates) 
    { 
     string certHash = cert.Thumbprint; 
     if (certHash.Equals(binding.SslThumbprint, StringComparison.OrdinalIgnoreCase)) 
     { 
      certificate = cert; 
      break; 
     } 
    } 

This works如果我註冊在.csdef文件中的證書,但我需要能夠動態地加載證書。對.csdef文件所做的更改需要部署新軟件包 - 這不是一個選項。

在azure網站中有一個類似的功能,您可以將帶有通配符值的WEBSITE_LOAD_CERTIFICATES設置添加到您的應用設置,然後通過指紋在代碼中找到它們。基本上我正在尋找雲服務中的類似功能。

+1

有一段時間,因爲我玩過這個,如果我記得正確沒有選擇做這個沒有改變包。另一種解決方案是使用keyvault來存儲證書並從那裏加載/解密證書。 –

回答

1

沒有動態地加載上傳到天青門戶成雲角色證書而不在CSDEF/CSCFG文件第一指定它們的能力。

你可以,但是,上傳您的證書到一些外部存儲(即:Blob存儲,SQL Azure的數據庫等或波爾提到的關鍵庫),並從那裏加載它們。

HTH