[ASP.NET] 建立 Excel 時出現 "System.UnauthorizedAccessException: 存取被拒。"

  • 3386
  • 0

摘要:[ASP.NET] 建立 Excel 時出現 "System.UnauthorizedAccessException: 存取被拒。"

常常遇到這狀況

好久沒設有點忘記了

記得除了加user之外,因為excel元件也需要有權限,所以也必須設定

存取被拒。
描述: 在執行目前 Web 要求的過程中發生未處理的例外情形。請檢閱堆疊追蹤以取得錯誤的詳細資訊,以及在程式碼中產生的位置。

例外詳細資訊: System.UnauthorizedAccessException: 存取被拒。

沒有授權 ASP.NET 存取要求的資源。請考慮將資源存取權授予 ASP.NET 要求識別。ASP.NET 有一個基本處理序識別 (通常在 IIS 5 上為 {MACHINE}\ASPNET,在 IIS 6 上為 Network Service),會在應用程式未模擬的情況下使用。如果應用程式是透過 <identity impersonate="true"/> 模擬,這個識別將會是匿名使用者 (通常為 IUSR_MACHINENAME) 或經過驗證的要求使用者。

若要取得 ASP.NET 寫入檔案的存取權限,請在檔案總管中以右鍵按一下檔案,選擇 [內容] 並選取 [安全] 索引標籤。按一下 [新增] 加入適當的使用者或群組。反白顯示 ASP.NET 帳戶,並且選取所需存取權限的核取方塊。

元件設定

1.直接在執行命令列打上"dcomcnfg"

 

2.然後在元件服務>我的電腦>DCOM 設定 內找到 "Microsoft Excel 應用程式",按"內容"

 

2.裡面的安全性頁籤,把存取權.設定權.啟動權都設自訂然後給以下的帳號權限 :

IIS5 : ASPNET
IIS6 : Network Service(或許,沒試過)