У меня есть веб, приложение, сервер БД
Сервер приложений, на котором установлен Exe, будет выполнять некоторые операции.
когда я пытаюсь запустить Exe, который находится на сервере приложений через WMI-соединение с веб-сервера, пожалуйста, используйте код ниже
public void RunProcessOnRemoteMachine(string inputFolder, string ProcessName, string AppRun, string isRegression, string TemplateID, string isPreProcess, string UserLoginName, string DocYear,string remoteMachine,string strPathToTheExe)
{
string usernameAndDomain = "";
string password = "";
try
{
ConnectionOptions connOptions = new ConnectionOptions();
connOptions.Impersonation = ImpersonationLevel.Impersonate;
connOptions.EnablePrivileges = true;
if (Environment.MachineName.ToUpper() != remoteMachine.ToUpper())
{
}
ManagementScope manScope = new ManagementScope(String.Format(@"\\{0}\ROOT\CIMV2", remoteMachine), connOptions);
manScope.Connect();
ObjectGetOptions objectGetOptions = new ObjectGetOptions();
ManagementPath managementPath = new ManagementPath("Win32_Process");
ManagementClass processClass = new ManagementClass(manScope, managementPath, objectGetOptions);
ManagementBaseObject inParams = processClass.GetMethodParameters("Create");
inParams["CommandLine"] = strPathToTheExe + " " + "\"" + inputFolder + "\" \"" + ProcessName + "\" \"" + AppRun + "\" \"" + isRegression + "\" \"" + TemplateID + "\" \"" + isPreProcess + "\" \"" + UserLoginName + "\" \"" + DocYear+"\"";
ManagementBaseObject outParams = processClass.InvokeMethod("Create", inParams, null );
Cls_ErrorLog.Writelog("Creation of the process returned: " + outParams["returnValue"]);
Cls_ErrorLog.Writelog("Process ID: " + outParams["processId"]);
}
catch (Exception ex)
{
Cls_ErrorLog.Writelog("Exception occured in method RunProcessOnRemoteMachine : " + ex.Message + " - " + ex.StackTrace);
}
finally
{
}
}
Я установил Integrated Security = True в моей конфигурации Exe Config и Web, а также добавил этого пользователя в Sql Server Logins и дал права.
После того, как было установлено Соединение, которое EXe работает с теми же учетными данными (что мы установили в Identity в IIS) в Appserver, но ему не удалось подключиться к соединению с базой данных с теми же учетными данными
выдает Ошибка входа для пользователя 'NT AUTHORITY \ ANONYMOUS LOGON . но когда мы отслеживаем исполняемый файл с теми же учетными данными
когда мы запускаем Exe вручную на сервере приложений, он работает
Поэтому, пожалуйста, предложите решения
Заранее спасибо