Connettersi a PowerShell per Exchange Online

PowerShell per Exchange Online consente di gestire le impostazioni di Exchange Online dalla riga di comando. È possibile usare Windows PowerShell in un computer locale per creare una sessione di PowerShell remota in Exchange Online. Si tratta di un processo in tre fasi durante il quale l'utente inserisce le credenziali di Office 365, fornisce le impostazioni di connessione necessarie, quindi importa i cmdlet di Exchange Online nella sessione locale di Windows PowerShell per poterli usare.

Important

Se si vuole usare l'autenticazione a più fattori per connettersi a PowerShell per Exchange Online, è necessario scaricare e usare il modulo per la sessione remota di PowerShell in Exchange Online. Per altre informazioni, vedere Connettersi a PowerShell per Exchange Online usando l'autenticazione a più fattori.

Se si è un cliente di Exchange Online Protection (EOP) autonomo, ad esempio si usa il servizio per proteggere l'ambiente di posta elettronica locale, seguire le istruzioni per la connessione in Connettersi a PowerShell di Exchange Online Protection. Se l'abbonamento a EOP autonomo di cui si dispone è Exchange Enterprise CAL con servizi (che include funzionalità di prevenzione della perdita dei dati e creazione di report tramite servizi Web), attenersi alle istruzioni sulla connessione riportate in questo argomento.

Che cosa è necessario sapere prima di iniziare

  • Tempo stimato per il completamento: 5 minuti

  • È possibile utilizzare le seguenti versioni di Windows:

  • Windows PowerShell deve essere configurato per poter eseguire gli script e, per impostazione predefinita, non lo è. Durante il tentativo di connessione viene visualizzato l'errore seguente:

    Files cannot be loaded because running scripts is disabled on this system. Provide a valid certificate with which to sign the files.

    Per richiedere che tutti gli script di PowerShell scaricati da internet siano firmati da un editore attendibile, eseguire il seguente comando in una finestra di Windows PowerShell elevata (una finestra di Windows PowerShell aperta selezionando Esegui come amministratore):

    Set-ExecutionPolicy RemoteSigned
    

    È necessario configurare questa impostazione soltanto una volta sul computer e non ogni volta che si stabilisce una connessione.

Tip

Problemi? È possibile richiedere supporto nei forum di Exchange. I forum sono disponibili in Exchange Online e Exchange Online Protection.

Connettersi a Exchange Online

  1. Nel computer locale aprire Windows PowerShell ed eseguire il comando seguente.

    $UserCredential = Get-Credential
    

    Nella finestra di dialogo Richiesta credenziali di Windows PowerShell digitare l'account e la password aziendale o dell'istituto di istruzione, quindi fare clic su OK.

  2. Eseguire il comando riportato di seguito:

    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
    

    Note:

    • Per Office 365 gestito da 21Vianet usare il valore ConnectionUri: https://partner.outlook.cn/PowerShell

    • Per Office 365 Germany usare il valore ConnectionUri: https://outlook.office.de/powershell-liveid/

    • Per Office 365 Government Community Cloud High (GCC High) usare il valore ConnectionUri: https://outlook.office365.us/powershell-liveid/

    • Se si è protetti da un server proxy, eseguire prima questo comando: $ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>, dove il valore ProxyAccessType è IEConfig, WinHttpConfig o AutoDetect.

      Aggiungere quindi il parametro seguente e il valore alla fine del comando $Session = ...: -SessionOption $ProxyOptions.

      Per altre informazioni, vedere New-PSSessionOption.

  3. Eseguire il comando riportato di seguito:

    Import-PSSession $Session -DisableNameChecking
    

Note

Al termine ricordare di chiudere la sessione Remote PowerShell. Chiudendo la finestra di Windows PowerShell senza disconnettere la sessione, si rischia di esaurire tutte le sessioni PowerShell remote disponibili e attendere la scadenza delle sessioni. Per disconnettere la sessione PowerShell remota, eseguire il seguente comando.

Remove-PSSession $Session

Come verificare se l'operazione ha avuto esito positivo

Dopo il passaggio 3, i cmdlet di Exchange Online vengono importati nella sessione locale di Windows PowerShell e indicati da una barra di avanzamento. Se non vengono visualizzati errori, la connessione è stata eseguita correttamente. Un breve test consiste nell'eseguire un cmdlet di Exchange Online, ad esempio, Get-Mailbox, per verificarne i risultati.

Se non vengono visualizzati errori, controllare i requisiti seguenti:

  • Un problema comune è rappresentato da una password errata. Eseguire di nuovi questi tre passaggi e prestare particolare attenzione al nome utente e alla password del passaggio 1.

  • Per evitare attacchi DoS (Denial of Service), è possibile aprire al massimo tre connessioni PowerShell remote all'organizzazione Exchange Online.

  • L'account utilizzato per connettersi a Exchange Online deve essere abilitato per PowerShell remoto. Per ulteriori informazioni, vedere Abilitare o disabilitare l'accesso a Exchange Online PowerShell.

  • Il traffico sulla porta TCP 80 deve essere aperto tra il computer locale e Office 365. È probabile che sia aperto, ma è bene verificare se l'organizzazione prevede criteri restrittivi relativi all'accesso a Internet.

  • Se l'organizzazione usa l'autenticazione federata e il provider di identità (IDP) e/o il servizio token di sicurezza (STS) non è disponibile pubblicamente, non è possibile usare un account federato per connettersi a PowerShell per Exchange Online. Per connettersi a PowerShell per Exchange Online, creare e usare invece un account non federato in Office 365.

Vedere anche

I cmdlet utilizzati in questo argomento sono cmdlet di Windows PowerShell. Per ulteriori informazioni su questi cmdlet, vedere i seguenti argomenti.

Per altre informazioni sulla gestione di Office 365, vedere Gestire Office 365.