Поделиться через


Connect-WSMan

Подключается к службе WinRM на удаленном компьютере.

Синтаксис

Connect-WSMan
       [-ApplicationName <String>]
       [[-ComputerName] <String>]
       [-OptionSet <Hashtable>]
        [-Port <Int32>]
       [-SessionOption <SessionOption>]
       [-UseSSL]
       [-Credential <PSCredential>]
        [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [<CommonParameters>]
Connect-WSMan
       [-ConnectionURI <Uri>]
       [-OptionSet <Hashtable>]
       [-Port <Int32>]
        [-SessionOption <SessionOption>]
       [-Credential <PSCredential>]
        [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [<CommonParameters>]

Описание

Командлет Connect-WSMan подключается к службе WinRM на удаленном компьютере и устанавливает постоянное подключение к удаленному компьютеру. Этот командлет можно использовать в контексте поставщика WSMan для подключения к службе WinRM на удаленном компьютере. Однако этот командлет можно также использовать для подключения к службе WinRM на удаленном компьютере перед переходом на поставщик WSMan. Удаленный компьютер отображается в корневом каталоге поставщика WSMan.

Явные учетные данные требуются, если клиентские и серверные компьютеры находятся в разных доменах или рабочих группах.

Сведения об отключении службы WinRM на удаленном компьютере см. в командлете Disconnect-WSMan.

Примеры

Пример 1. Подключение к удаленному компьютеру

PS C:\> Connect-WSMan -ComputerName "server01"
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir

WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan

ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

Эта команда создает подключение к удаленному компьютеру server01.

Командлет Connect-WSMan обычно используется в контексте поставщика WSMan для подключения к удаленному компьютеру, в этом случае компьютер server01. Однако командлет можно использовать для установления подключений к удаленным компьютерам перед переходом на поставщик WSMan. Эти подключения отображаются в списке ComputerName.

Пример 2. Подключение к удаленному компьютеру с помощью учетных данных администратора

PS C:\> $cred = Get-Credential Administrator
PS C:\> Connect-WSMan -ComputerName "server01" -Credential $cred
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir

WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan

ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

Эта команда создает подключение к удаленной системе server01 с помощью учетных данных учетной записи администратора.

Первая команда использует командлет Get-Credential для получения учетных данных администратора, а затем сохраняет их в переменной $cred. Get-Credential запрашивает пароль имени пользователя и пароля в диалоговом окне или в командной строке в зависимости от параметров системного реестра.

Вторая команда использует параметр Credential для передачи учетных данных, хранящихся в $cred, в Connect-WSMan. Connect-WSMan затем подключается к удаленному серверу системы с помощью учетных данных администратора.

Пример 3. Подключение к удаленному компьютеру через указанный порт

PS C:\> Connect-WSMan -ComputerName "server01" -Port 80
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir

WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

Эта команда создает подключение к удаленному компьютеру server01 через порт 80.

Пример 4. Подключение к удаленному компьютеру с помощью параметров подключения

PS C:\> $a = New-WSManSessionOption -OperationTimeout 30000
PS C:\> Connect-WSMan -ComputerName "server01" -SessionOption $a
PS C:\> cd wsman:
PS WSMan:\> dir

WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

В этом примере создается подключение к удаленному компьютеру server01 с помощью параметров подключения, определенных в команде New-WSManSessionOption.

Первая команда использует New-WSManSessionOption для хранения набора параметров подключения в переменной $a. В этом случае параметры сеанса задают время подключения от 30 секунд (30 000 миллисекунд).

Вторая команда использует параметр SessionOption для передачи учетных данных, хранящихся в переменной $a, в Connect-WSMan. Затем Connect-WSMan подключается к удаленному компьютеру server01 с помощью указанных параметров сеанса.

Параметры

-ApplicationName

Указывает имя приложения в соединении. Значением по умолчанию параметра ApplicationName является WSMAN. Полный идентификатор удаленной конечной точки имеет следующий формат:

<Transport>://<Server>:<Port>/<ApplicationName>

Например, http://server01:8080/WSMAN

Службы IIS, на которых размещен сеанс, пересылает запросы с этой конечной точкой в указанное приложение. Этот параметр по умолчанию WSMAN подходит для большинства используемых. Этот параметр предназначен для использования, если многие компьютеры устанавливают удаленные подключения к одному компьютеру под управлением Windows PowerShell. В этом случае службы IIS размещают веб-службы для управления (WS-Management) для повышения эффективности.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Authentication

Указывает механизм проверки подлинности, используемый на сервере. Допустимые значения для этого параметра:

  • Basic. Базовый — это схема, в которой имя пользователя и пароль отправляются на сервер или прокси-сервер.
  • Default. Используйте метод проверки подлинности, реализованный протоколом WS-Management. Это значение по умолчанию.
  • Digest . Дайджест — это схема ответа на вызов, которая использует строку данных, указанную сервером для задачи.
  • Kerberos — клиентский компьютер и сервер взаимно проходят проверку подлинности с помощью сертификатов Kerberos.
  • Negotiate. Согласование — это схема ответа на вызовы, которая согласовывается с сервером или прокси-сервером, чтобы определить схему, используемую для проверки подлинности. Например, это значение параметра позволяет определить, используется ли протокол Kerberos или NTLM.
  • CredSSP — используйте проверку подлинности поставщика поддержки безопасности учетных данных (CredSSP), которая позволяет пользователю делегировать учетные данные. Этот параметр предназначен для команд, которые выполняются на одном удаленном компьютере, но собирают данные из других удаленных компьютеров или выполняют дополнительные команды.

Осторожность

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

Тип:AuthenticationMechanism
Aliases:auth, am
Допустимые значения:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-CertificateThumbprint

Указывает сертификат цифрового открытого ключа (X509) учетной записи пользователя, которая имеет разрешение на выполнение этого действия. Введите отпечаток сертификата.

Сертификаты используются в проверке подлинности на основе сертификатов клиента. Их можно сопоставить только с локальными учетными записями пользователей; Они не работают с учетными записями домена.

Чтобы получить отпечаток сертификата, используйте команду Get-Item или Get-ChildItem на диске Windows PowerShell Cert.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ComputerName

Указывает компьютер, на котором выполняется операция управления. Это значение может быть полным доменным именем, именем NetBIOS или IP-адресом. Используйте имя локального компьютера, используйте localhost или используйте точку (.) для указания локального компьютера. Локальный компьютер по умолчанию. Если удаленный компьютер находится в другом домене от пользователя, необходимо использовать полное доменное имя. Можно передать значение для этого параметра командлету.

Тип:String
Aliases:cn
Position:0
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ConnectionURI

Указывает конечную точку подключения. Формат этой строки выглядит следующим образом:

<Transport>://<Server>:<Port>/<ApplicationName>

Следующая строка является правильно отформатированным значением для этого параметра:

http://Server01:8080/WSMAN

Универсальный код ресурса (URI) должен быть полным.

Тип:Uri
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Credential

Указывает учетную запись пользователя, которая имеет разрешение на выполнение этого действия. По умолчанию используется текущий пользователь. Введите имя пользователя, например User01, Domain01\User01или User@Domain.com. Или введите объект PSCredential, например объект, возвращаемый командлетом Get-Credential. При вводе имени пользователя этот командлет запрашивает пароль.

Тип:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-OptionSet

Задает набор коммутаторов в службу для изменения или уточнения характера запроса. Эти параметры похожи на параметры, используемые в оболочках командной строки, так как они относятся к службе. Можно указать любое количество параметров.

В следующем примере показан синтаксис, который передает значения 1, 2 и 3 для параметров a, b и c:

-OptionSet @{a=1;b=2;c=3}

Тип:Hashtable
Aliases:os
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Port

Указывает порт, используемый при подключении клиента к службе WinRM. Если транспорт имеет значение HTTP, порт по умолчанию — 80. Если транспорт имеет значение HTTPS, порт по умолчанию — 443.

При использовании HTTPS в качестве транспорта значение параметра ComputerName должно соответствовать общему имени сертификата сервера (CN). Однако если параметр SkipCNCheck указан как часть параметра SessionOption, общее имя сертификата сервера не обязательно совпадает с именем узла сервера. Параметр skipCNCheck должен использоваться только для доверенных компьютеров.

Тип:Int32
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-SessionOption

Задает расширенные параметры сеанса WS-Management. Введите объект SessionOption, создаваемый с помощью командлета New-WSManSessionOption. Дополнительные сведения о доступных параметрах введите Get-Help New-WSManSessionOption.

Тип:SessionOption
Aliases:so
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-UseSSL

Указывает, что протокол SSL используется для установления подключения к удаленному компьютеру. По умолчанию SSL не используется.

WS-Management шифрует все содержимое Windows PowerShell, передаваемое по сети. Параметр UseSSL позволяет указать дополнительную защиту HTTPS вместо HTTP. Если ssl недоступен на порту, используемом для подключения, и укажите этот параметр, команда завершается ошибкой.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

None

Этот командлет не возвращает выходные данные.

Примечания

Команды управления или данные управления запросами можно выполнять на удаленном компьютере без создания сеанса WS-Management. Это можно сделать с помощью параметров ComputerName Invoke-WSManAction и Get-WSManInstance. При использовании параметра ComputerName Windows PowerShell создает временное соединение, используемое для одной команды. После выполнения команды соединение закрывается.