Связь между сайтом и окнами - PullRequest
0 голосов
/ 25 июня 2018

Это общий вопрос, как решить эту проблему.

Для получения технической степени я хотел бы создать своего рода приложение для веб-сайта, которое будет подключать Windows-машину, отправить запрос в powershell, например, get-process, ив конце отобразите его на веб-сайте.

Я не уверен, можно ли так изменить PowerShell Web Access, есть ли другое решение?

Как сервис, с которым я мог бы общаться?

-mateusz

1 Ответ

0 голосов
/ 25 июня 2018

Вы можете использовать пространства выполнения Powershell, это пример, но в вашем случае вам, возможно, придется изменить его для методов аутентификации, которые вы должны использовать ...

PSCredential credential = new PSCredential(user, secure_pw);

WSManConnectionInfo connectionInfo = new WSManConnectionInfo();
connectionInfo.AuthenticationMechanism = AuthenticationMechanism.Credssp;
connectionInfo.ProxyAuthentication = AuthenticationMechanism.Negotiate;
connectionInfo.OperationTimeout = 4 * 60 * 1000; // 4 minutes.
connectionInfo.OpenTimeout = 1 * 60 * 1000; // 1 minute.
connectionInfo.Credential = credential;

Runspace rs = RunspaceFactory.CreateRunspace(connectionInfo);

rs.Open();
using (PowerShell PowerShellInstance = PowerShell.Create())
{
    string hostname = "my-host";
    PowerShellInstance.Runspace = rs;
    PowerShellInstance.AddScript(string.Format("param([string]$hostname) Get-Process -ComputerName $hostname"))
    PowerShellInstance.AddParameter("hostname", hostname);

    // invoke execution on the pipeline (collecting output)
    Collection<PSObject> PSOutput = PowerShellInstance.Invoke();

    // do something with the errors found.
    if (PowerShellInstance.Streams.Error.Count > 0)
    {
        foreach (var error in PowerShellInstance.Streams.Error)
        {
            Console.WriteLine(error.Exception.Message);
        }
    }
}

rs.Dispose();

Если вы сделаете это таким образом, я рекомендую вам немного изучить PowerShellInstance.AddScript против PowerShellInstance.AddCommand, а также способы обработки параметров и т. Д. ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...