允许IIS_IUSRSencryption和解密文件

我有一个简单的ASP.NET站点(在Windows Server 2012 R2和IIS 8.5上)将file upload到服务器。 我想使用Windows内置的encryption服务提供程序(CSP)自动encryption这些文件。 但是,当我尝试encryption刚刚写入磁盘的文件(来自ASP.NET网站)时,我得到:

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应用程序由授权用户访问(无需通过文件系统直接访问,因为只有encryption用户帐户可以解密文件)。

我意识到这个解决scheme有缺点,但是基于公钥/私钥的解决scheme也是如此(您遇到了安全存储解密私钥的问题)。 我主要感兴趣的是解决我的具体情况。

我该如何给App池标识(或IIS_IUSRS)encryption和解密文件(使用CSP)?

注:由于这个问题跨越编程和服务器pipe理,我昨天在这里也发布了类似的问题: https : //stackoverflow.com/questions/33533914/how-to-use-file-encrypt-from-asp-net