簡體   English   中英

web.config中的安全路徑/文件夾

[英]Secured path/folder in web.config

我在Web應用程序中創建了一條安全路徑。

像在此鏈接中提到的: http : //msdn.microsoft.com/en-us/library/ff648341.aspx

當我使用以下配置保護我的文件時:

<location path="Secure">
    <system.web>
      <customErrors mode="RemoteOnly" redirectMode="ResponseRewrite" defaultRedirect="error.html">
      </customErrors>
      <authorization>
        <deny users="?"/>
      </authorization>
    </system.web>
  </location>

不能無知地訪問以下文件:

my host link /secure/xyz/01.doc    
my host link /secure/xyz/01.docx    
my host link /secure/xyz/01.xls    
my host link /secure/xyz/01.xlsx

但無需登錄即可訪問以下文件:

my host link /secure/xyz/01.pdf    
my host link /secure/xyz/01.txt    
my host link /secure/xyz/01.png

關於這種行為有什么想法嗎? 為什么仍然可以訪問Office文檔以外的文件? 我需要保護它們。

當您的web.config保護您的網頁和某些文件時,PDF與許多其他靜態文件一樣,由IIS 直接提供

通過在web.config中的處理程序部分中添加StaticFileHandler條目,可以強制這些其他靜態文件通過ASP.NET管道。

<system.webServer>
  <handlers>
    <add name="PDFHandler" type="System.Web.StaticFileHandler" path="*.pdf" verb="GET"  />
    <add name="PNGHandler" type="System.Web.StaticFileHandler" path="*.png" verb="GET"  />
    <add name="TXTHandler" type="System.Web.StaticFileHandler" path="*.txt" verb="GET"  />
  </handlers>
</system.webServer>

我猜想,對於其他Office文檔類型,您已經具有與此類似的功能。 web.config或IIS中。

得到了解決方案。

登錄后,當單擊以下載格式為.pdf .png .txt的文件時,
瀏覽器未下載-但顯示在同一標簽中
(並且瀏覽器將其緩存,我認為是這樣。如果我錯了,請糾正我!!!)
如果是.doc .xls,則打開對話框進行下載(無需緩存)。

注銷后,在瀏覽.pdf .png .txt的下載鏈接時
它打開它/從緩存中加載它。
另一方面,在瀏覽.doc .xls時將我重定向到登錄

暫無
暫無

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

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