Disabilitare l'autenticazione di base in Exchange Online
Importante
A partire da dicembre 2022, l'interfaccia di amministrazione di Exchange classica è stata deprecata per i clienti di tutto il mondo. Microsoft consiglia di usare la nuova interfaccia di amministrazione di Exchange, se non lo fa già.
Anche se la maggior parte delle funzionalità è stata migrata nella nuova interfaccia di amministrazione di Exchange, alcune sono state migrate ad altre interfacce di amministrazione e quelle rimanenti verranno presto migrate a Nuova interfaccia di amministrazione di Exchange. Trovare le funzionalità che non sono ancora disponibili nella nuova interfaccia di amministrazione di Exchange in Altre funzionalità o usare Ricerca globale che consente di esplorare la nuova interfaccia di amministrazione di Exchange.
Nota
Se sono state abilitate le impostazioni predefinite di sicurezza nell'organizzazione, l'autenticazione di base è già disabilitata in Exchange Online. Per altre informazioni, vedere Impostazioni predefinite per la sicurezza in Microsoft Entra ID.
Se questa pagina è stata raggiunta perché l'autenticazione di base non funziona nel tenant e non sono state configurate impostazioni predefinite di sicurezza o criteri di autenticazione, è possibile che l'autenticazione di base nel tenant sia stata disabilitata come parte del programma più ampio per migliorare la sicurezza in Exchange Online. Controllare il Centro messaggi per eventuali post che fanno riferimento all'autenticazione di base e leggere Autenticazione di base ed Exchange Online per gli annunci più recenti relativi all'autenticazione di base.
L'autenticazione di base in Exchange Online usa un nome utente e una password per le richieste di accesso client. Il blocco dell'autenticazione di base consente di proteggere l'organizzazione di Exchange Online da attacchi di forza bruta o password spray. Quando si disabilita l'autenticazione di base per gli utenti in Exchange Online, i client e le app di posta elettronica devono supportare l'autenticazione moderna. Questi client sono:
- Outlook 2013 o versioni successive (Outlook 2013 richiede una modifica della chiave del Registro di sistema. Per ulteriori informazioni, consultare Abilitare l'Autenticazione moderna per Office 2013 sui dispositivi Windows.
- Outlook 2016 per Mac o versione successiva
- Outlook per iOS e Android
- Posta per iOS 11.3.1 o versione successiva
Se l'organizzazione non dispone di client di posta elettronica legacy, è possibile usare i criteri di autenticazione in Exchange Online per disabilitare le richieste di autenticazione di base. La disabilitazione dell'autenticazione di base impone a tutte le richieste di accesso client di usare l'autenticazione moderna. Per altre informazioni sull'autenticazione moderna, vedere Uso dell'autenticazione moderna con i client di Office.
Questo argomento illustra come viene usata e bloccata l'autenticazione di base in Exchange Online e le procedure corrispondenti per i criteri di autenticazione.
Funzionamento dell'autenticazione di base in Exchange Online
L'autenticazione di base è nota anche come autenticazione proxy perché il client di posta elettronica trasmette il nome utente e la password a Exchange Online ed Exchange Online inoltra o proxy le credenziali a un provider di identità autorevole (IdP) per conto del client di posta elettronica o dell'app. L'IdP dipende dal modello di autenticazione dell'organizzazione:
- Autenticazione cloud: IdP è Microsoft Entra ID.
- Autenticazione federata: IdP è una soluzione locale come Active Directory Federation Services (AD FS).
Questi modelli di autenticazione sono descritti nelle sezioni seguenti. Per altre informazioni, vedere Scegliere il metodo di autenticazione corretto per la soluzione di identità ibrida di Microsoft Entra.
Autenticazione cloud
I passaggi nell'autenticazione cloud sono descritti nel diagramma seguente:
Il client di posta elettronica invia il nome utente e la password a Exchange Online.
Nota: quando l'autenticazione di base è bloccata, viene bloccata in questo passaggio.
Exchange Online invia il nome utente e la password a Microsoft Entra ID.
Microsoft Entra ID restituisce un ticket utente a Exchange Online e l'utente viene autenticato.
Autenticazione federata
I passaggi nell'autenticazione federata sono descritti nel diagramma seguente:
Il client di posta elettronica invia il nome utente e la password a Exchange Online.
Nota: quando l'autenticazione di base è bloccata, viene bloccata in questo passaggio.
Exchange Online invia il nome utente e la password all'IdP locale.
Exchange Online riceve un token SAML (Security Assertion Markup Language) dall'IdP locale.
Exchange Online invia il token SAML a Microsoft Entra ID.
Microsoft Entra ID restituisce un ticket utente a Exchange Online e l'utente viene autenticato.
Modalità di blocco dell'autenticazione di base in Exchange Online
È possibile bloccare l'autenticazione di base in Exchange Online creando e assegnando criteri di autenticazione a singoli utenti. I criteri definiscono i protocolli client in cui viene bloccata l'autenticazione di base e l'assegnazione dei criteri a uno o più utenti blocca le richieste di autenticazione di base per i protocolli specificati.
Quando viene bloccata, l'autenticazione di base in Exchange Online viene bloccata al primo passaggio di preautenzione (passaggio 1 nei diagrammi precedenti) prima che la richiesta raggiunga l'ID Microsoft Entra o l'IDP locale. Il vantaggio di questo approccio è la forza bruta o gli attacchi con password spray non raggiungono l'IdP (che potrebbe attivare blocchi dell'account a causa di tentativi di accesso non corretti).
Poiché i criteri di autenticazione funzionano a livello di utente, Exchange Online può bloccare solo le richieste di autenticazione di base per gli utenti esistenti nell'organizzazione cloud. Per l'autenticazione federata, se un utente non esiste in Exchange Online, il nome utente e la password vengono inoltrati all'IdP locale. Si consideri, ad esempio, lo scenario seguente:
Un'organizzazione ha il dominio federato contoso.com e usa AD FS locale per l'autenticazione.
L'utente ian@contoso.com esiste nell'organizzazione locale, ma non in Office 365 o Microsoft 365 (non è presente alcun account utente nell'ID Microsoft Entra e nessun oggetto destinatario nell'elenco indirizzi globale di Exchange Online).
Un client di posta elettronica invia una richiesta di accesso a Exchange Online con il nome utente ian@contoso.com. Non è possibile applicare un criterio di autenticazione all'utente e la richiesta di autenticazione per ian@contoso.com viene inviata ad AD FS locale.
AD FS locale può accettare o rifiutare la richiesta di autenticazione per ian@contoso.com. Se la richiesta viene accettata, viene restituito un token SAML a Exchange Online. Se il valore ImmutableId del token SAML corrisponde a un utente in Microsoft Entra ID, Microsoft Entra ID emetterà un ticket utente per Exchange Online (il valore ImmutableId viene impostato durante l'installazione di Microsoft Entra Connect).
In questo scenario, se contoso.com usa il server AD FS locale per l'autenticazione, il server AD FS locale riceverà comunque richieste di autenticazione per nomi utente inesistenti da Exchange Online durante un attacco con password spray.
In una distribuzione ibrida di Exchange, l'autenticazione per le cassette postali locali verrà gestita dai server Exchange locali e i criteri di autenticazione non verranno applicati. Per le cassette postali spostate in Exchange Online, il servizio di individuazione automatica li reindirizzerà a Exchange Online e quindi verranno applicati alcuni degli scenari precedenti.
Procedure dei criteri di autenticazione in Exchange Online
È possibile gestire tutti gli aspetti dei criteri di autenticazione in PowerShell di Exchange Online. I protocolli e i servizi in Exchange Online per cui è possibile bloccare l'autenticazione di base sono descritti nella tabella seguente.
Protocollo o servizio | Descrizione | Nome del parametro |
---|---|---|
Exchange Active Sync (EAS) | Usato da alcuni client di posta elettronica nei dispositivi mobili. | AllowBasicAuthActiveSync |
Individuazione automatica | Usato dai client Outlook e EAS per trovare e connettersi alle cassette postali in Exchange Online | AllowBasicAuthAutodiscover |
IMAP4 | Usato dai client di posta elettronica IMAP. | AllowBasicAuthImap |
MAPI su HTTP (MAPI/HTTP) | Usato da Outlook 2010 e versioni successive. | AllowBasicAuthMapi |
Rubrica offline (Rubrica offline) | Copia delle raccolte di elenchi di indirizzi scaricate e usate da Outlook. | AllowBasicAuthOfflineAddressBook |
Servizio Outlook | Usato dall'app Posta e calendario per Windows 10. | AllowBasicAuthOutlookService |
POP3 | Usato dai client di posta elettronica POP. | AllowBasicAuthPop |
Reporting Web Services | Usato per recuperare i dati del report in Exchange Online. | AllowBasicAuthReportingWebServices |
Outlook Anywhere (RPC su HTTP) | Usato da Outlook 2016 e versioni precedenti. | AllowBasicAuthRpc |
SMTP autenticato | Usato dai client POP e IMAP per inviare messaggi di posta elettronica. | AllowBasicAuthSmtp |
Servizi Web Exchange (EWS) | Interfaccia di programmazione usata da Outlook, Outlook per Mac e app di terze parti. | AllowBasicAuthWebServices |
PowerShell | Usato per connettersi a Exchange Online con PowerShell remoto. Per istruzioni, vedere Connettersi a PowerShell di Exchange Online. | AllowBasicAuthPowerShell |
In genere, quando si blocca l'autenticazione di base per un utente, è consigliabile bloccare l'autenticazione di base per tutti i protocolli. È tuttavia possibile usare i parametri AllowBasicAuth* (commutatori) nei cmdlet New-AuthenticationPolicy e Set-AuthenticationPolicy per consentire o bloccare in modo selettivo l'autenticazione di base per protocolli specifici.
Per i client di posta elettronica e le app che non supportano l'autenticazione moderna, è necessario consentire l'autenticazione di base per i protocolli e i servizi necessari. Questi protocolli e servizi sono descritti nella tabella seguente:
Client | Protocolli e servizi |
---|---|
Client EWS meno recenti |
|
Client ActiveSync meno recenti |
|
Client POP |
|
Client IMAP |
|
Outlook 2010 |
|
Nota
Il blocco dell'autenticazione di base bloccherà le password delle app in Exchange Online. Per altre informazioni sulle password dell'app, vedere Creare una password dell'app.
Che cosa è necessario sapere prima di iniziare?
Verificare che l'autenticazione moderna sia abilitata nell'organizzazione di Exchange Online (è abilitata per impostazione predefinita). Per altre informazioni, vedere Abilitare o disabilitare l'autenticazione moderna per Outlook in Exchange Online.
Verificare che i client e le app di posta elettronica supportano l'autenticazione moderna (vedere l'elenco all'inizio dell'argomento). Verificare inoltre che i client desktop di Outlook eseguano gli aggiornamenti cumulativi minimi necessari. Per altre informazioni, vedere Aggiornamenti di Outlook.
Per informazioni su come connettersi a PowerShell per Exchange Online, vedere Connettersi a PowerShell per Exchange Online.
Creare e applicare criteri di autenticazione
I passaggi per creare e applicare i criteri di autenticazione per bloccare l'autenticazione di base in Exchange Online sono:
Creare i criteri di autenticazione.
Assegnare i criteri di autenticazione agli utenti.
Attendere 24 ore per applicare il criterio agli utenti o forzare l'applicazione immediata dei criteri.
Questi passaggi sono descritti nelle sezioni seguenti.
Passaggio 1: Creare i criteri di autenticazione
Per creare un criterio che blocchi l'autenticazione di base per tutti i protocolli client disponibili in Exchange Online (configurazione consigliata), usare la sintassi seguente:
New-AuthenticationPolicy -Name "<Descriptive Name>"
In questo esempio viene creato un criterio di autenticazione denominato Block Basic Auth.
New-AuthenticationPolicy -Name "Block Basic Auth"
Per informazioni dettagliate sulla sintassi e sui parametri, vedere New-AuthenticationPolicy.
Note:
Non è possibile modificare il nome dei criteri dopo la creazione. Il parametro Name non è disponibile nel cmdlet Set-AuthenticationPolicy .
Per abilitare l'autenticazione di base per protocolli specifici nei criteri, vedere la sezione Modificare i criteri di autenticazione più avanti in questo argomento. Le stesse impostazioni del protocollo sono disponibili nei cmdlet New-AuthenticationPolicy e Set-AuthenticationPolicy e la procedura per abilitare l'autenticazione di base per protocolli specifici è la stessa per entrambi i cmdlet.
Passaggio 2: Assegnare i criteri di autenticazione agli utenti
I metodi che è possibile usare per assegnare i criteri di autenticazione agli utenti sono descritti in questa sezione:
Singoli account utente: usare la sintassi seguente:
Set-User -Identity <UserIdentity> -AuthenticationPolicy <PolicyIdentity>
In questo esempio viene assegnato il criterio denominato Block Basic Auth all'account laura@contoso.comutente .
Set-User -Identity laura@contoso.com -AuthenticationPolicy "Block Basic Auth"
Filtrare gli account utente in base agli attributi: questo metodo richiede che tutti gli account utente condividano un attributo filtrabile univoco ,ad esempio Titolo o Reparto, che è possibile usare per identificare gli utenti. La sintassi usa i comandi seguenti (due per identificare gli account utente e l'altro per applicare i criteri a tali utenti):
$<VariableName1> = Get-User -ResultSize unlimited -Filter <Filter> $<VariableName2> = $<VariableName1>.MicrosoftOnlineServicesID $<VariableName2> | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}
In questo esempio viene assegnato il criterio denominato Block Basic Auth a tutti gli account utente il cui attributo Title contiene il valore "Sales Associate".
$SalesUsers = Get-User -ResultSize unlimited -Filter "(RecipientType -eq 'UserMailbox') -and (Title -like '*Sales Associate*')" $Sales = $SalesUsers.MicrosoftOnlineServicesID $Sales | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}
Usare un elenco di account utente specifici: questo metodo richiede un file di testo per identificare gli account utente. I valori che non contengono spazi (ad esempio, l'account aziendale o dell'istituto di istruzione di Office 365 o Microsoft 365) funzionano meglio. Il file di testo deve contenere un account utente in ogni riga come indicato di seguito:
akol@contoso.com
tjohnston@contoso.com
kakers@contoso.comLa sintassi usa i due comandi seguenti (uno per identificare gli account utente e l'altro per applicare i criteri a tali utenti):
$<VariableName> = Get-Content "<text file>" $<VariableName> | foreach {Set-User -Identity $_ -AuthenticationPolicy <PolicyIdentity>}
In questo esempio viene assegnato il criterio denominato Block Basic Auth agli account utente specificati nel file C:\My Documents\BlockBasicAuth.txt.
$BBA = Get-Content "C:\My Documents\BlockBasicAuth.txt" $BBA | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}
Filtrare gli account utente di Active Directory locali sincronizzati con Exchange Online: per informazioni dettagliate, vedere la sezione Filtrare gli account utente di Active Directory locali sincronizzati con Exchange Online in questo argomento.
Nota
Per rimuovere l'assegnazione di criteri dagli utenti, usare il valore $null
per il parametro AuthenticationPolicy nel cmdlet Set-User .
Passaggio 3: (Facoltativo) Applicare immediatamente i criteri di autenticazione agli utenti
Per impostazione predefinita, quando si crea o si modifica l'assegnazione dei criteri di autenticazione per gli utenti o si aggiornano i criteri, le modifiche diventano effettive entro 24 ore. Se si vuole che i criteri abbiano effetto entro 30 minuti, usare la sintassi seguente:
Set-User -Identity <UserIdentity> -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)
Questo esempio applica immediatamente i criteri di autenticazione all'utente laura@contoso.com.
Set-User -Identity laura@contoso.com -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)
Questo esempio applica immediatamente i criteri di autenticazione a più utenti identificati in precedenza da attributi filtrabili o da un file di testo. Questo esempio funziona se si è ancora nella stessa sessione di PowerShell e non sono state modificate le variabili usate per identificare gli utenti (in seguito non è stato usato lo stesso nome di variabile per altri scopi). Ad esempio:
$Sales | foreach {Set-User -Identity $_ -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)}
o
$BBA | foreach {Set-User -Identity $_ -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)}
Visualizzare i criteri di autenticazione
Per visualizzare un elenco riepilogativo dei nomi di tutti i criteri di autenticazione esistenti, eseguire il comando seguente:
Get-AuthenticationPolicy | Format-Table Name -Auto
Per visualizzare informazioni dettagliate su un criterio di autenticazione specifico, usare questa sintassi:
Get-AuthenticationPolicy -Identity <PolicyIdentity>
In questo esempio vengono restituite informazioni dettagliate sui criteri denominati Block Basic Auth.
Get-AuthenticationPolicy -Identity "Block Basic Auth"
Per informazioni dettagliate sulla sintassi e sui parametri, vedere Get-AuthenticationPolicy.
Modificare i criteri di autenticazione
Per impostazione predefinita, quando si crea un nuovo criterio di autenticazione senza specificare alcun protocollo, l'autenticazione di base viene bloccata per tutti i protocolli client in Exchange Online. In altre parole, il valore predefinito dei parametri AllowBasicAuth* (commutatori) è False
per tutti i protocolli.
Per abilitare l'autenticazione di base per un protocollo specifico disabilitato, specificare l'opzione senza un valore.
Per disabilitare l'autenticazione di base per un protocollo specifico abilitato, è possibile usare solo il valore
:$false
.
È possibile usare il cmdlet Get-AuthenticationPolicy per visualizzare lo stato corrente delle opzioni AllowBasicAuth* nei criteri.
In questo esempio viene abilitata l'autenticazione di base per il protocollo POP3 e viene disabilitata l'autenticazione di base per il protocollo IMAP4 nei criteri di autenticazione esistenti denominati Block Basic Auth.
Set-AuthenticationPolicy -Identity "Block Basic Auth" -AllowBasicAuthPop -AllowBasicAuthImap:$false
Per informazioni dettagliate sulla sintassi e sui parametri, vedere Set-AuthenticationPolicy.
Configurare i criteri di autenticazione predefiniti
I criteri di autenticazione predefiniti vengono assegnati a tutti gli utenti a cui non è già stato assegnato un criterio specifico. Si noti che i criteri di autenticazione assegnati agli utenti hanno la precedenza sui criteri predefiniti. Per configurare i criteri di autenticazione predefiniti per l'organizzazione, usare questa sintassi:
Set-OrganizationConfig -DefaultAuthenticationPolicy <PolicyIdentity>
In questo esempio il criterio di autenticazione denominato Block Basic Auth viene configurato come criterio predefinito.
Set-OrganizationConfig -DefaultAuthenticationPolicy "Block Basic Auth"
Nota
Per rimuovere la designazione predefinita dei criteri di autenticazione, usare il valore $null
per il parametro DefaultAuthenticationPolicy .
Usare l'esempio seguente per verificare che sia configurato un criterio di autenticazione predefinito.
Get-OrganizationConfig | Format-Table DefaultAuthenticationPolicy
Rimuovere i criteri di autenticazione
Per rimuovere un criterio di autenticazione esistente, usare questa sintassi:
Remove-AuthenticationPolicy -Identity <PolicyIdentity>
In questo esempio viene rimosso il criterio denominato Test Auth Policy.
Remove-AuthenticationPolicy -Identity "Test Auth Policy"
Per informazioni dettagliate sulla sintassi e sui parametri, vedere Remove-AuthenticationPolicy.
Come si sa di aver disabilitato correttamente l'autenticazione di base in Exchange Online?
Per verificare che un criterio di autenticazione sia stato applicato direttamente agli utenti:
Nota
Tenere conto del fatto che un criterio di autenticazione predefinito potrebbe essere già configurato. Per informazioni dettagliate, vedere Configurare i criteri di autenticazione predefiniti .
Eseguire il comando seguente per trovare il valore del nome distinto (DN) dei criteri di autenticazione:
Get-AuthenticationPolicy | Format-List Name,DistinguishedName
Usare il valore DN dei criteri di autenticazione nel comando seguente:
Get-User -Filter "AuthenticationPolicy -eq '<AuthPolicyDN>'"
Ad esempio:
Get-User -Filter "AuthenticationPolicy -eq 'CN=Block Basic Auth,CN=Auth Policies,CN=Configuration,CN=contoso.onmicrosoft.com,CN=ConfigurationUnits,DC=NAMPR11B009,DC=PROD,DC=OUTLOOK,DC=COM'"
Quando un criterio di autenticazione blocca le richieste di autenticazione di base da un utente specifico per un protocollo specifico in Exchange Online, la risposta è 401 Unauthorized
. Non vengono restituite altre informazioni al client per evitare la perdita di informazioni aggiuntive sull'utente bloccato. Un esempio della risposta è simile al seguente:
HTTP/1.1 401 Unauthorized
Server: Microsoft-IIS/10.0
request-id: 413ee498-f337-4b0d-8ad5-50d900eb1f72
X-CalculatedBETarget: DM5PR2101MB0886.namprd21.prod.outlook.com
X-BackEndHttpStatus: 401
Set-Cookie: MapiRouting=#################################################; path=/mapi/; secure; HttpOnly
X-ServerApplication: Exchange/15.20.0485.000
X-RequestId: {3146D993-9082-4D57-99ED-9E7D5EA4FA56}:8
X-ClientInfo: {B0DD130A-CDBF-4CFA-8041-3D73B4318010}:59
X-RequestType: Bind
X-DiagInfo: DM5PR2101MB0886
X-BEServer: DM5PR2101MB0886
X-Powered-By: ASP.NET
X-FEServer: MA1PR0101CA0031
WWW-Authenticate: Basic Realm="",Basic Realm=""
Date: Wed, 31 Jan 2018 05:15:08 GMT
Content-Length: 0
Gestire l'autenticazione di base nell'interfaccia di amministrazione di Microsoft 365
Nell'interfaccia di amministrazione di Microsoft 365 in https://admin.microsoft.com, andare Impostazioni>Impostazioni organizzazione Autenticazione>moderna. Nel riquadro a comparsa Autenticazione moderna visualizzato è possibile identificare i protocolli che non richiedono più l'autenticazione di base.
Dietro le quinte, queste impostazioni usano i criteri di autenticazione. Se i criteri di autenticazione sono stati creati in passato, la modifica di una di queste selezioni creerà automaticamente il primo nuovo criterio di autenticazione. Questo criterio è visibile solo tramite PowerShell. Per i clienti avanzati che potrebbero già usare i criteri di autenticazione, le modifiche apportate all'interfaccia di amministrazione di Microsoft 365 modificheranno i criteri predefiniti esistenti. Esaminare i log di accesso di Microsoft Entra per vedere quali protocolli vengono usati dai client prima di apportare modifiche.
La disattivazione dell'autenticazione di base nell'interfaccia di amministrazione di Microsoft 365 non disattiva i servizi legacy seguenti:
- AllowBasicAuthOutlookService
- AllowBasicAuthReportingWebServices
È possibile disattivare queste impostazioni solo in PowerShell di Exchange Online.
Eseguire il comando seguente per trovare il nome dei criteri di autenticazione esistenti:
Get-AuthenticationPolicy
Sostituire <AuthenticationPolicyName> con il valore del passaggio precedente ed eseguire il comando seguente:
Set-AuthenticationPolicy -Identity "<AuthenticationPolicyName>" -AllowBasicAuthReportingWebServices:$false -AllowBasicAuthOutlookService:$false
Il comando precedente influisce sulle nuove cassette postali che verranno create, ma non sulle cassette postali esistenti. Per applicare i criteri alle cassette postali esistenti, usare il <valore AuthenticationPolicyName> nel comando seguente:
$mbx = Get-Mailbox -RecipientTypeDetails UserMailbox -ResultSize unlimited $mbx | foreach {Set-User -Identity $_.ExchangeObjectID.tostring() -AuthenticationPolicy <AuthenticationPolicyName>}
Filtrare gli account utente di Active Directory locali sincronizzati con Exchange Online
Questo metodo usa un attributo specifico come filtro per i membri del gruppo di Active Directory locali che verranno sincronizzati con Exchange Online. Questo metodo consente di disabilitare i protocolli legacy per gruppi specifici senza influire sull'intera organizzazione.
In questo esempio verrà usato l'attributo Department , perché è un attributo comune che identifica gli utenti in base al reparto e al ruolo. Per visualizzare tutte le proprietà estese dell'utente di Active Directory, passare ad Active Directory: Get-ADUser Proprietà predefinite ed estese.
Passaggio 1: Trovare gli utenti di Active Directory e impostare gli attributi utente di Active Directory
Ottenere i membri di un gruppo di Active Directory
Questi passaggi richiedono il modulo Active Directory per Windows PowerShell. Per installare questo modulo nel PC, è necessario scaricare e installare Strumenti di amministrazione remota del server.
Eseguire il comando seguente in Active Directory PowerShell per restituire tutti i gruppi in Active Directory:
Get-ADGroup -Filter * | select -Property Name
Dopo aver ottenuto l'elenco dei gruppi, è possibile eseguire una query sugli utenti che appartengono a tali gruppi e creare un elenco in base a uno dei relativi attributi. È consigliabile usare l'attributo objectGuid perché il valore è univoco per ogni utente.
Get-ADGroupMember -Identity "<GroupName>" | select -Property objectGuid
In questo esempio viene restituito il valore dell'attributo objectGuid per i membri del gruppo denominato Developers.
Get-ADGroupMember -Identity "Developers" | select -Property objectGuid
Impostare l'attributo utente filtrabile
Dopo aver identificato il gruppo di Active Directory che contiene gli utenti, è necessario impostare il valore dell'attributo che verrà sincronizzato con Exchange Online per filtrare gli utenti e infine disabilitare l'autenticazione di base.
Usare la sintassi seguente in Active Directory PowerShell per configurare il valore dell'attributo per i membri del gruppo identificato nel passaggio precedente. Il primo comando identifica i membri del gruppo in base al valore dell'attributo objectGuid . Il secondo comando assegna il valore dell'attributo Department ai membri del gruppo.
$variable1 = Get-ADGroupMember -Identity "<GroupName>" | select -ExpandProperty "objectGUID"; Foreach ($user in $variable1) {Set-ADUser -Identity $user.ToString() -Add@{Department="<DepartmentName>"}}
In questo esempio l'attributo Department viene impostato sul valore "Developer" per gli utenti che appartengono al gruppo denominato "Developers".
$variable1 = Get-ADGroupMember -Identity "Developers" | select -ExpandProperty "objectGUID"; Foreach ($user in $variable1) {Set-ADUser -Identity $user.ToString() -Add@{Department="Developer"}}
Usare la sintassi seguente in Active Directory PowerShell per verificare che l'attributo sia stato applicato agli account utente (ora o in passato):
Get-ADUser -Filter "Department -eq '<DepartmentName>'" -Properties Department
In questo esempio vengono restituiti tutti gli account utente con il valore "Developer" per l'attributo Department .
Get-ADUser -Filter "Department -eq 'Developer'" -Properties Department
Passaggio 2: Disabilitare l'autenticazione legacy in Exchange Online
Nota
I valori degli attributi per gli utenti locali vengono sincronizzati con Exchange Online solo per gli utenti con una licenza di Exchange Online valida. Per altre informazioni, vedere Aggiungere utenti singolarmente o in blocco.
La sintassi di PowerShell di Exchange Online usa i comandi seguenti (due per identificare gli account utente e l'altro per applicare i criteri a tali utenti):
$<VariableName1> = Get-User -ResultSize unlimited -Filter <Filter>
$<VariableName2> = $<VariableName1>.MicrosoftOnlineServicesID
$<VariableName2> | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}
In questo esempio viene assegnato il criterio denominato Block Basic Auth a tutti gli account utente sincronizzati il cui attributo Department contiene il valore "Developer".
$developerUsers = Get-User -ResultSize unlimited -Filter "(RecipientType -eq 'UserMailbox') -and (department -like '*developer*')"
$developers = $developerUsers.MicrosoftOnlineServicesID
$developers | foreach {Set-User -Identity $_ -AuthenticationPolicy "Block Basic Auth"}
Se ci si connette a PowerShell di Exchange Online in una sessione di PowerShell di Active Directory, è possibile usare la sintassi seguente per applicare i criteri a tutti i membri di un gruppo di Active Directory.
In questo esempio viene creato un nuovo criterio di autenticazione denominato Criteri di marketing che disabilita l'autenticazione di base per i membri del gruppo di Active Directory denominato Reparto marketing per i client ActiveSync, POP3, SMTP autenticati e IMAP4.
Nota
Una limitazione nota in Active Directory PowerShell impedisce al cmdlet Get-AdGroupMember di restituire più di 5000 risultati. Di conseguenza, l'esempio seguente funziona solo per i gruppi di Active Directory con meno di 5000 membri.
New-AuthenticationPolicy -Name "Marketing Policy" -AllowBasicAuthActiveSync $false -AllowBasicAuthPop $false -AllowBasicAuthSmtp $false -AllowBasicAuthImap $false
$users = Get-ADGroupMember "Marketing Department"
foreach ($user in $users) {Set-User -Identity $user.SamAccountName -AuthenticationPolicy "Marketing Policy"}