Authentifizierung für Remoteverbindungen

Die Windows-Remoteverwaltung gewährleistet die Sicherheit für die Kommunikation zwischen Computern, indem mehrere Standardmethoden der Authentifizierung und Nachrichtenverschlüsselung unterstützt werden.

Standardgruppenzugriff

Während des Setups erstellt WinRM die lokale Gruppe WinRMRemoteWMIUsers__. WinRM schränkt dann den Remotezugriff auf jeden Benutzer ein, der weder Mitglied der lokalen Verwaltungsgruppe noch der WinRMRemoteWMIUsers__ -Gruppe ist. Sie können einen lokalen Benutzer, Domänenbenutzer oder eine Domänengruppe WinRMRemoteWMIUsers__ hinzufügen, indem Sie net localgroup WinRMRemoteWMIUsers__ /add <domain>\<username> an der Eingabeaufforderung eingeben. Optional können Sie die Gruppenrichtlinie verwenden, um der Gruppe einen Benutzer hinzuzufügen.

Standardauthentifizierungseinstellungen

Die Standardanmeldeinformationen, der Benutzername und das Kennwort sind die Anmeldeinformationen für das angemeldete Benutzerkonto, das das Skript ausführt.

So wechseln Sie zu einem anderen Konto auf einem Remotecomputer

  1. Geben Sie die Anmeldeinformationen in einem ConnectionOptions- oder IWSManConnectionOptions-Objekt an, und geben Sie diese an den CreateSession-Aufruf an.
  2. Legen Sie das WSManFlagCredUserNamePassword im Flags-Parameter im CreateSession-Aufruf fest.

Die folgende Liste enthält eine Liste der Vorgänge, die auftreten, wenn ein Skript oder eine Anwendung unter den Standardanmeldeinformationen ausgeführt wird:

  • Kerberos ist die Standardauthentifizierungsmethode, wenn sich der Client in einer Domäne befindet und die Remotezielzeichenfolge nicht eine der folgenden ist: localhost, 127.0.0.1 oder [::1].
  • Negotiate ist die Standardmethode, wenn sich der Client nicht in einer Domäne befindet, aber die Remotezielzeichenfolge eine der folgenden ist: localhost, 127.0.0.1 oder [::1].

Wenn Sie explizite Anmeldeinformationen mit einem ConnectionOptions-Objekt angeben, ist Negotiate die Standardmethode. Die Aushandlung der Authentifizierung bestimmt, ob die laufende Authentifizierungsmethode Kerberos oder NTLM ist, je nachdem, ob sich die Computer in einer Domäne oder Arbeitsgruppe befinden. Wenn Sie mithilfe eines lokalen Kontos eine Verbindung mit einem Remotezielcomputer herstellen, sollte dem Konto der Computername vorangestellt werden. Beispiel: myComputer\myUsername.

Wenn Sie Negotiate, Digest oder Standardauthentifizierung angeben und ein ConnectionOptions-Objekt nicht bereitstellen können, erhalten Sie eine Fehlermeldung, die angibt, dass explizite Anmeldeinformationen erforderlich sind. Wenn HTTPS nicht der Transport ist, muss der Ziel-Remotecomputer in der Liste der vertrauenswürdigen Hostcomputer konfiguriert werden.

Weitere Informationen zu den Authentifizierungstypen, die in den Standardkonfigurationseinstellungen aktiviert sind, finden Sie unter Installation und Konfiguration für die Windows-Remoteverwaltung.

Standardauthentifizierung

Um die Standardauthentifizierung im Aufruf von WSMan.CreateSession explizit einzurichten, legen Sie die Flags WSManFlagUseBasic und WSManFlagCredUserNamePassword im flags-Parameter fest. Die Standardauthentifizierung ist in den Standardkonfigurationseinstellungen sowohl für den WinRM-Client als auch für den WinRM-Server deaktiviert.

Digestauthentifizierung

Um die Digestauthentifizierung im Aufruf von WSMan.CreateSession explizit einzurichten, legen Sie das WSManFlagUseDigest-Flag im flags-Parameter fest. Digest wird nicht unterstützt. Sie kann nicht für die WinRM-Serverkomponente konfiguriert werden.

Authentifizierung aushandeln

Um die Negotiate-Authentifizierung explizit einzurichten, die auch als integrierte Windows-Authentifizierung bezeichnet wird, legen Sie im Flags-Parameter WSManFlagUseNegotiate das WSManFlagUseNegotiate-Flag fest.

Die Benutzerkontensteuerung (User Account Control, UAC) wirkt sich auf den Zugriff auf den WinRM-Dienst aus. Wenn die Negotiate-Authentifizierung in einer Arbeitsgruppe verwendet wird, kann nur das integrierte Administratorkonto auf den Dienst zugreifen. Damit alle Konten in der Gruppe Administratoren auf den Dienst zugreifen können, legen Sie den folgenden Registrierungswert fest:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fenster\Currentversion\Politik\System\LocalAccountTokenFilterPolicy = 1

Kerberos-Authentifizierung

Um die Kerberos-Authentifizierung im Aufruf von WSMan.CreateSession explizit einzurichten, legen Sie das WSManFlagUseKerberos-Flag im flags-Parameter fest. Sowohl der Client- als auch der Servercomputer müssen einer Domäne hinzugefügt werden. Wenn Sie Kerberos als Authentifizierungsmethode verwenden, können Sie keine IP-Adresse im Aufruf von WSMan.CreateSession oder IWSMan::CreateSession verwenden.

Clientzertifikatbasierte Authentifizierung

Um die clientzertifikatbasierte Authentifizierung im Aufruf von WSMan.CreateSession einzurichten, legen Sie das WSManFlagUseClientCertificate-Flag im flags-Parameter fest.

Sie müssen zuerst die Zertifikatauthentifizierung sowohl auf dem Client als auch auf dem Dienst mithilfe des Winrm-Befehlszeilentools aktivieren. Weitere Informationen finden Sie unter Aktivieren von Authentifizierungsoptionen. Sie müssen auch einen Eintrag in der Tabelle CertMapping auf dem WinRM-Servercomputer erstellen. Dadurch wird eine Zuordnung zwischen mindestens einem Zertifikat und einem lokalen Konto eingerichtet. Nachdem das Zertifikat für die Authentifizierung und Autorisierung verwendet wurde, wird das entsprechende lokale Konto für Vorgänge verwendet, die vom WinRM-Dienst ausgeführt werden.

Die Zuordnung kann für einen bestimmten Ressourcen-URI erstellt werden. Um mehr zu erfahren, einschließlich des Erstellens eines CertMapping-Tabelleneintrags, geben Sie winrm help certmapping an der Eingabeaufforderung ein.

Hinweis

Die maximale Größe des Zertifikats, das von WinRM in diesem Kontext verwendet werden kann, beträgt 16 KB.

 

Aktivieren oder Deaktivieren von Authentifizierungsoptionen

Die Standardauthentifizierungsoption bei der Systeminstallation ist Kerberos. Weitere Informationen finden Sie unter Installation und Konfiguration für die Windows-Remoteverwaltung.

Wenn Ihr Skript oder Ihre Anwendung eine bestimmte Authentifizierungsmethode erfordert, die nicht aktiviert ist, müssen Sie die Konfiguration ändern, um diese Art der Authentifizierung zu aktivieren. Diese Änderung kann mit dem Winrm-Befehlszeilentool oder über Gruppenrichtlinie für die Windows-Remoteverwaltung Gruppenrichtlinie-Objekt vorgenommen werden. Sie können auch bestimmte Authentifizierungsmethoden deaktivieren.

So aktivieren oder deaktivieren Sie die Authentifizierung mit dem Winrm-Tool

  1. Um die Konfiguration für den WinRM-Client festzulegen, verwenden Sie den Befehl Winrm Set , und geben Sie den Client an. Mit dem folgenden Befehl wird beispielsweise die Digestauthentifizierung für den Client deaktiviert.

    winrm set winrm/config/client/auth @{Digest="false"}

  2. Um die Konfiguration für den WinRM-Server festzulegen, verwenden Sie den Befehl Winrm Set , und geben Sie den Dienst an. Der folgende Befehl aktiviert beispielsweise die Kerberos-Authentifizierung für den Dienst.

    winrm set winrm/config/service/auth @{Kerberos="true"}

Informationen zur Windows-Remoteverwaltung

WSMan.CreateSession

Verwenden der Windows-Remoteverwaltung