Autenticazione per connessioni remote
Gestione remota Windows gestisce la sicurezza per la comunicazione tra computer supportando diversi metodi standard di autenticazione e crittografia dei messaggi.
Accesso al gruppo predefinito
Durante l'installazione, WinRM crea il gruppo locale WinRMRemoteWMIUsers__. WinRM limita quindi l'accesso remoto a qualsiasi utente che non è membro del gruppo di amministrazione locale o del gruppo di WinRMRemoteWMIUsers__ . È possibile aggiungere un utente locale, un utente di dominio o un gruppo di dominio a WinRMRemoteWMIUsers__digitando net localgroup WinRMRemoteWMIUsers__ /add <domain>\<>username al prompt dei comandi. Facoltativamente, è possibile usare il Criteri di gruppo per aggiungere un utente al gruppo.
Impostazioni di autenticazione predefinite
Le credenziali predefinite, il nome utente e la password sono le credenziali per l'account utente connesso che esegue lo script.
Per passare a un altro account in un computer remoto
- Specificare le credenziali in un oggetto ConnectionOptions o IWSManConnectionOptions e specificarlo alla chiamata CreateSession .
- Impostare il parametro WSManFlagCredUserNamePassword nel parametro flag nella chiamata CreateSession .
L'elenco seguente contiene un elenco di ciò che si verifica quando viene eseguito uno script o un'applicazione con le credenziali predefinite:
- Kerberos è il metodo predefinito di autenticazione quando il client si trova in un dominio e la stringa di destinazione remota non è una delle seguenti: localhost, 127.0.0.1 o [::1].
- La negoziazione è il metodo predefinito quando il client non è in un dominio, ma la stringa di destinazione remota è una delle seguenti: localhost, 127.0.0.1 o [::1].
Se si forniscono credenziali esplicite con un oggetto ConnectionOptions , Negotiate è il metodo predefinito. L'autenticazione negoziata determina se il metodo di autenticazione in corso è Kerberos o NTLM, a seconda che i computer si trovino in un dominio o in un gruppo di lavoro. Se ci si connette a un computer di destinazione remota usando un account locale, l'account deve essere preceduto dal nome del computer. Ad esempio, myComputer\myUsername.
Se si specifica l'autenticazione Negotiate, Digest o Basic e non è possibile specificare un oggetto ConnectionOptions , verrà visualizzato un errore che indica che sono necessarie credenziali esplicite. Se HTTPS non è il trasporto, il computer remoto di destinazione deve essere configurato nell'elenco di computer host attendibili.
Per altre informazioni sui tipi di autenticazione abilitati nelle impostazioni di configurazione predefinite, vedere Installazione e configurazione per Gestione remota Windows.
Autenticazione di base
Per stabilire in modo esplicito l'autenticazione di base nella chiamata a WSMan.CreateSession, impostare i flag WSManFlagUseBasic e WSManFlagCredUserNamePassword nel parametro flag . L'autenticazione di base è disabilitata nelle impostazioni di configurazione predefinite sia per il client WinRM che per il server WinRM.
Autenticazione del digest
Per stabilire in modo esplicito l'autenticazione digest nella chiamata a WSMan.CreateSession, impostare il flag WSManFlagUseDigest nel parametro flags . Il digest non è supportato. Non può essere configurato per il componente server WinRM.
Negoziare l'autenticazione
Per stabilire in modo esplicito l'autenticazione negoziata , nota anche come Autenticazione integrata di Windows, nella chiamata a WSMan.CreateSession impostare il flag WSManFlagUseNegotiate nel parametro flags .
Il controllo account utente influisce sull'accesso al servizio WinRM. Quando l'autenticazione negoziata viene usata in un gruppo di lavoro, solo l'account amministratore predefinito può accedere al servizio. Per consentire a tutti gli account nel gruppo Administrators di accedere al servizio, impostare il valore del Registro di sistema seguente:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Finestre\Currentversion\Politiche\Sistema\LocalAccountTokenFilterPolicy = 1
Autenticazione Kerberos
Per stabilire in modo esplicito l'autenticazione Kerberos nella chiamata a WSMan.CreateSession, impostare il flag WSManFlagUseKerberos nel parametro flags . Sia il client che i computer server devono essere aggiunti a un dominio. Se si usa Kerberos come metodo di autenticazione, non è possibile usare un indirizzo IP nella chiamata a WSMan.CreateSession o IWSMan::CreateSession.
Autenticazione basata su certificati client
Per stabilire l'autenticazione basata su certificati client nella chiamata a WSMan.CreateSession, impostare il flag WSManFlagUseClientCertificate nel parametro flag .
È prima necessario abilitare l'autenticazione del certificato sia nel client che nel servizio usando lo strumento della riga di comando Winrm. Per altre informazioni, vedere Abilitazione delle opzioni di autenticazione. È anche necessario creare una voce nella tabella CertMapping nel computer del server WinRM. In questo modo viene stabilito un mapping tra uno o più certificati e un account locale. Dopo aver usato il certificato per l'autenticazione e l'autorizzazione, l'account locale corrispondente viene usato per le operazioni eseguite dal servizio WinRM.
Il mapping può essere creato per un URI di risorsa specifico. Per altre informazioni, tra cui come creare una voce di tabella CertMapping, digitare winrm help certmapping al prompt dei comandi.
Nota
Il certificato di dimensione massima utilizzabile da WinRM in questo contesto è 16 KB.
Abilitazione o disabilitazione delle opzioni di autenticazione
L'opzione di autenticazione predefinita all'installazione del sistema è Kerberos. Per altre informazioni, vedere Installazione e configurazione per Gestione remota Windows.
Se lo script o l'applicazione richiede un metodo di autenticazione specifico non abilitato, è necessario modificare la configurazione per abilitare questo tipo di autenticazione. Questa modifica può essere apportata usando lo strumento da riga di comando Winrm o tramite Criteri di gruppo per l'oggetto Gestione Criteri di gruppo remota Windows. È anche possibile scegliere di disabilitare determinati metodi di autenticazione.
Per abilitare o disabilitare l'autenticazione con lo strumento Winrm
Per impostare la configurazione per il client WinRM, usare il comando Winrm Set e specificare il client. Ad esempio, il comando seguente disabilita l'autenticazione del digest per il client.
winrm set winrm/config/client/auth @{Digest="false"}
Per impostare la configurazione per il server WinRM, usare il comando Winrm Set e specificare il servizio. Ad esempio, il comando seguente abilita l'autenticazione Kerberos per il servizio.
winrm set winrm/config/service/auth @{Kerberos="true"}
Argomenti correlati