Visualizzazione post con etichetta mailbox. Mostra tutti i post
Visualizzazione post con etichetta mailbox. Mostra tutti i post

venerdì 20 maggio 2022

MS Exchange Online: Gestire la funzione Messaggi secondari mediante Exchange PowerShell

La funzionalità Messaggi secondari (o Clutter), introdotta in Exchange Online (Office365), analizza le abitudini dell'utente con la posta elettronica e, in base al comportamento passato, determina quali messaggi verranno più probabilmente ignorati. Tali messaggi, considerati a bassa priorità, verranno spostati dalla cartella Posta in arrivo ad una cartella chiamata Messaggi secondari agevolando in questo modo l'utente nella gestione delle email più importanti.

Per attivare o disattivare questa funzionalità per gli utenti dell'organizzazione, è necessario usare Exchange PowerShell e il cmdlet Set-Clutter.

Sintassi

Set-Clutter
   -Identity <MailboxIdParameter>
   [-Enable <Boolean>]
   [<CommonParameters>]
   

Parametri   

-Enable
Permette di specificare se abilitare/disabilitare la funzione Messaggi secondari. I valori validi da passare al parametro sono:
  • $True: Abilita la funzione Messaggi secondari.
  • $False: Disabilita la funzione Messaggi secondari.

-Identity
Il parametro Identity specifica la mailbox su cui si intende operare. Si può usare qualsiasi valore che identifichi univocamente la casella di posta. Per esempio:
Nome
Alias
Distinguished name (DN)
Domain\Username
Email address
GUID
LegacyExchangeDN
SamAccountName
User ID o user principal name (UPN)

Esempi

Esempio 1
Set-Clutter -Identity giovanni.lubrano@contoso.com -Enable $false
Disabilita la funzione Messaggi secondari sulla casella di posta specificata. La cartella Messaggi secondari, se presente, non verrà eliminata ma i messaggi con bassa priorità non verranno più spostati nella cartella.

Esempio 2
Get-Mailbox | Set-Clutter -Enable $false
Disabilita la funzione Messaggi secondari per tutti gli utenti.






lunedì 28 marzo 2022

MS Exchange: Visualizzare le impostazioni del filtro di posta indesiderata

Nell'articolo  MS Exchange: Configurare il filtro di posta indesiderata sulle caselle di posta è stato mostrato come configurare il filtro di posta indesiderate mediante l'utilizzo del cmdlet Set-MailboxJunkEmailConfiguration. In quest'articolo vedremo come visualizzare le impostazioni della posta indesiderata di una casella di posta utilizzando il cmdlet Get-MailboxJunkEmailConfiguration. Questo cmdlet è disponibile sia in Exchange on-premises che in Exchange on-cloud anche se alcuni parametri e impostazioni possono essere esclusivi di un solo ambiente.

Sintassi

Get-MailboxJunkEmailConfiguration
   [-Identity] <MailboxIdParameter>
   [-Credential <PSCredential>]
   [-DomainController <Fqdn>]
   [-ReadFromDomainController]
   [-ResultSize <Unlimited>]
   [<CommonParameters>]

Parametri

-Credential
Specifica le credenziali dell'account utente con cui eseguire il comando. Se omesso viene considerato l'utente corrente che sta eseguendo il comando. Al parametro può essere passato il nome dell'account, come ad es. "utente01" o "Dominio\utente01" oppure può essere passato un'oggetto PSCredential generato dal cmdlet Get-Credential. Se viene specificato un'account utente verrà richiesto di inserire la password all'esecuzione del comando.

-DomainController
Questo parametro è disponibile solo in Exchange on-premises.
Il parametro DomainController specifica il controller di dominio usato dal cmdlet per leggere o scrivere dati in Active Directory. Il controller di dominio viene identificato tramite FQDN:per esempio, dc01.contoso.com.

-Identity
Il parametro Identity specifica la mailbox su cui si intende operare. Si può usare qualsiasi valore che identifichi univocamente la casella di posta. Per esempio:
Nome
Alias
Distinguished name (DN)
Domain\Username
Email address
GUID
LegacyExchangeDN
SamAccountName
User ID o user principal name (UPN)

-ReadFromDomainController
Il parametro ReadFromDomainController specifica che le informazioni dovrebbero essere lette da un controller di dominio nel dominio dell'utente. Non è necessario specificare un valore con questo interruttore.

-ResultSize 
Il parametro ResultSize specifica il numero massimo di risultati da restituire. Per  restituire tutte le richieste che corrispondono alla query va passato al parametro il valore unlimited. Il valore predefinito è 1000.

Esempi

Esempio 1
Get-MailboxJunkEmailConfiguration -Identity "GLubrano"
Questo esempio restituisce la configurazione della posta indesiderata per l'utente chiamato GLubrano.
Get-MailboxJunkEmailConfiguration, Filtro posta indesiderata



Esempio 2
Get-Mailbox -ResultSize unlimited -RecipientTypeDetails UserMailbox | foreach {Get-MailboxJunkEmailConfiguration -Identity $_.UserPrincipalName} | Where {$_.Enabled -eq $false} | Format-Table -Auto Identity,Enabled
Questo esempio restituisce una lista riassuntiva di tutte le caselle di posta nell'organizzazione in cui la regola della posta indesiderata è disabilitata






sabato 26 marzo 2022

MS Exchange: Configurare il filtro di posta indesiderata sulle caselle di posta

Per configurare le impostazioni di posta indesiderata sulla caselle di posta è possibile utilizzare il cmdlet Set-MailboxJunkEmailConfiguration.
Questo cmdlet è disponibile sia per Exchange on-premises che per Exchange on-cloud anche se alcuni parametri e impostazioni sono esclusivi di uno solo dei due ambienti. Il cmdlet può essere usato solo su caselle di posta su cui l'utente ha già eseguito l'accesso mediante MS Outlook (in modalità cached) o tramite OWA, in caso contrario si riceverà un messaggio di errore. Per sopprimere questo errore è possibile utilizzare il parametro -ErrorAction SilentlyContinue.

Set-MailboxJunkEmailConfiguration può essere usato sia per attivare/disattivare la regola di posta indesiderata (una regola nascosta nella casella di posta denominata Junk E-mail Rule) sia per configurarla con l'elenco dei mittenti/destinatari attendibili e mittenti bloccati

Sintassi

Set-MailboxJunkEmailConfiguration
   [-Identity] <MailboxIdParameter>
   [-BlockedSendersAndDomains <MultiValuedProperty>]
   [-Confirm]
   [-ContactsTrusted <Boolean>]
   [-DomainController <Fqdn>]
   [-Enabled <Boolean>]
   [-IgnoreDefaultScope]
   [-TrustedListsOnly <Boolean>]
   [-TrustedRecipientsAndDomains <MultiValuedProperty>]
   [-TrustedSendersAndDomains <MultiValuedProperty>]
   [-WhatIf]
   [<CommonParameters>]


Parametri

-BlockedSendersAndDomains
Il parametro BlockedSendersAndDomains consente di specificare la lista dei mittenti bloccati; una lista di indirizzi e-mail e domini mittenti i cui messaggi vengono automaticamente spostati nella cartella Posta indesiderata

Per inserire più valori e sovrascrivere qualsiasi voce esistente, si usa la seguente sintassi: "Valore1","Valore2",..."ValoreN". 

Per aggiungere o rimuovere uno o più valori senza influenzare le voci esistenti, va usata la seguente sintassi: @{Add="Valore1", "Valore2"...; Remove="Valore3", "Valore4"...}.

-Confirm
Consente di mostrare o nascondere la richiesta di conferma. 

-ContactsTrusted
Il parametro ContactsTrusted specifica se i contatti nella cartella Contatti sono da considerare come mittenti attendibili. I valori validi sono:
  • $true: I messaggi provenienti dai contatti presenti nella cartella Contatti  non verranno mai spostati nella cartella Posta indesiderata indipendentemente dal contenuto.
  • $false: I messaggi provenienti dai contatti presenti nella cartella Contatti non saranno trattati come mittenti attendibili. L'indirizzo email  viene considerato attendibile solo se definito nell'elenco dei mittenti attendibili.

-DomainController
Questo parametro è disponibile solo in Exchange on-premises.
Il parametro DomainController specifica il controller di dominio usato dal cmdlet per leggere o scrivere dati in Active Directory. Il controller di dominio viene identificato tramite FQDN:per esempio, dc01.contoso.com.

-Enabled
Il parametro Enabled abilita o disabilita la regola della posta indesiderata sulla casella di posta elettronica. Passando al parametro il valore $True la regola viene abilitata mentre viene disabilitata passando al parametro il valore $False.

-IgnoreDefaultScope
IgnoreDefaultScope indica di usare l'intera foresta come ambito permettendo al comando di accedere agli oggetti di Active Directory che non sono disponibili nell'ambito predefinito. Il parametro introduce le seguenti restrizioni:
  • Non è possibile usare il parametro DomainController. Il comando utilizza automaticamente un server di catalogo globale appropriato.
  • Si può usare solo il DN per il parametro Identity. Altre forme di identificazione, come alias o GUID, non sono accettate.

-TrustedListsOnly
Il parametro TrustedListsOnly specifica che solo i messaggi provenienti dai mittenti presenti nella lista dei mittenti attendibili sono consegnati nella cartella Posta in arrivo. Tutti gli altri messaggi sono trattati come posta indesiderata. I valori validi sono:
  • $true: Solo i messaggi provenienti da indirizzi e-mail o domini inseriti nell'elenco Mittenti attendibili vengono consegnati alla Posta in arrivo. Tutti gli altri messaggi vengono automaticamente consegnati nella cartella Posta indesiderata.
  • $false: I messaggi provenienti da altri mittenti, destinatari e domini non vengono automaticamente trattati come posta indesiderata, e vengono valutati individualmente. Questo è il valore predefinito.

-TrustedSendersAndDomains
Il parametro TrustedSendersAndDomains consente di specificare la lista dei Mittenti attendibili e Destinatari attendibili.
Per inserire più valori e sovrascrivere qualsiasi voce esistente, si usa la seguente sintassi: "Valore1","Valore2",..."ValoreN". 

Per aggiungere o rimuovere uno o più valori senza influenzare le voci esistenti, usate la seguente sintassi: @{Add="Valore1", "Valore2"...; Remove="Valore3", "Valore4"...}.

Tutti gli indirizzi email nella lista globale degli indirizzi (GAL) sono automaticamente considerati come mittenti attendibili, quindi non è necessario aggiungerli alla lista.
Con questo cmdlet non è possibile modificare direttamente l'elenco dei destinatari attendibili. Con questo parametro viene modificato l'elenco dei Mittenti attendibili, e gli indirizzi e-mail e i domini sono sincronizzati con l'elenco Destinatari attendibili

-WhatIf
WhatIf simula le azioni del comando.


Esempi

Esempio1
Set-MailboxJunkEmailConfiguration GLubrano -Enabled $false
Disabilita la regola della posta indesiderata sulla casella di posta elettronica specificata.
Set-MailboxJunkEmailConfiguration
FIG 1 - Set-MailboxJunkEmailConfiguration



Esempio 2
Set-MailboxJunkEmailConfiguration GLUBRANO -TrustedSendersAndDomains @{Add="contoso.com","microsoft.com"} -BlockedSendersAndDomains @{Add="joker@gotham.com"}
Aggiunge i domini contoso.com e microsoft.com come Mittenti attendibili senza interferire con i domini già presenti in elenco. Aggiunge, inoltre, l'indirizzo joker@gotham.com all'elenco dei Mittenti bloccati, anche in questo caso senza andare ad interferire con gli indirizzi già presenti.

Esempio 3
Get-MailboxJunkEmailConfiguration * | Where {$_.ContactsTrusted -eq $true} | Set-MailboxJunkEmailConfiguration -ContactsTrusted $false
Il comando sopra riportato agisce su tutte le mailbox. Sulle mailbox dove i mittenti presenti nella cartella Contatti vengono considerati come Mittenti attendibili, modifica la configurazione (i Contatti non verranno più trattati come mittenti attendibili)



mercoledì 5 maggio 2021

MS Exchange: Verificare se la casella risiede "on Cloud" o "on Premises" tramite PowerShell

Un metodo veloce per verificare se una casella di posta è on cloud o on premises è quello di verificare la proprietà targetAddress relativa all'account in Active Directory. Possiamo effettuare la verifica utilizzando il cmdlet Get-AdUser a cui passare, tramite il parametro -Identity, un DN (Distinguished name), un GUID (objectGUID), un security identifier (objectSid) oppure un SAM account name (sAMAccountName).

Il comando da eseguire per verificare dove si trova la casella di posta sarà simile a
if((Get-ADUser -Identity <ADUser> -Properties targetAddress).targetAddress -match "onmicrosoft.com" ) { "On Cloud" } else { "On Prem" }

Ad es.
if((Get-ADUser -Identity GLUBRANO -Properties targetAddress).targetAddress -match "onmicrosoft.com" ) { "On Cloud" } else { "On Prem" }

Verifica mailbox
FIG 1 - Verifica mailbox




venerdì 29 marzo 2019

MS Exchange: Visualizzare i permessi di una cartella presente sulla mailbox tramite EMS

Chi gestisce un'infrastruttura di posta elettronica può trovarsi spesso nella situazione di dover verificare permessi assegnati ad una particolare cartella presente in una mailbox. In ambiente MS Exchange Server tale operazione può essere eseguita con l'ausilio del cmdlet Get-MailboxFolderPermission tramite EMS (Exchange Management Shell).

Get-MailboxFolderPermission  [-Identity] <MailboxFolderIdParameter> [-DomainController <Fqdn>]   [-User <MailboxFolderUserIdParameter>]    [-GroupMailbox]   [<CommonParameters>]


Parametri

-DomainController
Il parametro consente di specificare il Domain Controller a cui far riferimento per reperire dati dall'Active Directory. Il dominio va specificato nel formato FQDN (Fully Qualified Domain Name) ad es. dc02.contoso.com

-GroupMailbox
Il parametro è utilizzato per includere nei risultati i gruppi di Office 365.

-Identity
Tale parametro specifica la mailbox e la cartella su cui si intendono verificare le abilitazioni. La sintassi è del tipo  <Mailbox>:\<Folder>. Per <Mailbox> può essere specificato un qualsiasi valore che identifica la mailbox in maniera univoca come:
GUID
Distinguished name (DN)
Dominio\Account
Nome dell'entità utente
LegacyExchangeDN
SamAccountName
Indirizzo SMTP
Alias 

-User
Il parametro User filtra i risultati visualizzando solo le abilitazioni dell'utente indicato. Anche in questo caso è possibile utilizzare qualsiasi valore che permetta l'identificazione univoca dell'utente/gruppo come:
Nome
Display name
Alias
Distinguished name (DN)
Canonical DN
Indirizzo email
GUID




Esempi


Esempio 1
Get-MailboxFolderPermission  -identity GLUBRANO
Per visualizzare i permessi sulla root della mailbox.


Esempio 2
Get-MailboxFolderPermission  -identity GLUBRANO:\Calendario
o per maggiori dettagli
Get-MailboxFolderPermission  -identity GLUBRANO:\Calendario |FL
Visualizza i permessi sulla cartella Calendario della casella dell'utente GLUBRANO
Get-MailboxFolderPermission
FIG 1 - Get-MailboxFolderPermission

Esempio 3
Get-MailboxFolderPermission  -identity GLUBRANO:\Calendario -User DDUCK
Visualizza i permessi che l'utente DDUCK dispone sulla cartella Calendario presente nella mailbox dell'utente GLUBRANO.




martedì 12 febbraio 2019

MS Exchange: Visualizzare le categorie definite su una casella di posta tramite EMS

Tramite le categorie colore è possibile raggruppare, organizzare e identificare rapidamente gli elementi di posta di proprio interesse. E' possibile scegliere tra un insieme di categorie predefinite o crearne di personalizzate e assegnare più categorie colore ad un singolo elemento di posta.

Per visualizzare le categorie colore definite su una mailbox tramite EMS (Exchange Management Shell) si utilizza il cmdlet Get-MessageCategory. La sintassi del comando è la seguente
Get-MessageCategory -Mailbox <userID o indirizzo_mailbox>

Ad es.
Get-MessageCategory -Mailbox GLUBRANO

Get-MessageCategory -Mailbox giovanni.lubrano@contoso.com

L'output del comando visualizzerà tutte le categorie definite sulla mailbox specificata e sarà analogo a quello visualizzato in FIG 1 dove si evidenzia il campo Name che rappresenta il nome assegnato alla categoria e il campo Color che rappresenta il codice identificativo del colore.

Get-MessageCategory, visualizzare le categorie definite sulla mailbox
FIG 1 - Get-MessageCategory, visualizzare le categorie definite sulla mailbox




giovedì 16 agosto 2018

MS Exchange: Verificare ed eliminare regole di inoltro automatico impostate sulla mailbox utilizzando EMS

Negli articoli

è stato già mostrato come verificare la presenza di regole impostate sulla mailbox e come procedere alla loro disabilitazione e alla loro rimozione. In questo articolo verrà mostrato, invece, come individuare un particolare tipo di regole che inoltra i messaggi in arrivo ad un'altra mailbox.

Per verificare se su una mailbox è presente una regola di inoltro è possibile utilizzare il seguente comando in Exchange Management Shell (EMS)
Get-InboxRule -Mailbox <casella_di_posta>|fl Name,Identity,ForwardTo,ForwardAsAttachmentTo


MS Exchange, verificare la presenza di regole di inoltro presenti sulla mailbox
FIG 1 - MS Exchange, verificare la presenza di regole di inoltro presenti sulla mailbox

Il comando mostra tutte le regole di posta in arrivo presenti sulla mailbox specificata. Se i campi ForwardTo e/o ForwardAsAttachmentTo sono valorizzati allora si tratta di una regola di inoltro. Prendere nota del nome della regola e utilizzare il cmdlet Remove-InBoxRule come indicato di seguito per rimuoverla
Remove-InboxRule -Mailbox <casella_di_posta> -Identity <nome_regola>
MS Exchange, rimuovere la regola di inoltro definita sulla mailbox
FIG 2 - MS Exchange, rimuovere la regola di inoltro definita sulla mailbox


venerdì 18 maggio 2018

MS Exchange: Verificare la regola di posta indesiderata impostata su una casella di posta tramite EMS

Per visualizzare la configurazione della regola di posta indesiderata di una mailbox è possibile utilizzare il cmdlet Get-MailboxJunkEmailConfiguration tramite Exchange Management Shell.
La sintassi del comando è la seguente:
Get-MailboxJunkEmailConfiguration [-Identity] <MailboxIdParameter> [-Credential <PSCredential>] [-DomainController <Fqdn>] [-ReadFromDomainController] [-ResultSize <Unlimited>][<CommonParameters>]

Parametri principali


Identity
Il parametro identity permette di specificare la casella di posta che si intende verificare. Al parametro può essere passato il Display name, l'Alias, il Distinguishe name (DN), l'indirizzo email, l'User ID o l'User Principal Name (UPN). E' possibile anche utilizzare i carattery jolly (*) per identificare più caselle di posta.

Credential
Permette di specificare le credenziali, usename e password, con cui eseguire il comando. Generalmente tale parametro viene utilizzato all'interno degli script o quando si ha la necessità di utilizzare credenziali di un utente abilitato ad eseguire l'operazione.

DomainController
Permette di specificare il Domain Controller che il comando dovrà interrogare per recuperare le informazioni da Active Directory.

ReadFromDomainController
Il parametro consente di specificare che le informazioni devono essere lette da un controller di dominio nel dominio dell'utente.

ResultSize
Permette di indicare il numero massimo di oggetti da restituire. Il valore di default è 1000 se si intende visualizzare tutti gli oggetti al parametro va passato il valore Unlimited.



Esempi


Esempio 1
Get-MailboxJunkEmailConfiguration GLUBRANO
oppure
Get-MailboxJunkEmailConfiguration -Identity GLUBRANO
Visualizza la configurazione della regola di posta indesiderata relativa alla mailbox specificata.
Get-MailboxJunkEmailConfiguration, Visualizzare configurazione regola posta indesiderata
FIG 1 - Get-MailboxJunkEmailConfiguration, Visualizzare configurazione regola posta indesiderata

Esempio 2
Get-MailboxJunkEmailConfiguration -Identity * | Where {$_.Enabled -eq $false}
Visualizza la configurazione della regola di posta indesiderata per tutte le mailbox su cui la regola è disabilitata.




lunedì 5 marzo 2018

MS Exchange: Creare una cartella all'interno della propria mailbox tramite EMS

MS Exchange mette a disposizione il cmdlet New-MailboxFolder per la creazione di cartelle nella propria mailbox tramite Exchange Management Shell (EMS). Tale cmdlet non può essere utilizzato dagli amministratori per la creazione di cartelle su altre mailbox al di fuori di quella personale.

La sintassi del comando è la seguente:
New-MailboxFolder  -Parent <MailboxFolderIdParameter> -Name <String>


Parametri principali


Parent
Al parametro Parent va passata la mailbox e la cartella nella quale si intende creare la nuova cartella. Nel caso in cui la cartella padre non venga specificata, il cmdlet crea la nuova cartella nella root della casella. Se il nome della cartella padre contiene spazi va racchiuso tra apici. La mailbox può essere indicata tramite il nome, il Display Name, l'Alias, il Distinguished Name, l'indirizzo di posta o Id utente.

Name
Il  parametro Name consente di specificare il nome da assegnare alla nuova cartella. Nel caso in cui il nome contenga spazi va racchiuso tra apici.



Esempi


Esempio 1
Per creare una nuova cartella nella root della mailbox si può utilizzare il comando
New-MailboxFolder -Parent GLUBRANO -Name Personal
Dove GLUBRANO indica la mailbox e Personal rappresenta il nome da assegnare alla nuova cartella.


Esempio 2
Per creare una nuova cartella all'interno di una cartella già esistente si può utilizzare il comando
New-MailboxFolder -Parent GLUBRANO:\"Posta in arrivo" -Name Personal
Come si evince dal comando, al parametro Parent viene passata la mailbox e il nome della cartella padre, racchiuso tra apici in quanto contiene spazi, in cui creare la nuova cartella Personal.

New-MailboxFolder, creare una nuova cartella all'interno della mailbox
FIG 1 - New-MailboxFolder, creare una nuova cartella all'interno della mailbox




martedì 18 aprile 2017

MS Exchange: Riparare una casella di posta danneggiata

A partire da Exchange 2010 SP1 è stato introdotto il cmdlet New-MailboxRepairRequest che consente di rilevare e correggere problemi presenti su una casella di posta. Il comando può essere eseguito su una specifica casella di posta oppure su un intero database.

La riparazione della casella/database avviene online: non è più necessario procedere al dismount del database per la riparazione. L'accesso alla casella viene interrotto solo durante la sua riparazione. Nel caso in cui il comando venga eseguito su un intero database, l'accesso viene interrotto solo sulla casella in fase di riparazione mentre le altre continueranno ad essere accessibili.

La sintassi  è la seguente:
New-MailboxRepairRequest -Mailbox <MailboxIdParameter> [-Archive <SwitchParameter>] -CorruptionType <MailboxCorruptionType[]> [-Confirm [<SwitchParameter>]]

oppure

New-MailboxRepairRequest -Database <DatabaseIdParameter> [-StoreMailbox <StoreMailboxIdParameter>] -CorruptionType <MailboxCorruptionType[]> [-Confirm [<SwitchParameter>]]


Parametri Principali


  • CorruptionType
    Tale parametro è obbligatorio e consente di specificare il tipo di problema che si intende rilevare e correggere. I valori accettati sono
    SearchFolder  : Verifica e ripara la cartella di ricerca.
    AggregateCounts : Verifica che i conteggi di aggregazione sulle cartelle riflettano valori corretti.
    ProvisionedFolder : Verifica e ripara la struttura delle cartelle.
    FolderView :Verifica e ripara le viste delle cartelle che non restituiscono il contenuto corretto.

    Per specificare più tipi di errori che si intendono correggere basta indicarli separandoli con una virgola.

  • Database
    È obbligatorio specificare tale parametro a meno che non venga indicata una determinata casella. Come è facile intuire, tale parametro permette di specificare il database su cui eseguire il comando. In tale caso la ricerca e riparazione verranno eseguite su tutte le caselle presenti all'interno del database specificato. Per questioni di prestazioni è possibile avere attiva una sola richiesta di riparazione database.
    Non è possibile utilizzare questo parametro insieme al parametro Mailbox.
    Al parametro va passato il nome del database oppure il GUID.

  • Mailbox
    Il parametro Mailbox specifica la casella di posta su cui eseguire questo comando. Il parametro accetta uno dei seguenti valori:
    GUID
    Nome distinto (DN)
    Dominio\Account
    Nome dell'entità utente
    LegacyExchangeDN
    Indirizzo SMTP
    Alias

    Non è possibile utilizzare tale parametro insieme al parametro Database.

  • Archive
    Il parametro Archive indica che la verifica e la riparazione vanno eseguite sull'archivio online associato alla casella di posta specificata. Se il parametro non viene indicato, verrà verificata e riparata solo la casella di posta principale.
    Non è possibile utilizzare questo parametro insieme al parametro Database.

  • StoreMailbox
    Tale parametro consente di specificare il GUID della mailbox che si desidera ripristinare. Va utilizzato con il parametro Database. Per conoscere il GUID di una casella di posta eseguire il cmdlet Get-MailboxStatistics.

  • DetectOnly
    Il parametro DetectOnly indica che il comando deve segnalare gli errori senza correggerli.


Esempi


Esempio 1
New-MailboxRepairRequest –Mailbox giovanni.lubrano@contoso.com –CorruptionType SearchFolder, AggregateCounts, ProvisionedFolder, FolderView
Il comando esegue la verifica e la riparazione della mailbox specificata (giovanni.lubrano@contoso.com). Come si nota dal comando, al parametro CorruptionType sono stati passati tutti i valori possibili separati da una virgola.
New-MailboxRepairRequest, richiesta di riparazione mailbox
FIG 1 - New-MailboxRepairRequest, richiesta di riparazione mailbox


Esempio 2
New-MailboxRepairRequest -Mailbox giovanni.lubrano@contoso.com -CorruptionType SearchFolder -DetectOnly
Con tale comando vengono rilevati e segnalati eventuali problemi sulla cartella di ricerca. Non viene effettuata alcuna riparazione della casella di posta.


Esempio 3
New-MailboxRepairRequest -Database DB01 -CorruptionType FolderView
Il comando permette di rilevare e riparare gli errori di tipo FolderView su tutte le caselle che risiedono sul database DB01.


Esempio 4
New-MailboxRepairRequest -Mailbox giovanni.lubrano@contoso.com -CorruptionType ProvisionedFolder, SearchFolder, AggregateCounts, Folderview -Archive
Il comando permette di rilevare e riparare tutti i tipi di errori sull'archivio online connesso alla casella di posta indicata.



Output

Il cmdlet New-MailboxRepairRequest non restituisce alcun output sull'esito dell'operazione. Una volta lanciato il comando questo viene accodato ad eventuali altre richieste. Per visualizzare informazioni sull'esito dell'operazione è possibile procedere in 2 modi: tramite il registro eventi di Windows oppure utilizzando il cmdlet Get-MailboxRepairRequest.
  • Tramite registro eventi
  • Per visualizzare l'esito dell'operazione tramite il registro eventi è necessario aprire il registro Applicazione del registro eventi sul Server Exchange dove risiede la casella di posta. All'interno del registro è necessario ricercare gli eventi che hanno come origine la dicitura MSExchangeIS Mailbox. All'interno dell'evento la mailbox viene indicata con il GUID. L'ID evento varia a seconda dell'esito dell'operazione:
    ID EventoDescrizione
    10044La richiesta di ripristino delle cassette postali non è riuscita per le cartelle di provisioning. Questo ID evento viene creato insieme all'ID evento 10049.
    10045La richiesta di ripristino del database non è riuscita per le cartelle di provisioning. Questo ID evento viene creato insieme all'ID evento 10049.
    10046La richiesta di ripristino delle cartelle di provisioning è stata completata.
    10047La richiesta di ripristino a livello di cassetta postale è stata avviata.
    10048La richiesta di ripristino del database o della cassetta postale è stata completata.
    10049La richiesta di ripristino del database o della cassetta postale non è riuscita perché Exchange ha rilevato un problema a livello di database o un'altra attività è in esecuzione nel database. Per risolvere il problema, fare quanto segue:
    1. Eseguire nuovamente il comando.
    2. Se il problema persiste, eseguire Eseutil (Utilità database Exchange Server) per verificare la presenza di errori nell'unità.
    3. Eseguire Microsoft Exchange Troubleshooting Assistant v1.1 (ExTRA) con la proprietà tagISINTEG. Salvare le informazioni di tracciamento del registro ExTRA e contattare il servizio di supporto Microsoft.
    10050Non è stato possibile eseguire la richiesta di ripristino nel database perché quest'ultimo non supporta la tipologia di errore specificata nel comando. Questo problema può verificarsi se si esegue il comando da un server su cui è installata una versione di Exchange successiva a quella del database analizzato.
    10051La richiesta di ripristino del database è stata annullata perché il database è stato disinstallato.
    10059La richiesta di ripristino a livello di database è stata avviata.
    10062Sono stati rilevati dati danneggiati. Controllare i dettagli nel registro di ripristino per individuare il tipo di errore e se è stato corretto.


  • Tramite Get-MailboxRepairRequest
    Con MS Exchange 2013 è stato introdotto il cmdlet Get-MailboxRepairRequest che consente di reperire informazioni sull'esito/stato di una richiesta di riparazione.
    La sintassi è molto semplice
    Get-MailboxRepairRequest -Identity <StoreIntegrityCheckJobIdParameter>
    Get-MailboxRepairRequest -Database <DatabaseIdParameter>
    Get-MailboxRepairRequest -Mailbox <MailboxIdParameter>

    Con il parametro Identity va indicato un GUID complesso generato nel momento della richiesta (Il formato è <DatabaseGuid>\<RequestGuid>\<JobGuid>) mentre con i parametri Mailbox e Database vanno indicati rispettivamente la mailbox e il database su cui è stata effettuata la richiesta di riparazione.
    Get-MailboxRepairRequest, reperire l'esito della richiesta di riparazione
    FIG 2 - Get-MailboxRepairRequest, reperire l'esito della richiesta di riparazione

    Per visualizzare maggiori dettagli è possibile formattare l'output con Format-List ad es.
    Get-MailboxRepairRequest -Mailbox giovanni.lubrano@contoso.com |fl

    GetMailboxRepairRequest, maggiori informazioni con Format-List
    FIG 3 - GetMailboxRepairRequest, maggiori informazioni con Format-List






giovedì 19 giugno 2014

MS Exchange: Convertire tipo di mailbox tramite Exchange Management Shell (EMS)


In questo articolo vedremo come convertire il tipo di casella di posta. Gran parte delle conversioni possono essere eseguite solo tramite Exchange Management Shell.
Il cmdlet utilizzato per la conversione è Set-Mailbox insieme al parametro -Type


I valori che è possibile passare a Type sono i seguenti:

Regular
Converte la casella di posta in user mailbox. Casella di posta dell'utente.

Room
Converte la casella in room mailbox. Le room mailbox vengono in genere assegnate a luoghi fissi come possono essere le sale riunioni o strutture per conferenze consentendo una gestione efficiente delle risorse da parte degli utenti. Vengono associate ad account disabilitati in AD. Visualizzando le proprietà di una room mailbox si notano alcune schede denominate Resource General, Resource Policy, Resource Information, Resource In-Policy Requests, Reset Out-Policy Requests. Tali proprietà permettono ad un amministratore di assegnare policy come quella di permettere o negare meeting ricorrenti, quanto tempo in anticipo un utente può prenotare la risorsa ecc.
Room Mailbox Properties
FIG. 1 Room Mailbox Properties



Equipment    
Converte la casella in equipment mailbox. Questo tipo di casella è simile alla room mailbox ma a differenza di quest'ultima viene generalmente associata a dispositivi mobili come laptop, proiettori portabili o veicoli. Anche questo tipo di caselle vengono associate ad account disabilitati in AD.


Equipment Mailbox Properties
FIG. 2 Equipment Mailbox Properties


Shared  
Converte la casella in Shared mailbox. Trattasi di una comune casella di posta condivisa. Vengono associate ad account disabilitati in AD.

Proprio per le loro caratteristiche le room mailbox e le equipment mailbox vengono definite resource mailbox.


Per convertire una user mailbox in shared mailbox possiamo utilizzare il seguente comando da EMS
Set-Mailbox <account_utente> -Type shared
Set-Mailbox <casella_posta_utente> -Type shared

Al posto dell'account utente è possibile indicare l'indirizzo di posta, il display name, l'alias, dominio\account o Distinguished Name (DN).


É possibile eseguire le seguenti conversioni:
da User mailbox a shared mailbox
da User mailbox a resource mailbox
da Shared mailbox a user mailbox
da Shared mailbox a resource mailbox
da Resource mailbox a user mailbox
da Resource mailbox a shared mailbox

Come avrete notato con Set-Mailbox non è possibile convertire una casella di posta in Linked mailbox o, viceversa, da Linked mailbox ad altro tipo. Le Linked mailbox sono caselle di posta a cui può accedere un account utente appartenente ad una foresta trusted. Per convertire una casella a o da Linked mailbox è necessario procedere prima alla sua disconnessione e quindi riconnetterla indicando il tipo di casella desiderato. Tale operazione è possible effettuarla anche tramite GUI.


Connect Mailbox
FIG. 3 Connect Mailbox

Nel caso volessimo trasformare una casella di posta da user mailbox a linked mailbox possiamo procedere nel seguente modo:
  • Prendiamo nota del MailboxGuid e del database della casella di posta utilizzando il seguente comando
    Get-MailboxStatistics -Identity <account_utente> |fl
  • Disconnettiamo la casella di posta
    Disable-Mailbox <account_utente>
  • Per connettere la casella di posta come linked è necessario disporre del dominio\account dell'utente che deve gestire la casella (LinkedMasterAccount) e le credenziali di un account, sullo stesso dominio di quello dell'utente, con le opportune abilitazioni. Partiamo proprio da quest'ultimo. Specifichiamo le credenziali dell'account su dominio trusted abilitato tramite il seguente comando
    $cred=get-credential
  • Procediamo alla connessione della casella disconnessa tramite il cmdled Connect-Mailbox

    Connect-Mailbox <MailboxGuid> -User <account_AD_mailbox> -Database <nome_database> -LinkedMasterAccount <dominio_trusted\utente> -LinkedDomainController <Domain_controller_trusted_domain> -LinkedCredential $cred

mercoledì 18 giugno 2014

MFCMAPI: Spostare una cartella speciale (Posta in arrivo, Posta indesiderata, Posta eliminata ecc)

In alcuni casi mi è capitato, a causa di anomalie sulla casella di posta, che cartelle speciali e predefinite (come Posta indesiderata, Posta eliminata, Posta in arrivo, ecc) fossero state spostate all'interno di altre cartelle. Provando a spostare nella posizione corretta tali cartelle tramite outlook si riceve il messaggio Impossibile spostare gli elementi. Impossibile spostare le cartelle speciali e predefinite, ad esempio Posta in arrivo, Contatti, Calendario, Attività e Soluzioni.


Impossibile spostare gli elementi
FIG. 1 Impossibile spostare gli elementi


Come fare per riportare la cartella nella posizione standard?
La soluzione è tramite MFCMAPI. Microsoft Foundation Class MAPI (MFCMAPI) è un tool molto utilizzato per identificare/risolvere problemi in Outlook e su caselle di posta in Exchange. Il tool può essere scaricato gratuitamente da http://mfcmapi.codeplex.com/ e non richiede installazione.
Per spostare le cartelle speciali procedere nel seguente modo:

  1. Assicurarsi che Outlook sia configurato in cached mode, quindi chiudere il client di posta;
  2. Avviare MFCMAPI sul client dell'utente che presenta il problema;
  3. Dal menu Session selezionare Logon e, nel caso si disponga di più profili di Outlook, indicare il profilo che si intende caricare;
    FIG. 2 MFCMAPI
  4. Cliccare 2 volte sulla casella di posta, espandere la voce Radice - Cassetta postale;
  5. Espandere la cartella IPM_SUBTREE
  6. Localizzare la cartella che si intende spostare, cliccarci su con il tasto destro e selezionare Copy dal menu contestuale;
  7. Selezionare la cartella IPM_SUBTREE quindi cliccarci su con il tasto destro del mouse e selezionare Paste;
  8. Nella finestra successiva viene chiesto se si vuole copiare solo il contenuto della cartella. Non selezionare nulla e cliccare su OK;
    MFCMAPI: Paste folder contents only
    FIG. 3 MFCMAPI Paste folder contents only
  9. Selezionare l'opzione Move folder instead of copy e Copy Subfolders quindi cliccare su OK
MFCMapi Copy Subfolders, Move folder instead of copy
FIG. 4 MFCMAPI Copy Subfolders, Move folder instead of copy