Asp.net core NetCore API模拟
我有一个Web和一个API NetCore应用程序运行在一台我可以通过VPN访问的机器上 在IIS中,我在IIS中配置了两个应用程序:Web和API。他们跑得很好 在API中,我尝试从网络路径打开文件: \10.50.20.24\g$\Buffer\821003\003\22\34\821003003223428.WAV 在我的代码中,当我尝试验证文件是否存在时,使用System.IO.file在移动它之后,我收到一条消息,说文件不存在 “找不到文件” 但是文件存在,当我尝试从Windows资源管理器访问它时,文件就在那里 在IIS中,我已将同一用户配置为以应用程序池的身份运行应用程序 我尝试了很多方法试图访问该文件,但都没有成功Asp.net core NetCore API模拟,asp.net-core,.net-core,impersonation,Asp.net Core,.net Core,Impersonation,我有一个Web和一个API NetCore应用程序运行在一台我可以通过VPN访问的机器上 在IIS中,我在IIS中配置了两个应用程序:Web和API。他们跑得很好 在API中,我尝试从网络路径打开文件: \10.50.20.24\g$\Buffer\821003\003\22\34\821003003223428.WAV 在我的代码中,当我尝试验证文件是否存在时,使用System.IO.file在移动它之后,我收到一条消息,说文件不存在 “找不到文件” 但是文件存在,当我尝试从Windows资源
你认为这与冒充有关吗?如何在Asp.Net Core API 3.1中实现模拟?这是一个管理共享,而不仅仅是任何网络路径。只有管理员才能使用它们。不要那样做。在该服务器上创建适当的文件共享并使用它,例如
\\thatserver\Buffer\..
。通过文件共享,您可以使用特定权限来控制谁可以读、写等。您还可以控制脱机缓存、版本控制和大量其他高级功能。实际上,该路径的存在是为了为两个系统提供从那里读取文件的资源(文件)。问题是如何从NetCore应用程序进行访问。你是说“只有管理员”因为路径上有美元?是的。不要使用c$
。使用您可以控制的适当文件共享。向该共享添加适当的权限,以允许网站帐户访问该路径。不需要模仿任何人。如果您使用本地帐户,它将显示为网络上其他计算机的计算机帐户(即somedomain\somemachine$
。您可以将该帐户添加到共享中,也可以为网站创建一个域帐户。问题是,该环境不在我们的控制之下,是由客户创建的环境,所有系统都使用这种方式进行访问,但我们在其他网络中运行应用程序的情况除外共享文件夹的k。感谢帮助。更进一步,您可以使用。其中一个示例是IIS中的。在这种情况下,操作系统本身管理帐户密码