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

giovedì 12 giugno 2014

MS Exchange:verificare Exchange ActiveSync, MAPI, OWA, POP o IMAP su una cassetta postale tramite EMS

Nell'articolo MS Exchange: abilitare/disabilitare Exchange ActiveSync, MAPI, OWA, POP o IMAP per una cassetta postale tramite EMS abbiamo visto come attivare alcune caratteristiche sulla casella di posta tramite il comando Set-CASMailbox da Exchange Management Shell (EMS).

E se volessimo verificarne solo lo stato attualmente impostato sulla casella?

Niente di più semplice. Basta utilizzare il comando Get-CASMailbox e indicare la casella di posta (tramite indirizzo di posta, user id o alias).

ad es.
Get-CASMailbox giovanni.lubrano@contoso.com
Get-CASMailbox <user_ID>

get-mailbox <user_id>
Fig. 1 Get-CASMailbox <user_id>

con gli esempi sopra indicati si ottiene, in output, la situazione sullo stato di Exchange ActiveSync, MAPI, OWA, POP e IMAP.



Se invece ci interessa solo una delle caratteristiche possiamo utilizzare la seguente sintassi:

Get-CASMailbox UserName@DomainName |fl PopEnabled
Per visualizzare se il protocollo POP è attivo sulla casella

Get-CASMailbox UserName@DomainName |fl OWAEnabled
Per visualizzare se l'accesso tramite OWA è abilitato sulla casella

Get-CASMailbox UserName@DomainName |fl ImapEnabled
Per visualizzare se il protocollo IMAP è attivo sulla casella

get-CASMailbox UserName@DomainName |fl MapiEnabled
Per visualizzare se il protocollo MAPI è attivo sulla casella

get-CASMailbox UserName@DomainName |fl ActiveSyncEnabled
Per visualizzare se Active Sync è attivo sulla casella


Fig. 2 Get-CASMailbox

That's all

sabato 7 giugno 2014

MS Exchange: abilitare/disabilitare Exchange ActiveSync, MAPI, OWA, POP o IMAP per una cassetta postale tramite EMS


Exchange Management Shell (EMS), introdotto con Microsoft Exchange Server 2007, è un'estensione di Powershell orientata agli amministratori dei server Exchange. Quest'articolo sarà il primo di una lunga (spero) serie relativa ai comandi su EMS. In tali articoli non mi soffermerò sulla storia o sulle funzioni di questa potentissima shell (l'argomento è troppo vasto per essere trattato in articoli su blog) ma mi concentrerò solamente su  determinate operazioni o comandi utili.

In quest'articolo vedremo come attivare/disattivare delle caratteristiche delle caselle di posta su Exchange Server tramite EMS.


Il comando trattato in questo articolo è Set-CasMailbox che ci consente di abilitare/disabilitare le seguenti caratteristiche di una casella di posta:

- Internet Message Access Protocol  (IMAP)
- Post Office Protocol  (POP)
- Microsoft Outlook Web App (OWA)
- Messaging Application Programming Interface (MAPI)
- Microsoft Exchange ActiveSync


Per abilitare il protocollo IMAP sulla casella dell'utente
Set-CASMailbox UserName@DomainName -ImapEnabled $True

Per disabilitare il protocollo IMAP sulla casella dell'utente
Set-CASMailbox UserName@DomainName -ImapEnabled $False

Per abilitare il protocollo POP sulla casella dell'utente
Set-CASMailbox UserName@DomainName -PopEnabled $True

Per disabilitare il protocollo POP sulla casella dell'utente
Set-CASMailbox UserName@DomainName -PopEnabled $False

Per abilitare OWA sulla casella dell'utente
Set-CASMailbox UserName@DomainName -OWAEnabled $True

Per disabilitare OWA sulla casella dell'utente
Set-CASMailbox UserName@DomainName -OWAEnabled $False

Per abilitare il protocollo MAPI sulla casella dell'utente
Set-CASMailbox UserName@DomainName -MAPIEnabled $True

Per disabilitare il protocollo MAPI sulla casella dell'utente
Set-CASMailbox UserName@DomainName -MAPIEnabled $False

Per abilitare Exchange ActiveSync sulla casella dell'utente
Set-CASMailbox UserName@DomainName -ActiveSyncEnabled $True

Per disabilitare Exchange ActiveSync sulla casella dell'utente
Set-CASMailbox UserName@DomainName -ActiveSyncEnabled $False



Ovviamente le opzioni -ImapEnabled, -PopEnabled, -OWAEnabled, -MAPIEnabled, -ActiveSyncEnabled possono essere utilizzate anche contemporaneamente e al posto della casella di posta dell'utente possiamo utilizzare anche il display name, l'alias, il Distinguished Name (DN) o dominio\account AD.
Ad es. se vogliamo abilitare l'accesso tramite OWA e disabilitare il protocollo IMAP possiamo utilizzare il seguente comando
Set-CASMailbox UserName@DomainName -OWAEnabled $True -ImapEnabled $False


E se volessimo agire su più caselle?
In questo caso potremmo preparare un file di testo con all'interno le caselle di posta su cui bisogna agire e quindi creare un ciclo che, per ogni casella di posta elencata all'interno del file, provveda ad effettuare gli opportuni settaggi/abilitazioni.
Procediamo con un esempio: supponiamo di voler abilitare/disabilitare l'accesso tramite OWA ad un elenco di caselle di posta.
Per effettuare questa operazione potremmo procedere in modi diversi. Io ho preferito procedere nel seguente modo:

  • Creato un file con estensione CSV con all'interno elencate le caselle di posta su cui agire. Il file CSV non è altro che un file di testo in cui in ogni rigo è indicata la casella di posta/account su cui agire seguito da invio.
  • Creato un file di script Powershell (file con estensione PS1 da lanciare tramite Exchange Management Shell) contenete i comandi da eseguire e accetta come parametri il nome del file CSV conte


Il file PS1 l'ho nominato EnableDisableOWA.ps1 mentre il file CSV elenco.csv
I due file possono essere scaricati cliccando QUI

- Scompattare i file in una cartella
- Eseguiamo EMS
- lanciamo il file ps1 tramite EMS indicando il percorso completo del file e passando, come parametri, il file CSV e $TRUE o $FALSE a seconda se vogliamo abilitare o disabilitare OWA.

ad es. 
 c:\EnableDisableOWA.ps1 c:\elenco.csv $TRUE
per abilitare OWA su tutte le cartelle elencate in elenco.csv 

Il codice contenuto all'interno del file PS1 è il seguente


param($Arg1,$Arg2)
Set-AdServerSettings -ViewEntireForest $true 
$csv = Import-Csv $Arg1 -Header @("MailboxToEnableDisable")
foreach ($line in $csv) { 
  Set-CASMailbox $Arg1 -OWAEnabled $Arg2
} 

analizziamo passo passo lo script
param($Arg1,$Arg2)
L'istruzione param($Arg1,$Arg2) cattura i parametri passati alla chiamata del file di script. Nel nostro caso il file elenco.csv e $TRUE.

Set-AdServerSettings -ViewEntireForest $true
É utile solo nel caso in cui in Active Directory (AD) siano presenti più domini i cui utenti dispongono di casella di posta. In questo modo vengono gestiti tutti gli oggetti della foresta.

$csv = Import-Csv $Arg1 -Header @("MailboxToEnableDisable")
Importa il file CSV indicato come primo parametro durante la chiamata allo Script EnableDisableOWA.ps1

foreach ($line in $csv) { 
  Set-CASMailbox $Arg1 -OWAEnabled $Arg2
}
Per ogni riga del file CSV viene abilitata/disabilitato l'accesso ad OWA a seconda che sia stato passato il parametro $TRUE o $FALSE nella chiamata a EnableDisableOWA.ps1


Le funzioni del cmdlet Set-CASMailbox non finiscono qui: ci sono altri parametri che permettono di effettuare altre operazioni. Tuttavia le altre operazioni esulano dalla trattazione di questo articolo.