ARGOMENTO
    about_Remote_Troubleshooting

DESCRIZIONE BREVE
    Descrive come risolvere i problemi relativi alle operazioni remote
    in Windows PowerShell.

DESCRIZIONE DETTAGLIATA
    In questa sezione vengono descritti alcuni dei problemi che è
    possibile incontrare quando si utilizzano le funzionalità di
    comunicazione remota di Windows PowerShell basate sulla tecnologia
    WS-Management e vengono suggerite soluzioni per tali problemi.

    Prima di utilizzare le funzionalità di comunicazione remota di
    Windows PowerShell, vedere about_Remote e about_Remote_Requirements
    per istruzioni sulla configurazione e l'utilizzo di base. Consultare
    inoltre gli argomenti della Guida per ognuno dei cmdlet di comunicazione remota,
    in particolare le descrizioni dei parametri, in cui sono riportate informazioni
    specifiche per evitare che si verifichino problemi.

    Le versioni aggiornate di questo argomento e di altri argomenti
    della Guida di Windows PowerShell, sono disponibili online nella
    Microsoft Technet Library. Per visualizzare  la versione online di questo
    argomento della Guida, incollare l'URL seguente nel browser Internet:

	https://go.microsoft.com/fwlink/?LinkID=135188
 

    NOTA: in Windows Vista, Windows Server 2008 e nelle versioni
    successive di Windows, per visualizzare o modificare le
    impostazioni per il computer locale nell'unità WSMan, comprese
    le modifiche alle configurazioni di sessione, agli host
    attendibili, alle porte o ai listener, avviare Windows
    PowerShell con l'opzione "Esegui come amministratore". 



 RISOLUZIONE DEI PROBLEMI RELATIVI AD AUTORIZZAZIONI E AUTENTICAZIONE

    In questa sezione vengono illustrati problemi di comunicazione
    remota correlati alle autorizzazioni per utenti e computer e ai
    requisiti di comunicazione remota.


    MODALITÀ DI ESECUZIONE COME AMMINISTRATORE
    ---------------------------
        ERRORE: Accesso negato. È necessario eseguire il cmdlet da un
        processo con privilegi elevati.

    Per avviare una sessione remota nel computer locale o per
    visualizzare o modificare le impostazioni per il computer locale
    nell'unità WSMan, comprese le modifiche alle configurazioni di
    sessione, agli host attendibili, alle porte o ai listener,
    avviare Windows PowerShell con l'opzione "Esegui come amministratore".
    
    Per avviare Windows PowerShell con l'opzione "Esegui come amministratore":
    
    -- Fare clic con il pulsante destro del mouse sull'icona di
       Windows PowerShell (o Windows PowerShell ISE), quindi scegliere
       "Esegui come amministratore".


    Per avviare Windows PowerShell con l'opzione "Esegui come
    amministratore" in Windows 7 e Windows Server 2008 R2:

    -- Nella barra delle applicazioni di Windows fare clic con il
       pulsante destro del mouse sull'icona di Windows PowerShell,
       quindi scegliere "Esegui Windows PowerShell come amministratore".
    

    Nota: per impostazione predefinita, in Windows Server 2008 R2
    l'icona di Windows PowerShell è bloccata sulla barra delle applicazioni. 



    MODALITÀ DI ABILITAZIONE DELLA COMUNICAZIONE REMOTA
    ----------------------
        ERRORE: ACCESSO NEGATO
        oppure
        ERRORE: La connessione all'host remoto è stata rifiutata.
        Verificare che il servizio WS-Management sia in esecuzione
        nell'host remoto e configurato per l'ascolto delle richieste
        sulla porta e sull'URL HTTP corretti. 

    Per abilitare un computer per l'invio di comandi remoti, non è
    necessaria alcuna configurazione, mentre è necessario
    configurare il computer remoto per la ricezione di comandi
    remoti. La configurazione include l'avvio del servizio Gestione
    remota Windows, l'impostazione del tipo di avvio per il servizio
    Gestione remota Windows su Automatico, la creazione di listener
    per connessioni HTTP e HTTPS e la creazione di configurazioni
    di sessione predefinite.

    Per configurare un computer per la ricezione di comandi remoti,
    utilizzare il cmdlet Enable-PSRemoting. Nel comando seguente
    vengono abilitate tutte le impostazioni remote necessarie e le
    configurazioni di sessione e viene riavviato il servizio
    Gestione remota Windows per rendere effettive le modifiche. 

        enable-psremoting

    Per eliminare tutti i prompt dell'utente, digitare:

        enable-psremoting -force

    Per ulteriori informazioni, vedere Enable-PSRemoting.



    MODALITÀ DI ABILITAZIONE DELLA COMUNICAZIONE REMOTA IN UN'ORGANIZZAZIONE  
    ---------------------------------------
        ERRORE: ACCESSO NEGATO
        oppure
        ERRORE: La connessione all'host remoto è stata rifiutata.
        Verificare che il servizio WS-Management sia in esecuzione
        nell'host remoto e configurato per l'ascolto delle richieste
        sulla porta e sull'URL HTTP corretti. 

    Per abilitare un singolo computer affinché riceva comandi di Windows PowerShell
    remoti e accetti le connessioni, utilizzare i cmdlet Enable-PSRemoting.

    Per abilitare la comunicazione remota per più computer in un'organizzazione, è
    possibile utilizzare le opzioni semplificate seguenti.

    -- Per configurare listener per la comunicazione remota, abilitare
       il Criterio di gruppo "Consenti configurazione automatica dei
       listener". Per istruzioni, vedere "Modalità di abilitazione dei
       listener tramite Criteri di gruppo" (di seguito).
 
    -- Per impostare il tipo di avvio di Gestione remota Windows su
       Automatico in più computer, utilizzare il cmdlet Set-Service.
       Per le istruzioni, vedere "Modalità di impostazione del tipo di
       avvio del servizio Gestione remota Windows" (di seguito).

    -- Per abilitare un'eccezione del firewall, utilizzare il Criterio
       di gruppo "Windows Firewall: consenti eccezioni porte locali".
       Per istruzioni, vedere "Modalità di creazione di un'eccezione
       del firewall tramite Criteri di gruppo" (di seguito).

 

    MODALITÀ DI ABILITAZIONE DEI LISTENER TRAMITE CRITERI DI GRUPPO
    ------------------------------------------------
        ERRORE: ACCESSO NEGATO
        oppure
        ERRORE: La connessione all'host remoto è stata rifiutata.
        Verificare che il servizio WS-Management sia in esecuzione
        nell'host remoto e configurato per l'ascolto delle richieste
        sulla porta e sull'URL HTTP corretti.

    Per configurare i listener per tutti i computer in un dominio,
    abilitare il criterio "Consenti configurazione automatica dei
    listener" nel percorso di Criterio di gruppo seguente:

        Configurazione computer\Modelli amministrativi\Componenti di Windows
          \Gestione remota Windows\Servizio WinRM

    Abilitare il criterio e specificare i filtri IPv4 e IPv6. È consentito 
    l'utilizzo di caratteri jolly (*).



    MODALITÀ DI ABILITAZIONE DI UN'ECCEZIONE DEL FIREWALL TRAMITE CRITERI DI GRUPPO
    -------------------------------------------------------------------------------
        ERRORE: ACCESSO NEGATO
        oppure
        ERRORE: La connessione all'host remoto è stata rifiutata.
        Verificare che il servizio WS-Management sia in esecuzione
        nell'host remoto e configurato per l'ascolto delle richieste
        sulla porta e sull'URL HTTP corretti.

    Per abilitare un'eccezione del firewall in tutti i computer di un
    dominio, abilitare il criterio "Windows Firewall: consenti eccezioni porte locali"
    nel percorso di Criteri di gruppo seguente:

        Configurazione computer\Modelli amministrativi\Rete
          \Connessioni di rete\Windows Firewall\Profilo di dominio
        

    Questo criterio consente ai membri del gruppo Administrators del computer di
    utilizzare Windows Firewall nel Pannello di controllo per creare un'eccezione
    del firewall per il servizio Gestione remota Windows.



    MODALITÀ DI IMPOSTAZIONE DEL TIPO DI AVVIO DEL SERVIZIO GESTIONE REMOTA WINDOWS
    -------------------------------------------------------------------------------
        ERRORE: ACCESSO NEGATO

    La funzionalità di comunicazione remota di Windows PowerShell
    dipende dal servizio Gestione remota Windows. Per supportare i
    comandi remoti, il servizio deve essere in esecuzione.

    In Windows Server 2003, Windows Server 2008 e Windows Server 2008 R2,
    il tipo di avvio del servizio Gestione remota Windows è Automatico. 

    Tuttavia, in Windows XP, Windows Vista e Windows 7, il servizio
    Gestione remota Windows è disabilitato per impostazione predefinita. 

    Per impostare il tipo di avvio di un servizio in un computer
    remoto, utilizzare il cmdlet Set-Service. 

    Per eseguire il comando in più computer, è possibile creare un
    file di testo o un file CSV con i nomi dei computer.

    Ad esempio, nei comandi seguenti viene ottenuto un elenco di nomi
    dei computer dal file Servers.txt, quindi viene impostato il tipo di
    avvio del servizio Gestione remota Windows su Automatico in tutti i computer.

        C:\PS> $servers = get-content servers.txt

        C:\PS> set-service WinRM -computername $servers -startuptype Automatic

    Per visualizzare i risultati, utilizzare il cmdlet Get-WMIObject con l'oggetto
    Win32_Service. Per ulteriori informazioni, vedere Set-Service.    

    

    MODALITÀ DI RICREAZIONE DELLE CONFIGURAZIONI DI SESSIONE PREDEFINITE
    --------------------------------------------------------------------
        ERRORE: ACCESSO NEGATO

    Per connettersi al computer locale ed eseguire i comandi in modalità remota,
    nel computer devono essere incluse configurazioni di sessione per comandi remoti.

    Quando si utilizza Enable-PSRemoting, vengono create configurazioni di sessione
    predefinite nel computer locale. Gli utenti remoti utilizzano queste configurazioni
    di sessione ogni volta che un comando remoto non include il parametro ConfigurationName.
    
    Se viene annullata la registrazione delle configurazioni
    predefinite in un computer o se queste vengono eliminate,
    utilizzare il cmdlet Enable-PSRemoting per ricrearle. È
    possibile utilizzare ripetutamente questo cmdlet. Se una
    funzionalità è già configurata, non vengono generati errori.

    Se si modificano le configurazioni di sessione predefinite e si
    desidera ripristinare quelle originali, utilizzare il
    cmdlet Unregister-PSSessionConfiguration per eliminare le
    configurazioni di sessione modificate e successivamente il
    cmdlet Enable-PSRemoting per ripristinarle. Enable-PSRemoting
    non modifica le configurazioni di sessione esistenti.

    Nota: quando Enable-PSRemoting ripristina la configurazione di
    sessione predefinita, non crea descrittori di sicurezza
    espliciti per le configurazioni. Al contrario, le configurazioni
    ereditano il descrittore di sicurezza di RootSDDL, protetto per
    impostazione predefinita.

    Per visualizzare il descrittore di sicurezza RootSDDL, digitare:

        get-item wsman:\localhost\Service\RootSDDL

    Per modificare RootSDDL, utilizzare il cmdlet Set-Item nell'unità WSMan.
    Per modificare il descrittore di sicurezza di una configurazione di sessione,
    utilizzare il cmdlet Set-PSSessionConfiguration con i parametri
    SecurityDescriptorSDDL o ShowSecurityDescriptorUI. 

    Per ulteriori informazioni sull'unità WSMan, vedere l'argomento
    della Guida relativo al provider di WS-Management ("get-help wsman"). 



    MODALITÀ DI SPECIFICA DELLE CREDENZIALI DELL'AMMINISTRATORE 
    -----------------------------------------------------------
        ERRORE: ACCESSO NEGATO

    Per impostazione predefinita, per creare una sessione PSSession o
    eseguire comandi in un computer remoto, l'utente corrente deve
    essere membro del gruppo Administrators nel computer remoto. Le
    credenziali sono talvolta necessarie anche quando l'utente corrente
    ha effettuato l'accesso a un account membro del gruppo Administrators.

    Se l'utente corrente è membro del gruppo Administrators nel
    computer remoto o è in grado di specificare le credenziali di
    un membro di tale gruppo, utilizzare il parametro Credential del
    cmdlet New-PSSession, Enter-PSSession o Invoke-Command per
    connettersi in modalità remota.

    Ad esempio, nel comando seguente vengono specificate le
    credenziali di un amministratore.

        Invoke-Command -ComputerName Server01 -Credential Domain01\Admin01
 
    Per ulteriori informazioni sul parametro Credential, vedere 
    New-PSSession, Enter-PSSession o Invoke-Command.



    MODALITÀ DI ABILITAZIONE DELLA FUNZIONALITÀ DI COMUNICAZIONE
    REMOTA PER UTENTI SENZA PRIVILEGI DI AMMINISTRATORE 
    ------------------------------------------------------------
        ERRORE: ACCESSO NEGATO

    Per stabilire una sessione PSSession o eseguire un comando in un
    computer remoto, l'utente deve disporre dell'autorizzazione per
    l'utilizzo delle configurazioni di sessione nel computer remoto.
    

    Per impostazione predefinita, solo i membri del gruppo
    Administrators di un computer dispongono dell'autorizzazione per
    l'utilizzo delle configurazioni di sessione predefinite. Di
    conseguenza, solo i membri del gruppo Administrators possono
    connettersi al computer in modalità remota.

    Per consentire agli altri utenti di connettersi al computer
    locale, fornire loro le autorizzazioni Execute per le
    configurazioni di sessione predefinite nel computer locale.

    Il comando seguente consente di aprire una finestra delle
    proprietà in cui è possibile modificare il descrittore di
    sicurezza della configurazione di sessione predefinita Microsoft.PowerShell
    nel computer locale.
    
        Set-PSSessionConfiguration Microsoft.Powershell -ShowSecurityDescriptorUI
        
    Per ulteriori informazioni, vedere about_Session_Configurations.



    MODALITÀ DI ABILITAZIONE DELLA FUNZIONALITÀ DI COMUNICAZIONE
    REMOTA PER GLI AMMINISTRATORI DI ALTRI DOMINI
    ------------------------------------------------------------
        ERRORE: ACCESSO NEGATO

    Quando un utente in un altro dominio è membro del gruppo Administrators nel
    computer locale, l'utente non può connettersi al computer locale in modalità
    remota con privilegi di amministratore. Per impostazione predefinita, le
    connessioni remote da altri domini vengono eseguite solo con token di
    privilegi di utente standard. 

    Tuttavia, è possibile utilizzare la voce del Registro di sistema
    LocalAccountTokenFilterPolicy per modificare il comportamento predefinito
    e consentire l'esecuzione con privilegi di amministratore da parte di utenti
    remoti membri del gruppo Administrators. 

    Attenzione: la voce LocalAccountTokenFilterPolicy disabilita le
    limitazioni remote relative al controllo dell'account utente per
    tutti gli utenti di tutti i computer interessati. Considerare
    attentamente le implicazioni di questa impostazione prima di
    modificare il criterio.
    
    Per modificare il criterio, utilizzare il comando seguente per
    impostare il valore della voce del Registro di sistema
    LocalAccountTokenFilterPolicy su 1.
    

        C:\PS> new-itemproperty -name LocalAccountTokenFilterPolicy -path `
            HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System 
            -propertyType `DWord -value 1



    MODALITÀ DI UTILIZZO DI UN INDIRIZZO IP IN UN COMANDO REMOTO
    -----------------------------------------------------
        ERRORE: Client Gestione remota Windows: impossibile elaborare
        la richiesta. Se lo schema di autenticazione è diverso
        da Kerberos o se il computer client non è associato a
        un dominio, è necessario utilizzare il trasporto HTTPS
        oppure aggiungere il computer di destinazione all'impostazione di
        configurazione TrustedHosts.
        
    I parametri ComputerName dei cmdlet New-PSSession, Enter-PSSession
    e Invoke-Command accettano un indirizzo IP come valore valido.
    Tuttavia, poiché l'autenticazione Kerberos non supporta gli indirizzi IP,
    per impostazione predefinita, viene utilizzata l'autenticazione NTLM
    quando si specifica un indirizzo IP. 

    In caso di utilizzo dell'autenticazione NTLM, per la funzionalità
    di comunicazione remota è richiesta la procedura riportata di seguito.

    1. Configurare il computer per il trasporto HTTPS o aggiungere gli
       indirizzi IP dei computer remoti all'elenco TrustedHosts
       nel computer locale.

       Per istruzioni, vedere "Modalità di aggiunta di un computer
       all'elenco TrustedHosts" (di seguito).

    2. Utilizzare il parametro Credential in tutti i comandi remoti.
  
       Questo parametro è richiesto anche quando si inviano le
       credenziali dell'utente corrente.


   
    MODALITÀ DI CONNESSIONE IN MODALITÀ REMOTA DA UN COMPUTER  BASATO
    SU UN GRUPPO DI LAVORO
    -------------------------------------------------------
        ERRORE: Client Gestione remota Windows: impossibile elaborare
        la richiesta. Se lo schema di autenticazione è diverso
        da Kerberos o se il computer client non è associato a
        un dominio, è necessario utilizzare il trasporto HTTPS
        oppure aggiungere il computer di destinazione all'impostazione di
        configurazione TrustedHosts.
        

    Quando il computer locale non si trova in un dominio, per la
    funzionalità di comunicazione remota è richiesta la procedura
    riportata di seguito.

    1. Configurare il computer per il trasporto HTTPS o aggiungere i
       nomi dei computer remoti all'elenco TrustedHosts nel computer locale.

       Per istruzioni, vedere "Modalità di aggiunta di un computer
       all'elenco TrustedHosts" (di seguito).


    2. Verificare che nel computer basato su un gruppo di lavoro sia
       impostata una password. Se non è impostata una password o se il valore
       della password è vuoto, non è possibile eseguire comandi remoti.

       Per impostare una password per l'account utente, utilizzare
       Account utente nel Pannello di controllo. 


    3. Utilizzare il parametro Credential in tutti i comandi remoti.
  
       Questo parametro è richiesto anche quando si inviano le
       credenziali dell'utente corrente.



    MODALITÀ DI AGGIUNTA DI UN COMPUTER ALL'ELENCO DI HOST ATTENDIBILI
    ------------------------------------------------------------------

    L'elemento TrustedHosts può contenere un elenco di nomi di
    computer, indirizzi IP e nomi di dominio completi delimitato da
    virgole. È consentito l'utilizzo di caratteri jolly.

    Per visualizzare o modificare l'elenco degli host attendibili,
    utilizzare l'unità WSMan. L'elemento TrustedHost si trova nel
    nodo WSMan:\localhost\Client.

    Solo i membri del gruppo Administrators del computer dispongono dell'autorizzazione
    per la modifica dell'elenco di host attendibili nel computer.

    Attenzione: il valore che si imposta per l'elemento TrustedHosts
                influisce su tutti gli utenti del computer.


    Per visualizzare l'elenco di host attendibili, utilizzare il comando seguente:

        get-item wsman:\localhost\Client\TrustedHosts

    È possibile utilizzare anche il cmdlet Set-Location (alias = cd) per spostarsi
    nell'unità WSMan fino al percorso. Ad esempio: "cd WSMan:\localhost\Client; dir".



    Per aggiungere tutti i computer all'elenco di host attendibili,
    utilizzare il comando seguente, che inserisce un valore * (tutto) in ComputerName 

        set-item wsman:localhost\client\trustedhosts -value *

    Per aggiungere tutti i computer di un determinato dominio
    all'elenco di host attendibili, è possibile utilizzare anche un
    carattere jolly (*). Ad esempio, con il comando seguente tutti
    i computer del dominio Fabrikam vengono aggiunti all'elenco di
    host attendibili.

        set-item wsman:localhost\client\trustedhosts *.fabrikam.com



    Per aggiungere i nomi di determinati computer all'elenco di host
    attendibili, utilizzare il formato di comando seguente:

        set-item wsman:\localhost\Client\TrustedHosts -value <NomeComputer>[,<NomeComputer>]
        
    dove ogni valore <NomeComputer> deve presentare il formato seguente:

        <Computer>.<Dominio>.<Società>.<dominio-primo-livello>


    Ad esempio:

        set-item wsman:\localhost\Client\TrustedHosts -value Server01.Domain01.Fabrikam.com
     
   

    Per aggiungere un nome computer a un elenco esistente di host
    attendibili, salvare innanzitutto il valore corrente in una
    variabile, quindi impostare il valore su un elenco delimitato
    da virgole che include i valori correnti e quelli nuovi.

    Ad esempio, per aggiungere il computer Server01 a un elenco
    esistente di host attendibili, utilizzare il comando seguente.

        $curValue = (get-item wsman:\localhost\Client\TrustedHosts).value

        set-item wsman:\localhost\Client\TrustedHosts -value "$curValue, Server01.Domain01.Fabrikam.com"



    Per aggiungere gli indirizzi IP di determinati computer all'elenco
    di host attendibili, utilizzare il formato di comando seguente:
    
        set-item wsman:\localhost\Client\TrustedHosts -value <Indirizzo IP>

    Ad esempio:

        set-item wsman:\localhost\Client\TrustedHosts -value 172.16.0.0



    Per aggiungere un computer all'elenco TrustedHosts di un computer
    remoto, utilizzare il cmdlet Connect-WSMan per aggiungere un
    nodo per il computer remoto all'unità WSMan nel computer locale.
    Successivamente utilizzare un comando Set-Item per aggiungere il computer.

    Per ulteriori informazioni sul cmdlet Connect-WSMan, vedere Connect-WSMan.


 RISOLUZIONE DEI PROBLEMI DI CONFIGURAZIONE DEI COMPUTER
    In questa sezione vengono illustrati problemi di comunicazione
    remota correlati a determinate configurazioni di un computer,
    un dominio o un'organizzazione.

    MODALITÀ DI CONFIGURAZIONE DELLA FUNZIONALITÀ DI COMUNICAZIONE
    REMOTA SU PORTE ALTERNATIVE
    --------------------------------------------------------------
        ERRORE: La connessione all'host remoto specificato è stata
        rifiutata. Verificare che il servizio WS-Management sia
        in esecuzione nell'host remoto e configurato per l'ascolto
        delle richieste sulla porta e sull'URL HTTP corretti.

    Per impostazione predefinita, la funzionalità di comunicazione
    remota di Windows PowerShell utilizza la porta 80 per il
    trasporto HTTP. La porta predefinita viene utilizzata ogni volta
    che l'utente non specifica i parametri ConnectionURI o Port in
    un comando remoto.

    Per modificare la porta predefinita impostata in Windows
    PowerShell, utilizzare il cmdlet Set-Item nell'unità WSMan per
    modificare il valore Port nel nodo foglia del listener.

    Ad esempio, il comando seguente consente di impostare la porta
    predefinita su 8080.

        set-item wsman:\localhost\listener\listener*\port -value 8080



    MODALITÀ DI CONFIGURAZIONE DELLA FUNZIONALITÀ DI COMUNICAZIONE
    REMOTA CON UN SERVER PROXY
    --------------------------------------------------------------
        ERRORE: Il client non è in grado di connettersi alla
        destinazione specificata nella richiesta. Verificare che
        il servizio sulla destinazione sia in esecuzione e accetti
        le richieste. 


    Poiché la funzionalità di comunicazione remota di Windows
    PowerShell utilizza il protocollo HTTP, è influenzata dalle
    impostazioni proxy HTTP. In organizzazioni che dispongono di
    server proxy, gli utenti non possono accedere direttamente a un
    computer remoto di Windows PowerShell.

    Per risolvere questo problema, utilizzare opzioni delle
    impostazioni proxy nel comando remoto. Sono disponibili le
    seguenti impostazioni:

        --  ProxyAccessType
        --  ProxyAuthentication
        --  ProxyCredential

    Per impostare queste opzioni per un determinato comando,
    utilizzare la procedura riportata di seguito:

        1. Utilizzare i parametri ProxyAccessType, ProxyAuthentication
           e ProxyCredential del cmdlet New-PSSessionOption
           per creare un oggetto opzione di sessione con le
           impostazioni proxy per l'organizzazione. Salvare
           l'oggetto opzione in una variabile.

        2. Utilizzare la variabile che contiene l'oggetto opzione come
           valore del parametro SessionOption di un comando
           New-PSSession, Enter-PSSession o Invoke-Command.


    Ad esempio, nel comando seguente viene creato un oggetto opzione
    di sessione con opzioni di sessione proxy, quindi l'oggetto
    viene utilizzato per creare una sessione remota.

        C:\PS> $SessionOption = New-PSSessionOption -ProxyAccessType IEConfig
                -ProxyAuthentication Negotiate -ProxyCredential Domain01\User01

        C:\PS> New-PSSession -ConnectionURI https://www.fabrikam.com

    Per ulteriori informazioni sul cmdlet New-PSSessionOption, vedere
    New-PSSessionOption.

    Per impostare queste opzioni per tutti i comandi remoti della
    sessione corrente, utilizzare l'oggetto opzione creato da New-PSSessionOption
    nel valore della variabile di preferenza $PSSessionOption. Per ulteriori
    informazioni sulla variabile di preferenza $PSSessionOption, vedere
    about_Preference_Variables.
    
    Per impostare queste opzioni per tutti i comandi remoti di tutte
    le sessioni di Windows PowerShell nel computer locale,
    aggiungere la variabile di preferenza $PSSessionOption al
    profilo di Windows PowerShell. Per ulteriori informazioni sui
    profili di Windows PowerShell, vedere about_Profiles.
 


    MODALITÀ DI RILEVAMENTO DI UNA SESSIONE A 32 BIT IN UN COMPUTER A 64 BIT
    ------------------------------------------------------------------------
        ERRORE: Termine "<nome-strumento>" non riconosciuto come nome
        di cmdlet, funzione, programma eseguibile o file script.
        Controllare l'ortografia del nome o verificare che il
        percorso sia incluso e corretto, quindi riprovare.


    Se nel computer remoto è in esecuzione una versione di Windows a
    64 bit e il comando remoto utilizza una configurazione di
    sessione a 32 bit, ad esempio Microsoft.PowerShell32, in
    Gestione remota Windows viene caricato un processo WOW64 e
    Windows reindirizza automaticamente tutti i riferimenti della
    directory %Windir%\System32 alla directory %windir%\SysWOW64. 

    Di conseguenza, se nella directory System32 si tenta di utilizzare
    strumenti che non hanno corrispondenti nella directory SysWow64, ad esempio
    Defrag.exe, non sarà possibile trovare tali strumenti nella directory.

    Per trovare l'architettura del processore in uso nella sessione,
    utilizzare il valore della variabile di ambiente PROCESSOR_ARCHITECTURE.
    Nel comando seguente viene rilevata l'architettura del processore
    della sessione nella variabile $s.
    

        C:\PS> $s = new-pssession -computername Server01 -configurationName CustomShell

        C:\PS> invoke-command -session $s {$env:PROCESSOR_ARCHITECTURE} x86

    Per ulteriori informazioni sulle configurazioni di sessione,
    vedere about_session_configurations.


 RISOLUZIONE DEI PROBLEMI RELATIVI A CRITERI E PREFERENZE
    In questa sezione vengono illustrati problemi di comunicazione remota correlati
    a criteri e preferenze impostati nei computer locali e remoti.


    MODALITÀ DI MODIFICA DEI CRITERI DI ESECUZIONE PER IMPORT
    -PSSESSION E IMPORT-MODULE 
    --------------------------------------------------------- 
        ERRORE: Import-Module: Impossibile caricare il file <nomefile>.
        L'esecuzione di script è disattivata nel sistema corrente.

    I cmdlet Import-PSSession ed Export-PSSession creano moduli che
    contengono file di script e file di formattazione non firmati.
    
    Per importare i moduli creati da questi cmdlet, tramite Import-PSSession
    o Import-Module, i criteri di esecuzione nella sessione corrente non
    possono essere Restricted o AllSigned. Per ulteriori informazioni sui criteri
    di esecuzione di Windows PowerShell, vedere about_Execution_Policies.

    Per importare i moduli senza modificare i criteri di esecuzione
    per il computer locale impostati nel Registro di sistema,
    utilizzare il parametro Scope di Set-ExecutionPolicy per impostare
    criteri di esecuzione meno restrittivi per un singolo processo.

    Ad esempio, nel comando seguente viene avviato un processo con
    criteri di esecuzione RemoteSigned. La modifica dei criteri di
    esecuzione influisce solo sul processo corrente e non modifica
    l'impostazione del Registro di sistema ExecutionPolicy di Windows PowerShell.

        set-executionpolicy -scope process -executionpolicy RemoteSigned

    È inoltre possibile utilizzare il parametro ExecutionPolicy
    di PowerShell.exe per avviare una sessione unica con criteri di
    esecuzione meno restrittivi. 

        powershell.exe -executionpolicy RemoteSigned

    Per ulteriori informazioni sui cmdlet, vedere Import-PSSession, Export-PSSession
    e Import-Module. Per ulteriori informazioni sui criteri di esecuzione,
    vedere about_Execution_Policies. Per ulteriori informazioni sulle opzioni relative
    alla Guida della console PowerShell.exe, digitare "powershell.exe -?".



    MODALITÀ DI IMPOSTAZIONE E MODIFICA DELLE QUOTE
    -----------------------------------------------
        ERRORE: La quantità totale di dati ricevuti dal client remoto
        supera il valore massimo consentito.

    È possibile utilizzare quote per proteggere il computer locale e il computer
    remoto da un utilizzo eccessivo delle risorse, sia fortuito che dannoso. 

    Le quote seguenti sono disponibili nella configurazione di base.

    -- Il provider di WS-Management (WSMan:) fornisce diverse
       impostazioni delle quote, ad esempio le impostazioni MaxEnvelopeSizeKB
       e MaxProviderRequests nel nodo WSMan:\<NomeComputer> e le
       impostazioni MaxConcurrentOperations, MaxConcurrentOperationsPerUser
       e MaxConnections nel nodo WSMan:\<NomeComputer>\Service.

    -- È possibile proteggere il computer locale tramite i
       parametri MaximumReceivedDataSizePerCommandMB e
       MaximumReceivedObjectSizeMB del cmdlet New-PSSessionOption e la
       variabile di preferenza $PSSessionOption.

    -- È possibile proteggere il computer remoto aggiungendo
       restrizioni alle configurazioni di sessione, ad esempio tramite
       i parametri MaximumReceivedDataSizePerCommandMB e
       MaximumReceivedObjectSizeMB del cmdlet Register-PSSessionConfiguration.

    Quando le quote creano conflitti con un comando, Windows PowerShell genera un errore. 

    Per risolvere l'errore, modificare il comando remoto affinché sia
    conforme alla quota oppure determinare l'origine della quota e
    aumentare quest'ultima per consentire il completamento del comando.

    Ad esempio, nel comando seguente la quota delle dimensione degli
    oggetti nella configurazione di sessione Microsoft.PowerShell
    nel computer remoto viene aumentata da 10 MB (valore predefinito) a 11 Mb. 

        Set-PSSessionConfiguration -name microsoft.powershell ` 
            -MaximumReceivedObjectSizeMB 11 -Force
        

    Per ulteriori informazioni sul cmdlet New-PSSsessionOption, vedere
    New-PSSessionOption.


    Per ulteriori informazioni sulle quote di WS-Management, vedere
    l'argomento della Guida relativo al provider di WS-Management
    (digitare "get-help WSMan").

    MODALITÀ DI RISOLUZIONE DEGLI ERRORI DI TIMEOUT
    -----------------------------------------------
        ERRORE: Servizio WS-Management: impossibile completare
        l'operazione entro il tempo specificato in OperationTimeout.
        
    È possibile utilizzare timeout per proteggere il computer locale e
    il computer remoto da un utilizzo eccessivo delle risorse, sia
    fortuito che dannoso. Quando i timeout sono impostati nel
    computer locale e in quello remoto, Windows PowerShell utilizza
    le impostazioni di timeout più brevi.

    I timeout seguenti sono disponibili nella configurazione di base.

    -- Il provider di WS-Management (WSMan:) fornisce diverse
       impostazioni di timeout lato client e lato servizio, ad esempio
       l'impostazione MaxTimeoutms nel nodo WSMan:\<NomeComputer> e le
       impostazioni EnumerationTimeoutms e MaxPacketRetrievalTimeSeconds nel nodo
       WSMan:\<NomeComputer>\Service.
 
    -- È possibile proteggere il computer locale tramite i parametri
       CancelTimeout, IdleTimeout, OpenTimeout e OperationTimeout del
       cmdlet New-PSSessionOption e la variabile di preferenza $PSSessionOption.
    
    -- È possibile proteggere anche il computer remoto impostando
       valori di timeout a livello di codice nella configurazione di
       sessione.

    Quando un valore di timeout non consente il completamento di un'operazione,
    Windows PowerShell termina l'operazione e genera un errore. 

    Per risolvere l'errore, modificare il comando affinché venga
    completato nell'intervallo di timeout o determinare l'origine
    del limite di timeout e aumentare l'intervallo per consentire
    il completamento del comando.

    Ad esempio, nei seguenti comandi viene utilizzato il cmdlet
    New-PSSessionOption per creare un oggetto opzione di sessione con
    un valore OperationTimeout pari a 4 minuti (in ms) e successivamente
    tale oggetto viene utilizzato per creare una sessione remota. 

        C:\PS> $pso = new-pssessionoption -operationtimeout 240000

        C:\PS> new-pssession -computername Server01 -sessionOption $pso

    Per ulteriori informazioni sui timeout di WS-Management, vedere
    l'argomento della Guida relativo al provider di WS-Management
    (digitare "get-help WSMan").

    Per ulteriori informazioni sul cmdlet New-PSSsessionOption, vedere
    New-PSSessionOption.


 RISOLUZIONE DEI PROBLEMI IN CASO DI MANCATA RISPOSTA

 In questa sezione vengono illustrati problemi di comunicazione remota
 che impediscono il completamento di un comando e impediscono o
 ritardano la visualizzazione del prompt di Windows PowerShell.



    MODALITÀ DI INTERRUZIONE DI UN COMANDO
    --------------------------
    Alcuni programmi nativi di Windows, ad esempio i programmi con
    un'interfaccia utente, le applicazioni console che richiedono
    input e le applicazioni console che utilizzano l'API della
    console Win32, non funzionano correttamente nell'host remoto di
    Windows PowerShell.  

    Quando si utilizzano questi programmi, è possibile rilevare un
    comportamento imprevisto, come assenza di output, output
    parziale o il mancato completamento di un comando remoto.

    Per terminare un programma che non risponde, digitare CTRL + C.
    Per visualizzare gli eventuali errori segnalati, digitare
    "$error" nell'host locale e nella sessione remota.




VEDERE ANCHE
    Versione online: https://go.microsoft.com/fwlink/?LinkID=135188
    about_remote
    about_remote_requirements




Argomenti della Guida