2012-09-19 90 views
1

我最近將一個相當大的網站遷移到了Azure。拒絕訪問Azure上的特定文件夾

我知道這不是最好的做法,但是該網站被配置爲在內容文件夾中存儲機密文件,該文件夾在IIS中被配置爲全部拒絕。

但是,當我嘗試在所述文件夾中添加web.config時,Azure僅在直接訪問文件時忽略拒絕條目。我嘗試過不同的配置組合,沒有任何結果。

<system.webServer> 
    <security> 
     <authorization> 
      <remove users="*" roles="" verbs="" /> 
     </authorization> 
    </security> 
</system.webServer> 

<security> 
<ipSecurity allowUnlisted="false">    
</ipSecurity> 
</security> 

但是,如果我上傳一個無效的web.config文件夾,該網站將引發錯誤,並沒有什麼服務。

+0

您使用WIndows Azure雲服務嗎?網站?還是虛擬機? – BrentDaCodeMonkey

回答

2

您將不得不將這些文件從實例中移出並放到其他位置(blob存儲是個不錯的選擇)。

在網絡場場景中,您所做的工作根本無法正常工作。沒有一些非常瘋狂的解決方法,將文件存儲在網站的單個實例上對於webfarms來說是行不通的。儘管您可以在技術上使用單個持久虛擬機執行此操作,但您不會在單個實例上運行可伸縮網站。

將這些文件複製到blob存儲中,並用先檢查安全性,然後爲存儲中的blob生成SAS簽名和/或生成SAS簽名的方法替換對它們的直接調用。

+0

非常有意義。 – rodael