Использование веб-консоли Windows PowerShell

Обновлено: 24 июня 2013 г.

Область применения: Windows Server 2012 R2, Windows Server 2012

Windows PowerShell Web Access предоставляет пользователям возможность войти на защищенный веб-сайт, чтобы использовать сеансы, командлеты и сценарии Windows PowerShell для управления удаленным компьютером.

Так как консоль Windows PowerShell выполняется в веб-браузере, ее можно открыть на разных клиентских устройствах (подходят почти все устройства, на которых есть браузеры).

Веб-консоль Windows PowerShell ориентирована на работу с удаленным компьютером, который пользователь указывает в процессе выполнения входа.

В этом разделе рассказывается о том, как выполнить вход и приступить к использованию веб-консоли Windows PowerShell Web Access.

Данный раздел не касается способов использования Windows PowerShell или выполнения командлетов или сценариев. Сведения об использовании Windows PowerShell и ресурсах сценариев см. в разделе "См. также" в конце этого раздела.

Поддерживаемые браузеры и клиентские устройства

Windows PowerShell Web Access поддерживает перечисленные ниже веб-браузеры. Хотя браузеры для мобильных устройств официально не поддерживаются, многие из них могут выполнять веб-консоль Windows PowerShell. Ожидается, что другие браузеры, которые принимают куки-файлы, выполняют JavaScript и выполняют веб-сайты HTTPS, также будут работать, но официально они не протестированы.

Поддерживаемые браузеры для настольных компьютеров

  • Windows Internet Explorer для Microsoft Windows 8.0, 9.0, 10.0 и 11.0
  • Mozilla Firefox 10.0.2
  • Google Chrome 17.0.963.56m для Windows
  • Apple Safari 5.1.2 для Windows
  • Apple Safari 5.1.2 для Mac OS

Минимально протестированные мобильные устройства или браузеры

  • Windows Phone 7 и 7.5
  • Google Android WebKit 3.1 Browser Android 2.2.1 (Kernel 2.6)
  • Apple Safari для операционной системы 5.0.1 для iPhone
  • Apple Safari для операционной системы 5.0.1 для iPad 2

Требования к браузеру

Чтобы использовать веб-консоль Windows PowerShell Web Access, браузеры должны иметь следующие возможности.

  • Разрешать файлы cookie с веб-сайта шлюза Windows PowerShell Web Access.
  • Открывать и читать HTTPS-страницы.
  • Открывать и выполнять веб-сайты, использующие JavaScript.

Вход в систему Windows PowerShell Web Access

Администратор Windows PowerShell Web Access должен предоставить вам URL-адрес веб-сайта шлюза Windows PowerShell Web Access для вашей организации. По умолчанию этот адрес веб-сайта имеет значение https://<server_name>/pswa.

Прежде чем выполнить вход в Windows PowerShell Web Access, убедитесь, что у вас есть имя или IP-адрес удаленного компьютера, который предполагается администрировать. Вы должны быть полномочным пользователем удаленного компьютера, а компьютер должен быть настроен для удаленного администрирования. Дополнительные сведения о настройке компьютера для удаленного администрирования см. в разделе Включение и использование удаленных команд в Windows PowerShell.

Самый простой способ настройки компьютера для удаленного управления — запуск Enable-PSRemoting -force командлета на компьютере в сеансе Windows PowerShell, который был открыт с повышенными правами пользователя (запуск от имени администратора).

Вход в систему Windows PowerShell Web Access

  1. Откройте веб-сайт Windows PowerShell Web Access в браузере или на вкладке.

  2. На странице входа Windows PowerShell Web Access укажите имя пользователя сети, пароль и имя компьютера, который вы хотите администрировать (вы должны быть полномочным пользователем этого компьютера). Если администратор Windows PowerShell Web Access проинструктировал о необходимости использовать вместо имени компьютера URI-адрес пользовательского сайта или прокси-сервера, выберите URI подключения в поле Тип подключения, а затем укажите URI.

    Примечание

    • Если конечный компьютер входит в рабочую группу, то для входа в систему необходимо указать имя пользователя в следующем формате: <workgroup_name>\<user_name>.
    • Если конечный компьютер является сервером шлюза, то в поле "Имя компьютера" можно указать localhost.
    • Если конечный компьютер является сервером шлюза и входит в рабочую группу, в поле "Имя пользователя" необходимо указать <workgroup name>\<user_name>. В поле "Имя компьютера" можно использовать localhost.
  3. Раздел Дополнительные параметры подключения касается требований к проверке подлинности удаленного компьютера, который предполагается администрировать. Дополнительные сведения о параметрах, эквивалентных необязательным параметрам подключения, см. в справке командлета Enter-PSSession .

    Как правило, учетные данные, которые передаются через шлюз Windows PowerShell Web Access, — это те же данные, которые принимаются удаленным компьютером, который предполагается администрировать. Тем не менее, если для администрирования удаленного компьютера, указанного на шаге 2, необходимо использовать другие учетные данные, разверните раздел Дополнительные параметры подключения и укажите альтернативные учетные данные. В противном случае переходите к шагу 6.

  4. Если администратор Windows PowerShell Web Access создал пользовательскую конфигурацию сеанса для пользователей Windows PowerShell Web Access, укажите имя данной пользовательской конфигурации в поле Имя конфигурации. Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.

  5. Не изменяйте значение Тип проверки подлинности (По умолчанию), если администратор Windows PowerShell Web Access не выдал вам иные инструкции.

  6. Нажмите кнопку Вход.

Выход из системы и превышение времени ожидания

Любое из следующих действий приводит к завершению сеанса Windows PowerShell.

  • Нажатие кнопки Выйти в правом нижнем углу консоли. (только для Windows Server 2012)

  • Нажатие кнопки Сохранить или Выход в правом нижнем углу консоли (только в Windows Server 2012 R2). При нажатии кнопки Сохранить ваш сеанс Windows PowerShell Web Access сохраняется и закрывается; позднее вы можете заново подключиться к этому сеансу. При повторном входе в Windows PowerShell Web Access отображается список сохраненных сеансов; вы можете выбрать сохраненный сеанс и повторно подключиться к нему или начать новый сеанс. Максимальное количество сеансов, как сохраненных, так и активных, которое разрешено открывать пользователю, настраивается администратором шлюза.

    При нажатии кнопки Выход вы выходите из сеанса Windows PowerShell Web Access без его сохранения.

  • Попытка войти в систему для администрирования другого удаленного компьютера в том же сеансе браузера или в новой вкладке того же сеанса. (Это не применяется, если сервер шлюза работает Windows Server 2012 R2; Windows PowerShell Web Access, запущенная на Windows Server 2012 R2, разрешает несколько пользовательских сеансов на новых вкладках в одном сеансе браузера.) Дополнительные сведения об использовании нескольких активных сеансов на одном компьютере см. в разделе "Подключение к нескольким целевым компьютерам одновременно" в разделе "Ограничения веб-консоли" этого раздела.

  • 20 минут бездействия в сеансе. Администратор шлюза может настроить период времени ожидания бездействия; Дополнительные сведения см. в разделе "Управление сеансами".

    • Если вы отключились от сеанса в веб-консоли в результате сетевых ошибок или другого незапланированного завершения работы или сбоя, а не потому, что сами закрыли свой сеанс, этот сеанс Windows PowerShell Web Access продолжает работать, оставаясь подключенными к целевому компьютеру, пока не истечет время ожидания на стороне клиента. По умолчанию это время ожидания составляет 20 минут и настраивается администратором шлюза. Сеанс отключается после истечения либо 20 минут, установленных по умолчанию, либо времени ожидания, заданного администратором шлюза, в зависимости от того, какой период короче.

      Если сервер шлюза работает под управлением Windows Server 2012 R2, Windows PowerShell Web Access предоставляет пользователям возможность повторного подключения к сохраненным сеансам позднее, но пользователи не смогут увидеть сохраненные сеансы и повторно к ним подключиться, пока не истечет время ожидания, заданное администратором шлюза.

  • Закрытие окна или вкладки браузера.

  • Выключение клиентского устройства, на котором открыт браузер или отключение его от сети.

  • Выполнение команды Exit в веб-консоли. Эта команда не действует, если в конфигурации сеанса, которая используется для подключения, настроена поддержка режима NoLanguage или пространство выполнения ограничено.

Если необходимо снова выполнить вход, откройте веб-страницу Windows PowerShell Web Access и войдите, выполнив процедуру, описанную в разделе Вход в систему Windows PowerShell Web Access этой статьи.

Отличительные особенности веб-консоли Windows PowerShell

После входа в Windows PowerShell Web Access веб-консоль Windows PowerShell откроется в окне или вкладке браузера. Так как консоль подключена к удаленному компьютеру, указанному во время входа, в консоли могут использоваться только те Windows PowerShell командлеты или скрипты, которые доступны на удаленном компьютере. В этом разделе описываются другие ограничения консолей Windows PowerShell Web Access, а также различия между консолями Windows PowerShell Web Access и установленной консолью PowerShell.exe.

Принципиальные функциональные отличия от PowerShell.exe

Большая часть базового функционала Windows PowerShell доступна в веб-консоли Windows PowerShell Web Access, но некоторые функции все же отсутствуют.

  • Многоуровневое отображение хода выполнения.

    Windows PowerShell Web Access отображает элемент управления пользовательского интерфейса "Ход выполнения" для командлетов, которые сообщают о ходе выполнения, но выводится только информация верхнего уровня.

  • Изменение цветов ввода.

    Цвета ввода (фоновый и основной) нельзя изменить. Стиль вывода, предупреждения, подробности и сообщения об ошибках можно изменить путем выполнения сценария.

  • PSHostRawUserInterface.

    Windows PowerShell Web Access реализуется через удаленное управление Windows PowerShell и использует удаленное пространство выполнения. Windows PowerShell Web Access в своем интерфейсе не реализует ряд методов, например любые команды, осуществляющие запись в консоль Windows. Такие команды как PowerTab в Windows PowerShell Web Access не работают.

  • Сочетания клавиш.

    Windows PowerShell Web Access не поддерживает некоторые сочетания клавиш, во многих случаях потому, что эти клавиши зарезервированы для команд браузера.

Неподдерживаемые сочетания клавиш

Сочетания клавиш Действие
CTRL+C В Windows PowerShell Web Access для копирования содержимого с помощью браузера используется сочетание клавиш Ctrl+C. Для отмены команд в консоли имеется кнопка Отмена; кроме этой кнопки пользователи могут использовать клавиши CTRL+Q.
ALT-ПРОБЕЛ, e, l Прокрутка буфера экрана
ALT+ПРОБЕЛ, e, f Поиск текста в буфере экрана
ALT+ПРОБЕЛ, e, k Выбор текста для копирования из буфера экрана
ALT+ПРОБЕЛ, e, p Вставка содержимого буфера обмена в консоль Windows PowerShell
ALT+ПРОБЕЛ, c Закрытие консоли Windows PowerShell
CTRL+BREAK. Принудительное закрытие окна Windows PowerShell
CTRL+HOME Удаление символов с начала текущей командной строки до курсора
CTRL+END Удаление символов от курсора до конца командной строки
F1 Перемещение курсора в командной строке на один символ вправо
F2 Создание новой команды посредством копирования последней команды до текущего символа
F3 Завершение командной строки посредством вставки содержимого последней командной строки
F4 Удаление символов в позиции курсора
F5 Просмотр введенных ранее команд. Для доступа к введенным ранее командам в Windows PowerShell Web Access нажмите кнопку прокрутки Журнал в веб-консоли.
F7 Интерактивный выбор команд из журнала команд
F8 Просмотр журнала с выводом команд, содержащих текущий текст
F9 Запуск команды с определенным номером в журнале
PAGE UP Запуск первой команды в журнале
PAGE DOWN Запуск последней команды в журнале
ALT+F7 Очистка списка журнала команд

Ограничения веб-консоли

  • Двойной прыжок

    Вы можете столкнуться с ограничением двойного прыжка (или подключения ко второму компьютеру из первого подключения) при попытке создания нового сеанса с помощью Windows PowerShell Web Access или работы в нем. Windows PowerShell Web Access использует удаленное пространство выполнения, и на данный момент PowerShell.exe не поддерживает установление удаленного подключения ко второму компьютеру из удаленного пространства выполнения. При попытке подключиться ко второму удаленному компьютеру из существующего подключения, например, с помощью командлета Enter-PSSession, возможно возникновение различных ошибок типа "Не удается получить сетевые ресурсы".

    Чтобы избежать ошибок двойного подключения, администратор должен настроить в сетевой среде организации проверку подлинности CredSSP. Дополнительные сведения о настройке проверки подлинности CredSSP см. в разделе CredSSP для удаленного взаимодействия второго прыжка в блоге PowerShell. Кроме того, можно также явно указать учетные данные для администрирования второго удаленного компьютера; неявное указание учетных данных для двойного подключения вряд ли позволит выполнить второе подключение.

  • Удаленное взаимодействие

    В Windows PowerShell Web Access используются и действуют те же ограничения, как и в удаленном сеансе Windows PowerShell. Команды, которые напрямую вызывают API консоли Windows, например команды для консольных редакторов или программы текстовых меню, не действуют, поскольку эти команды не могут выполнять чтение или запись в стандартный ввод, вывод и каналы ошибок. Следовательно, команды, запускающие исполняемые файлы, например notepad.exe, или отображающие графический интерфейс пользователя, например OpenGridView или ogv, также не работают. Это поведение влияет на взаимодействие с пользователем; создается впечатление, что Windows PowerShell Web Access не реагирует на команды.

  • Заполнение нажатием клавиши TAB

    Заполнение нажатием клавиши TAB не действует в сеансах, сконфигурированных для работы в ограниченном пространстве выполнения или в режиме NoLanguage. Хотя администраторы могут настроить поддержку заполнения клавишей TAB для сеанса, этого не рекомендуется делать из соображений безопасности, потому что случайный пользователь сможет получить несанкционированный доступ к следующим сведениям.

    • Внутренние пути файловой системы
    • Общие папки на внутренних компьютерах
    • Переменные в пространстве выполнения
    • Загруженные типы пространств имен или пространства имен .NET Framework
    • Переменные среды
  • Сеанс NoLanguage или ограниченное пространство выполнения

    Пользователи, выполнившие вход в конфигурацию сеанса NoLanguage или в ограниченное пространство выполнения в Windows PowerShell Web Access, не могут запустить команду Exit для завершения сеанса. Для выхода такие пользователи должны нажать кнопку Выйти на странице консоли.

  • Одновременное подключение к нескольким целевым компьютерам.

    Если сервер шлюза работает под управлением Windows Server 2012, Windows PowerShell Web Access разрешает только одно подключение к удаленному компьютеру в одном сеансе браузера; пользователям не разрешается выполнить один вход и подключиться к нескольким удаленным компьютерам, используя отдельные вкладки браузера. Если вы откроете новую вкладку или новое окно браузера, Windows PowerShell Web Access предложит вам завершить текущий сеанс и начать новый, чтобы обеспечить возможность подключения к новому (или тому же) удаленному компьютеру. Если все же желательно запустить два или более отдельных сеансов для разных удаленных компьютеров, в Internet Explorer есть средство, с помощью которого можно начать новый сеанс. Чтобы начать новый сеанс браузера в Internet Explorer, нажмите клавишу ALT, откройте меню Файл, а затем выберите Новый сеанс. Затем откройте веб-сайт Windows PowerShell Web Access в этом новом сеансе и выполните вход, чтобы получить доступ к другому удаленному компьютеру.

    Если шлюз Windows PowerShell Web Access работает под управлением Windows Server 2012 R2, пользователи могут открывать несколько подключений к удаленным компьютерам на разных вкладках браузера. Если вы хотите открыть несколько подключений к удаленному компьютеру с помощью веб-консоли Windows PowerShell, узнайте у вашего администратора шлюза Windows PowerShell Web Access, поддерживается ли эта функциональность сервером шлюза.

  • Постоянные сеансы Windows PowerShell (повторное подключение).

    После истечения времени ожидания шлюза Windows PowerShell Web Access удаленное подключение между шлюзом и целевым компьютером закрывается. При этом прекращается выполнение всех командлетов или сценариев. При выполнении продолжительных задач рекомендуется использовать инфраструктуру -Job Windows PowerShell, чтобы можно было запустить задания, отключиться от компьютера, а затем снова подключиться без прекращения выполнения заданий. Еще одним преимуществом использования командлетов -Job является то, что вы можете запустить их с помощью Windows PowerShell Web Access, выйти из системы, а затем повторно подключиться позже, запустив Windows PowerShell Web Access или другой узел (например, Windows PowerShell интегрированная среда сценариев (ISE)). .

  • Изменение размеров окна консоли.

    Размеры окна консоли PowerShell.exe можно изменить следующими тремя способами.

    • Отрегулировать размер окна консоли при помощи мыши.

    • Изменить свойства "высота" и "ширина" при помощи пользовательского интерфейса для изменения свойств консоли.

    • Изменить высоту и ширину окна консоли при помощи командлета.

      Далее показано, как настроить окно консоли для Windows PowerShell Web Access при помощи командлетов. В следующем примере пользователь изменяет ширину консоли Windows PowerShell Web Access на 20.

      $newSize = $Host.UI.RawUI.WindowSize
      $newSize.Width = $newSize.Width - 20
      $oldSize = $Host.UI.RawUI.WindowSize
      $Host.UI.RawUI.WindowSize = $newSize
      

      Таким же способом изменяется высота окна консоли.

      Дополнительные примеры настройки представления консоли доступны в блоге Windows PowerShell команды.

См. также: