Проверка подлинности для удаленных подключений
Windows удаленное управление обеспечивает безопасность обмена данными между компьютерами, поддерживая несколько стандартных методов проверки подлинности и шифрования сообщений.
Доступ к группам по умолчанию
Во время установки WinRM создает локальную группу WinRMRemoteWMIUsers__. Затем WinRM ограничивает удаленный доступ к любому пользователю, который не является членом локальной группы администрирования или группы WinRMRemoteWMIUsers__ . Вы можете добавить локального пользователя, пользователя домена или группу доменов в WinRMRemoteWMIUsers__ , введя net localgroup WinRMRemoteWMIUsers__ /add <domain>\<username> в командной строке. При необходимости можно использовать групповая политика для добавления пользователя в группу.
Проверка подлинности по умолчанию Параметры
Учетные данные по умолчанию, имя пользователя и пароль являются учетными данными для учетной записи пользователя, вошедшего в систему, которая запускает скрипт.
Изменение другой учетной записи на удаленном компьютере
- Укажите учетные данные в объекте ConnectionOptions или IWSManConnectionOptions и предоставьте его вызову CreateSession .
- Задайте WSManFlagCredUserNamePassword в параметре flags в вызове CreateSession .
В следующем списке содержится список действий, возникающих при выполнении скрипта или приложения с учетными данными по умолчанию:
- Kerberos — это метод проверки подлинности по умолчанию, если клиент находится в домене, а строка удаленного назначения не является одной из следующих: localhost, 127.0.0.1 или [::1].
- Согласование — это метод по умолчанию, если клиент не находится в домене, но строка удаленного назначения является одной из следующих: localhost, 127.0.0.1 или [::1].
Если вы предоставляете явные учетные данные с помощью объекта ConnectionOptions , метод Negotiate является методом по умолчанию. Согласование проверки подлинности определяет, является ли текущий метод проверки подлинности Kerberos или NTLM, в зависимости от того, находятся ли компьютеры в домене или рабочей группе. При подключении к удаленному целевому компьютеру с помощью локальной учетной записи учетная запись должна иметь префикс с именем компьютера. Например, myComputer\myUsername.
Если вы указываете Negotiate, Digest или Basic authentication и не предоставляете объект ConnectionOptions, появится сообщение об ошибке, указывающее, что требуются явные учетные данные. Если протокол HTTPS не является транспортом, целевой удаленный компьютер должен быть настроен в списке доверенных хост-компьютеров.
Дополнительные сведения о типах проверки подлинности, включенных в параметрах конфигурации по умолчанию, см. в разделе "Установка и настройка" для Windows удаленного управления.
Обычная проверка подлинности
Чтобы явно установить обычную проверку подлинности в вызове WSMan.CreateSession, задайте флаги WSManFlagUseBasic и WSManFlagCredUserNamePassword в параметре flags. Обычная проверка подлинности отключена в параметрах конфигурации по умолчанию для клиента WinRM и сервера WinRM.
Дайджест-проверка подлинности
Чтобы явно установить дайджест-проверку подлинности в вызове WSMan.CreateSession, задайте флаг WSManFlagUseDigest в параметре flags . Дайджест не поддерживается. Его нельзя настроить для компонента сервера WinRM.
Согласование проверки подлинности
Чтобы явно установить проверку подлинности Negotiate, также называемую Windows встроенной проверкой подлинности, в вызове WSMan.CreateSession установите флаг WSManFlagUseNegotiate в параметре flags.
Контроль учетных записей (UAC) влияет на доступ к службе WinRM. При использовании проверки подлинности Negotiate в рабочей группе доступ к службе может получить только встроенная учетная запись администратора. Чтобы разрешить всем учетным записям в группе "Администраторы" доступ к службе, задайте следующее значение реестра:
HKEY_LOCAL_MACHINE\ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ\Microsoft\\ Windows CurrentVersionPoliciesSystemLocalAccountTokenFilterPolicy\\\ = 1
Проверка подлинности Kerberos
Чтобы явно установить проверку подлинности Kerberos в вызове WSMan.CreateSession, установите флаг WSManFlagUseKerberos в параметре flags . Клиент и серверные компьютеры должны быть присоединены к домену. Если в качестве метода проверки подлинности используется Kerberos, в вызове WSMan.CreateSession или IWSMan::CreateSession нельзя использовать IP-адрес.
Проверка подлинности на основе сертификата клиента
Чтобы установить проверку подлинности на основе сертификатов клиента в вызове WSMan.CreateSession, установите флаг WSManFlagUseClientCertificate в параметре flags .
Сначала необходимо включить проверку подлинности на основе сертификата на клиенте и службе с помощью программы командной строки Winrm. Дополнительные сведения см. в разделе "Включение параметров проверки подлинности". Кроме того, необходимо создать запись в таблице CertMapping на компьютере сервера WinRM. Это устанавливает сопоставление между одним или несколькими сертификатами и локальной учетной записью. После использования сертификата для проверки подлинности и авторизации соответствующая локальная учетная запись используется для операций, выполняемых службой WinRM.
Сопоставление можно создать для определенного URI ресурса. Дополнительные сведения, включая создание записи таблицы CertMapping, введите winrm help certmapping в командной строке.
Примечание
Максимальный размер сертификата, который может использовать WinRM в этом контексте, составляет 16 КБ.
Включение или отключение параметров проверки подлинности
Параметр проверки подлинности по умолчанию при установке системы — Kerberos. Дополнительные сведения см. в разделе "Установка и настройка" для Windows удаленного управления.
Если для скрипта или приложения требуется определенный метод проверки подлинности, который не включен, необходимо изменить конфигурацию, чтобы включить этот тип проверки подлинности. Это изменение можно внести с помощью программы командной строки Winrm или с помощью групповая политика для объекта групповая политика Windows удаленного управления. Вы также можете отключить определенные методы проверки подлинности.
Включение или отключение проверки подлинности с помощью средства Winrm
Чтобы задать конфигурацию для клиента WinRM, используйте команду Winrm Set и укажите клиент. Например, следующая команда отключает дайджест-проверку подлинности для клиента.
winrm set winrm/config/client/auth @{Digest="false"}
Чтобы задать конфигурацию для сервера WinRM, используйте команду Winrm Set и укажите службу. Например, следующая команда включает проверку подлинности Kerberos для службы.
winrm set winrm/config/service/auth @{Kerberos="true"}
Связанные темы