我试图让用户连接到服务器上的共享Excel文件。 用户可以访问该共享。 使用Procmon,我检测到OleDB在这个位置创build一个临时文件:
c:\users\temp.<DOMAIN>.00x
但是用户默认没有权限访问这个文件夹,他们收到来自OleDB的可怕的“未指定的错误”。 据推测,这个问题可以通过在Web.config文件中进行以下更改来缓解:
<identity impersonate="true" />
至
<identity impersonate="false" />
但是,这是一个SharePoint服务器,因此我无法进行更改而不会对SharePoint产生负面影响。 我想要执行下列操作之一来缓解创build额外临时文件的问题:
如果你能推荐更好的解决scheme,我当然愿意看看其他的解决scheme。 另外,我对我的巨大无知事先道歉,我不是真正的服务器pipe理员。 感谢您的期待!
通常这是因为App Pool用户创build用于编辑的临时文件的奇怪情况,实际用户无权访问。
这就是为什么当模拟设置为false时,应用程序池用户身份被使用并且可以访问该文件 – 但是当模拟设置为true时,正在使用用户帐户,该帐户无权访问这些文件。
将每个人的写入权限设置为临时文件父目录应该可以解决此问题。 我想在那里有一些单独的安全问题,但在你的情况下似乎不是一个问题(你甚至提出了这个问题)。