2012-07-17 27 views
11

說明:應用程序試圖執行安全策略不允許的操作。要授予此應用程序所需的權限,請聯繫您的系統管理員或更改配置文件中的應用程序信任級別。System.Security.SecurityException?

異常詳細信息信息:System.Security.SecurityException:請求類型的權限 'System.Security.Permissions.FileIOPermission,mscorlib程序,版本= 4.0.0.0,文化=中性公鑰= b77a5c561934e089' 失敗。

我的代碼運行在我的本地服務器適當它的創建問題,當把它上傳到服務器。

有通過下面的代碼了,但它不是爲我工作:

示例1:

<system.web> 
    <securityPolicy> 
    <trustLevel name="Full" policyFile="internal"/> 
    </securityPolicy> 
</system.web> 

示例2:

<location allowOverride="false"> 
    <system.web> 
    <securityPolicy> 
     <trustLevel name="Full" policyFile="internal" /> 
     <trustLevel name="High" policyFile="web_hightrust.config" /> 
     <trustLevel name="Medium" policyFile="web_mediumtrust.config" /> 
     <trustLevel name="Low" policyFile="web_lowtrust.config" /> 
     <trustLevel name="Minimal" policyFile="web_minimaltrust.config"/> 
    </securityPolicy> 
    </system.web> 
</location> 

示例3:

<system.web> 
    <trust level="Full" originUrl="" /> 
</system.web> 

我不能能夠訪問IIS我只有FTP上傳文件的詳細信息。請建議我選擇從webconfig文件解決它。

+0

哪裏是服務器? – leppie 2012-07-17 14:53:10

+0

你需要設置App_Data文件夾和信任級別寫權限爲「高」或IIS「滿」(或管理控制檯的虛擬主機)。升級時,文件權限可能會被覆蓋並可能需要重置。 最近我已經看到了這個錯誤與2.5.0.11,不得不完全信任指令添加到Web.config - 儘管IIS告訴我,這已經是完全信任。不知道爲什麼,但它修復了它。 – Abhijeetchindhe 2012-07-17 15:13:51

回答

0

注:如果您使用的是共享主機,他們通常有一個web界面,允許讀文件/寫訪問。

我不建議,但你也可以模擬特定帳戶:

<system.web> 
    <identity impersonate="true" username="user" password="pass" /> 
</system.web> 

否則請確保您已經授予適當的權限您嘗試訪問到Identity中正在使用的文件(S)您的應用程序池。

Specify an Identity for an Application Pool (IIS 7)

+0

HUmm也有試試上面的代碼。這不是解決我的問題...謝謝你的建議。 – 2012-07-17 14:40:46

+0

您使用共享的主機嗎? – 2012-07-17 15:06:13

+0

是的,我共享主持.. – 2012-07-18 05:53:06

11

您在使用樣本三是類似我的解決辦法,但我沒加,你有額外的屬性的方法。試試這個簡單的方法。

<system.web> 
    <trust level="Full"/> 
    </system.web> 

這來自MSDN posting我看了。

相關問題