CASO:
Ho bisogno di uno script che possa convertire una casella di posta attiva in una casella di posta inattiva nella console Exchange Online o in remoto Exchange Powershell. Non lo imposterò tramite GUI
SOLUZIONE:
Di seguito sono riportati i passaggi per disabilitare una cassetta postale utilizzando il modulo PowerShell di Exchange Online:
Connettiti a Exchange Online PowerShell utilizzando le tue credenziali di amministratore.
Puoi farlo eseguendo il seguente comando in PowerShell:
Connect-ExchangeOnline –
UserPrincipalName admin@contoso.com
Una volta connesso, esegui il seguente comando per disabilitare la casella di posta:
Disable-Mailbox -Identity user@contoso.com -InactiveMailbox
Sostituire user@contoso.com con l’indirizzo di posta elettronica della cassetta postale che si desidera disabilitare.
Il parametro -InactiveMailbox specifica che la cassetta postale deve essere disabilitata come cassetta postale inattiva. Conferma l’azione digitando ‘Y’ e premi Invio:
Confermare
Sei sicuro di voler eseguire questa azione?
La disabilitazione della cassetta postale “user@contoso.com” contrassegnerà la cassetta postale come inattiva e rimuoverà gli attributi di Exchange dall’oggetto utente di Active Directory. Se la cassetta postale dispone di un archivio, verrà contrassegnata come inattiva e la cassetta postale di archiviazione verrà disabilitata.
Vuoi continuare?
[Y] Sì [A] Sì a tutti [N] No [L]
No a tutti [?] Aiuto (il valore predefinito è “Y”): Y
La cassetta postale verrà disabilitata e contrassegnata come cassetta postale inattiva. Puoi verificarlo eseguendo il seguente comando:
Get-Mailbox -Identity user@contoso.com | Format-List RecipientTypeDetails
L’output dovrebbe mostrare che la cassetta postale è una cassetta postale inattiva:
RecipientTypeDetails: cassetta postale inattiva
Questo è tutto! La cassetta postale è ora disabilitata e contrassegnata come cassetta postale inattiva.

Ecco uno script PowerShell che potrebbe essere utile per convertire una casella di posta attiva in una casella di posta inattiva:
Imposta le credenziali dell’amministratore Exchange Online
$UserCredential = Get-Credential
Imposta la sessione di Exchange Online
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri
https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication
Basic -AllowRedirection
Importa la sessione di Exchange Online
Import-PSSession $Session
Imposta l’indirizzo email della casella di posta da convertire inattiva
$Mailbox = “email@dominio.com”
Disabilita la casella di posta
Disable-Mailbox -Identity $Mailbox
Rimuove l’assegnazione delle licenze dalla casella di posta
Set-MsolUserLicense -UserPrincipalName $Mailbox -RemoveLicenses “licenza”
Rimuove le autorizzazioni della casella di posta
Remove-MailboxPermission -Identity $Mailbox -User “username” -AccessRights FullAccess –
InheritanceType All
Rimuove la casella di posta dai gruppi di distribuzione
Get-DistributionGroup | Where-Object {$_.Members -contains $Mailbox} | ForEach-Object
{Remove-DistributionGroupMember -Identity $_.Name -Member $Mailbox}
Rimuove la casella di posta dai gruppi di sicurezza
Get-Group | Where-Object {$_.Members -contains $Mailbox} | ForEach-Object {Remove-
GroupMember -Identity $_.Name -Member $Mailbox}
Rimuove la casella di posta dai gruppi di site
Get-Site | Where-Object {$_.GroupMailboxes -contains $Mailbox} | ForEach-Object {Remove-
SiteMailbox -Identity $_.Name -GroupMailbox $Mailbox}
Rimuove la casella di posta dalla ricerca di destinazione
Get-SearchMailbox -Identity “SearchMailbox” | Where-Object {$_.SearchQuery -match
$Mailbox} | ForEach-Object {Set-SearchMailbox -Identity $_.Identity -SearchQuery
$_.SearchQuery.Replace($Mailbox,”)}
Rimuove la casella di posta dai criteri di conservazione
Get-RetentionPolicyTag | Where-Object {$_.RetentionEnabled -eq $true} | ForEach-Object
{Set-RetentionPolicyTag $_.Name -RemoveMailboxFolderPolicy $Mailbox}
Rimuove la casella di posta dalle cartelle gestite
Get-ManagedFolderMailboxPolicy | Where-Object {$_.ManagedFolderLinks -match $Mailbox} |
ForEach-Object {Set-ManagedFolderMailboxPolicy $_.Name -ManagedFolderLinks
$_.ManagedFolderLinks.Replace($Mailbox,”)}
Rimuove la casella di posta dalle regole della casella di posta
Get-InboxRule | Where-Object {$_.From -match $Mailbox -or $_.SentTo -match $Mailbox -or
$_.CcMessages -match $Mailbox -or $_.BccMessages -match $Mailbox} | Remove-InboxRule
Rimuove la casella di posta dal gruppo di memorizzazione
Get-GroupMailbox -Identity “GroupMailbox” | Where-Object {$_.Members -contains $Mailbox} |
ForEach-Object {Remove-GroupMailboxUser -Identity $_.Name -User