当我试图从开发环境发出请求时,访问错误

本文关键字:请求 错误 访问 环境 开发 | 更新日期: 2023-09-27 18:11:20

我有sharepoint asp.net页面和按钮来执行复制操作

System.IO.File.Copy("''''server.name''folder''folder''123.txt", Server.MapPath("''''WebserverTempFileCopy''123.txt"), true);

问题是,如果我从开发环境中这样做,它可以正常工作,但如果我尝试从403禁止错误弹出,基本上它无法达到"''server.name'folder'folder'123.txt"出于某种原因,我不知道为什么。

请求是web服务器发出的,对吗?但是当我从开发环境中尝试这个时,它有访问权限,即使外部用户正在发出请求,他也可以访问该文件服务器,所以我不知道在哪里搜索错误。

我是asp.net和sharepoint的新手,所以也许这是一个简单而愚蠢的问题,但是无论如何都要感谢。

当我试图从开发环境发出请求时,访问错误

您可能使用IIS服务器来托管网站。如果是,则说明您的应用程序在应用程序池中工作。应用程序池从其工作中获得身份(用户)。

该错误显示当前正在使用IIS池的用户没有访问该文件的权限。

好的,所以主要问题是服务器管理员将访问文件服务器的权限授予了运行不同服务器的错误身份。我花了一些时间才弄明白。

但这一开始也没有解决问题。

我找到了一种简单的方法来运行这部分代码,使请求文件服务器作为应用程序池的身份。

SPSecurity.RunWithElevatedPrivileges(delegate()
                {
              //Code here
                });