2014-02-26 118 views
0

創建新日程我也跟着教程這裏設置了Azure的計劃: http://fabriccontroller.net/blog/posts/a-complete-overview-to-get-started-with-the-windows-azure-scheduler/無法從Azure的網站

我想在一個藍色的網站上運行我的應用程序,但它是從創建我的x509證書阻擋我。

我發現這篇文章:http://blog.tylerdoerksen.com/2013/08/23/pfx-certificate-files-and-windows-azure-websites/ 其中指出了問題:

那麼事實證明,當你加載證書的系統將使用本地目錄來存儲密鑰(??) 默認對於關鍵的位置是本地用戶配置文件下,並使用Windows Azure網站,沒有任何本地用戶配置文件目錄「

於是跟隨他的意見,並添加以下標誌:‘X509KeyStorageFlags.MachineKeySet’我能逃避:

CryptographicException:系統找不到指定的文件

,但我現在得到:

CryptographicException:拒絕訪問。

真的沒有辦法從AzureWebsite使用SDK嗎?如果我被迫使用WebRole而不是Azure網站,它就會擊敗Azure Scheduler的很多吸引力。

在這個線程:http://social.msdn.microsoft.com/Forums/windowsazure/en-US/cfe06e73-53e1-4030-b82d-53200be37647/load-privately-created-p12-cert-from-azureblob-and-have-it-be-trusted 它看起來好像他們成功地在蔚藍的網站創建x509證書等什麼不同,地雷引發「拒絕訪問」當我嘗試?

+0

首先,我認爲在他的博客中使用Sandrino的代碼應該沒問題。他從發佈配置文件加載證書內容,這意味着從base64字符串。只要確保您已將您的配置文件與您的部署一起上傳。引用你的第二個錯誤,我認爲這是因爲網站進程沒有足夠的權限來讀取機器集中的證書。也許你可以將你的網站升級到標準模式,然後再試一次。 –

+0

在您發佈此評論後不久,我已將網站更改爲「標準」,但在嘗試使用它時,我今天仍收到相同的錯誤(「拒絕訪問」)。 – levitatejay

+0

很抱歉聽到這個消息,我當時沒有任何想法。希望有人能回答。 –

回答

2

問題在於使用PublishSettings文件中的ManagementCertificate字符串...我使用VisualStudio控制檯在本地計算機上創建了自簽名證書,並導出了'.cer'和'.pfx'。

上傳的自簽名.CER到我的天青/設置/管理證書 捆綁的.pfx我的解決方案,併發布到Azure網站

然後用下面的代碼創建證書:

var certificate = new X509Certificate2(
      HttpContext.Current.Server.MapPath("~/<filename>.pfx"), "<password>", X509KeyStorageFlags.MachineKeySet);