Logo NEXSYS menu
Cybersecurity
Corso Cybersecurity Specialist
Corso Blue Team
Corso Ethical Hacking
Corso Incident Responder
Corso Secure Coding
Sistemi & Cloud
Corso Sistemista e Networking
Corso Microsoft 365 Administration
Corso Windows Server Administration
Corso AZ-104 Azure Administrator
Corso Active Directory
Data, AI & Programmazione
Corso Programmazione C#
Corso ASP.NET
Corso React
Corso Machine Learning
Corso Power BI PL-300
Digital Skills & Trends
Corso Microsoft 365 per utenti
Corso Security Awareness
Corso NIS2
Corso AI per aziende
Corso Microsoft 365 Copilot
Modalità & extra
Calendario
Catalogo Pdf
Percorsi Microsoft
Corsi finanziati
Open Badge digitali
Tutti i corsi di Cybersecurity
Tutti i corsi di Sistemi & Cloud
Tutti i corsi di Data & Programmazione
Tutti i corsi di Digital Skills & Trends

Cybersecurity
Consulenza Cybersecurity
Penetration Test
Assessment AD
SOC As a Service
Data Protection DPaaS
Microsoft & Cloud
Soluzioni Modern Workplace
Migrazione Microsoft 365
Microsoft 365 Security Assessment
Consulenza Cloud
Cloud Backup & Recovery
Infrastruttura & Sistemi
Network Security
Firewall aziendali
DNS Security
Endpoint Management (UEM)
Secure Access Service Edge (SASE)
Manifatturiero & Industria 4.0
Servizi, Logistica & GDO
Sanità & Pharma
Pubblica Amministrazione
Studi Professionali

Progettiamo la tua soluzione su misura →

La nostra identità
Certificazioni & Partner
Portfolio clienti
ISO 9001

Nexsys Srl è certificata
ISO 9001:2015

Microsoft Solutions Partner

Siamo Microsoft Solution Partner per il Modern Work

APPROFONDIMENTI E NEWS

Errore Powershell Exchange Online: accesso negato

Il modulo PowerShell per Exchange Online consente di gestire le impostazioni del server di posta elettronica di Office 365 dalla riga di comando, tramite appositi cmdlet powershell specifici. Tipicamente questo processo è suddiviso in tre fasi durante il quale all'utente viene richiesto di inserire le credenziali di Microsoft 365, di fornire le impostazioni di connessione necessarie, permettendo successivamente di importare i cmdlet di Exchange Online nella sessione locale di Windows PowerShell per poterli usare, senza aver installato nel client alcun componente che parli direttamente con Exchange, ma permettendo di richiamare quelli esposti nel cloud.

La modalità classica di esecuzione dei comandi per la connessione a Exchange Online è la seguente:

Da Powershell:

$Credenziali = Get-Credential   -> Comparirà la finestra di dialogo per l'inserimento utente e password

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

Import-PSSession $Session -DisableNameChecking

Tramite questa modalità il modello di autenticazione è quello Basic: questa modalità in quanto poco efficace dal punto di vista delle sicurezza e non in grado di supportare le funzionalità avanzate come ad esempio la Multi Factor Authentication. Microsoft ha annunciato che gradualmente andrà a "disabilitare" la possibilità di utilizzare la Basic Auth, a favore della più nuova e recente Modern Authentication.

Sui tenant recenti di default l'autenticazione è già impostata per utilizzare l'MA. Ecco quindi che in caso ci si voglia connettere ad un tenant 365 con MA abilitato potrei incorrere in questo messaggio di errore:

New-PSSession : [outlook.office365.com] Connessione al server remoto outlook.office365.com non riuscita con il seguente messaggio di errore: Accesso negato.

errore powershell exchange accesso negato

Per risolvere questo tipo di problema è necessario utilizzare il modulo di Exchange Online PowerShell V2 per connettersi a PowerShell di Exchange Online, in grado di utilizzare la Modern Authentication come meccanismo di autenticazione e di conseguenza anche MFA.

Tramite il modulo PowershellGet, già incluso ad esempio in Windows 10, Windows Server 2016 e 2019 e in generale a tutti i sistemi dotati di Windows Management Framework 5.0 e superiori è possibile automatizzare il download del modulo versione 2 per la Powershell di Exchange 365 Online.

powershell exchange online v2

Successivamente tramite l'esecuzione del comando powershell:

Import-Module ExchangeOnlineManagement; Get-Module ExchangeOnlineManagement

saremo in grado di accedere ai nuovi CMDLET in formato EXO, in modalità Modern Auth:

exchange online powershell

Come stringa di connessione potremo quindi utilizzare il nuovo modulo per autenticarci tramite Modern Auth, scegliendo una delle due modalità:

Connect-ExchangeOnline --Credential $Credenziali -ShowProgress $true  (per la connessione con MFA)

Connect-ExchangeOnline -UserPrincipalName <UPN> -ShowProgress $true  (per la connessione con MFA)

auth exchange online

Et voilà, ora siamo autenticati e connessi al nostro Tenant Microsoft 365 in modalità sicura tramite la Modern Authentication.