簡體   English   中英

如何從ASP.NET使用File.Encrypt

[英]How to use File.Encrypt from ASP.NET

我有一個簡單的C#ASP.NET MVC應用程序(在Windows Server 2012 R2和IIS 8.5上),用於將文件上傳到服務器。 我想使用File.Encrypt(path-to-file)自動加密這些文件,但是我得到了

System.IO.IOException occurred
 HResult=-2146499771
 Message=The requested operation cannot be completed. The computer must 
 be trusted for delegation and the current user account must be 
 configured to allow delegation.

IIS在默認的IIS_IUSRS帳戶下運行,該帳戶具有相應文件夾的“完全控制”權限。

我要完成的工作是一個簡單的Web應用程序,客戶端可以上傳敏感文件,然后授權用戶只能通過Web應用程序訪問(不可以通過文件系統直接訪問,因為只有加密用戶帳戶可以通過文件系統直接訪問)解密文件)。

我意識到該解決方案有缺點,但是基於公鑰/私鑰的解決方案也有缺點(您會陷入如何安全地存儲私鑰以進行解密的問題)。 我主要感興趣的是針對我的特定方案的解決方案。

我該如何工作?

通過創建專門用於應用程序池的用戶(具有最小權限和強密碼)並將其用作應用程序池標識,可以使工作正常。

我最初想避免這樣做(我認為這樣做不太安全),但是根據Microsoft的“ IIS 8安全最佳實踐”( https://technet.microsoft.com/zh-cn/library/jj635855.aspx ) , 這不成問題:

可以使用自定義身份帳戶,但是請確保為每個應用程序池使用不同的帳戶

暫無
暫無

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

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