내 서버 asp .Net 어플리케이션 (C#)이 호스트 된 다른 서버에서 원격 서버 파일에 액세스하는 데 어려움을 겪고 있습니다. 시나리오는 다음과 같습니다.경로에 대한 액세스가 거부되어 원격 서버 파일에 액세스하려고 시도했습니다.
SERVER A에서 호스팅되는 MVC 웹 응용 프로그램을 작성했습니다. 어떤 경우에는 사용자가 SERVER B에있는 XML 구성 파일을 수정하도록해야합니다. 따라서 여기에 서버 B의 공유 폴더에서 해당 파일을 읽는 코드 부분이 있습니다.
당신이 볼 수있는 것처럼Access to the path '\\SERVERB\Folder\configurationFile.exe.config' is denied
, 나는 ': -
(C#을 컨트롤러) 내가 그 구성 파일을 열려고하면
WindowsImpersonationContext impContext = null;
try
{
impContext = NetworkSecurity.ImpersonateUser(
Settings.Default.ImpersonationDomain,
Settings.Default.ImpersonationUser,
Settings.Default.ImpersonationPass,
LogonType.LOGON32_LOGON_NETWORK,
LogonProvider.LOGON32_PROVIDER_DEFAULT);
}
catch (ApplicationException ex)
{
// write to log file
}
if (null != impContext)
{
try
{
//get the location of the configuration file
string remoteConfigFile = Settings.Default.RemoteDesktopMonitorCnfgFile;
//open the configuration file
XDocument xmlFile = XDocument.Load(@"\\SERVERB\Folder\configurationFile.exe.config");
그래서, 내 예외 나는 예외를 받고 있어요, 여기 내가 파일을 읽으려고하기 전에 사용자를 사칭하여 그 가장이 잘 된 것; 이미 내가 가장하고있는 사용자에게 공유 리소스에 대한 전체 액세스 권한을 부여했습니다. 나는 그 사용자를 두 서버 (A와 B)의 Administrators 그룹에 합류 시켜도 동일한 예외가 발생합니다.
두 서버가 모두 동일한 Windows 도메인에 있고 도메인에있는 사용자 계정을 사용하고 있고 암호가 정확한 것일 수도 있습니다.
당신이 도와 주시면 감사하겠습니다.
미리 감사드립니다.
고맙습니다. 필자는 검색에 적절한 키워드를 사용하지 않았습니다. – lidermin