Archives For Posta elettronica

Pillole

Le pillole sono articoli di veloce lettura dedicati a notizie, script o qualsiasi altra cosa possa essere "divorata e messa in pratica" con poco. Uno spazio del blog riservato ai post "a bruciapelo"!

Consigli pratici di sopravvivenza: si tratta di una modifica (del documento) dello scorso agosto ma che ancora oggi miete vittime abbastanza facilmente. Si tratta dei tempi di Recovery per la posta elettronica eliminata dal cestino di Outlook, quella ancora recuperabile da server, tramite apposito “Recupera posta eliminata“. Se ti stai chiedendo quanti giorni hai a disposizione in questa fase, probabilmente la risposta è 14, e non ti piacerà.

Change how long permanently deleted items are kept for an Exchange Online mailbox

La più classica delle ricerche in Google suggerisce un come fare, per l’esattezza “Change how long permanently deleted items are kept for an Exchange Online mailbox“, ed è così che si finisce in Technet a leggere ciò che Microsoft spiega a tal proposito. Secondo l’ultimo ritocco, i giorni di Recovery di una mailbox (predefiniti) sono 14, pochissimi considerando che una persona ha (sempre di default) una policy che pulisce automaticamente il cestino dopo 30 giorni, ma che non gli impedisce di pulirlo autonomamente all’uscita dal client, per esempio. Ciò vuol dire che si hanno, nella peggiore delle ipotesi, al massimo 14 giorni per accorgersi di aver fatto una stupidata, oltre i quali diventa definitiva.

Ho voluto modificare questo comportamento, ritoccando la policy di pulizia del Cestino (ECP → Compliance Management → Retention Tags → Deleted Items) e portandola a 60 giorni, quindi facendo girare un’istruzione PowerShell per portare i 14 giorni di Recovery a 30, il massimo offerto da Office 365:

Get-Mailbox -ResultSize unlimited | Set-Mailbox -RetainDeletedItemsFor 30

L’istruzione modificherà il comportamento di ogni casella attualmente presente su Exchange in cloud. Il problema però te l’ho appena riportato tra le righe. Così facendo modificherai il periodo di retention delle caselle fino a ora presenti sul server, non lo farai per quelle future, dovrai quindi prevedere un automatismo che lo faccia anche per le prossime caselle di posta che andrai a creare, oppure dovrai ricordarti ogni volta di lanciare lo stesso comando via PowerShell (io, avendo già uno script PowerShell che rifinisce un utente appena creato, ho aggiunto l’istruzione a quelle solitamente eseguite).

A quel punto, per recuperare qualcosa di apparentemente perso, basterà mettere in pratica quanto suggerito da Microsoft stessa:

Buon lavoro.

Che sia Domino (di IBM) o Exchange (di Microsoft), per il tuo server di posta sei una identità. A te può corrispondere un indirizzo di posta principale ma anche più alias, se impostati lato server. Per questo motivo può tornare utile intercettare (magari per inserire in diversa cartella, nda) una mail inviata a uno di quegli alias.

Anche se apparentemente impossibile (perché arrivata a destinazione, la mail sarà comunque indirizzata a te, finirà in Posta in arrivo nonostante la tua sudata regola appena creata), la possibilità di intercettare questo tipo di comunicazioni c’è.

Outlook e Shared Mailbox: Auto-Mapping o più file dati? 1

Dovrai semplicemente andare a modificare una regola di Outlook già creata (e magari non funzionante) oppure crearla da zero, se ti serve. Il “trucco” (se così si può chiamare) è basare la ricerca sul testo contenuto “nell’intestazione“, quello che tecnicamente viene meglio definito come header della mail:

Dopo averlo composto e inviato, il messaggio viene elaborato dal server di posta elettronica presso il provider di servizi Internet (ISP). Se il messaggio è destinato a qualcuno che non ha una cassetta postale nel server di posta elettronica del mittente, il server lo inoltra a un altro server. Il messaggio viene inoltrato da server a server. Può passare tra diversi server di posta elettronica finché non raggiunge quello in cui il destinatario ha una cassetta postale.
A partire dalla creazione del messaggio, le relative informazioni vengono aggiunte a una sezione nascosta del messaggio, nota come intestazione Internet. Le informazioni includono dettagli tecnici sul messaggio, ad esempio chi lo ha creato, il software usato per comporlo e i server di posta elettronica in cui è transitato prima di raggiungere il destinatario. Questi dettagli consentono di identificare i problemi relativi al messaggio o di individuare l’origine di messaggi commerciali indesiderati.

fonte: support.office.com/it-it/article/Visualizzare-le-intestazioni-dei-messaggi-di-posta-elettronica-cd039382-dc6e-4264-ac74-c048563d212c

Quindi, per andare al dunque, ti basterà selezionare il percorso RegoleCrea regolaOpzioni avanzatecon parole specifiche nell’intestazione del messaggio, e specificare l’alias come fosse testo:

Outlook: intercettare mail inviate a un proprio alias

Il resto è chiaramente a tua scelta. Potrai decidere di spostare automaticamente la mail in una specifica cartella, di segnarla come già letta o di mettere un particolare alert audio, ecc., è chiaro che dipende dalla specifica esigenza.

Non servirà fare altro. La regola è immediatamente funzionante e potresti anche scegliere di farla agire sul pregresso, per spostare ora tutte le mail precedentemente ricevute al tuo indirizzo secondario.

Pillole

Le pillole sono articoli di veloce lettura dedicati a notizie, script o qualsiasi altra cosa possa essere "divorata e messa in pratica" con poco. Uno spazio del blog riservato ai post "a bruciapelo"!

Per la serie “sbagliando si impara“, anche se in realtà vale anche quella che dice che l’errore davanti ai propri occhi è anche quello che continua a sfuggire pure alla centesima rilettura, oggi prendo appunti su PowerShell e ordinamento dei risultati richiesti.

Nello specifico volevo ottenere una lista di contatti con un preciso dominio impostato nel PrimarySMTPAddress (WindowsEmailAddress), ho pensato bene quindi di lanciare un comando semplice (il Get-MailContact), filtrare in output solo ciò che mi interessava e pretendere di ordinare l’output dopo averlo già generato:

PS C:\PS1\PS1> Get-MailContact -ResultSize unlimited | where {$_.WindowsEmailAddress -like "*@contoso.com"} | ft name,Alias,WindowsEmailAddress | sort name
out-lineoutput : L'oggetto di tipo "Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData" non è valido oppure non è stato specificato nella sequenza corretta. L'errore dipende probabilmente da un comando "format-*" specificato dall'utente in conflitto con la formattazione predefinita.
    + CategoryInfo          : InvalidData: (:) [out-lineoutput], InvalidOperationException
    + FullyQualifiedErrorId : ConsoleLineOutputOutOfSequencePacket,Microsoft.PowerShell.Commands.OutLineOutputCommand

Per una illogica del mio unico neurone alla ricerca di aria fresca, mi ostinavo a chiedere un sort in seguito alla formattazione della tabella in output, quando in realtà il sort va chiesto prima di preparare i risultati da mostrare a video (cosa abbastanza normale a pensarci a sangue freddo, non trovi?). Il modo giusto per chiederlo è quindi anteporlo al Format-Table:

Get-MailContact -ResultSize unlimited | where {$_.WindowsEmailAddress -like "*@contoso.com"} | sort name | ft name,Alias,WindowsEmailAddress

Che produce un risultato a video assolutamente preciso, secondo richiesta impartita:

Sbagliando si impara: PowerShell, Sort e Format-Table

Metto da parte, lezione imparata, nel frattempo mi bastono da solo.

G

Pillole

Le pillole sono articoli di veloce lettura dedicati a notizie, script o qualsiasi altra cosa possa essere "divorata e messa in pratica" con poco. Uno spazio del blog riservato ai post "a bruciapelo"!

Uno di quei consigli che sono facili da ricordare e da recuperare con una ricerca nel blog, in case of emergency. Gestisci un tenant con centinaia (se non di più) persone registrate e non puoi certo ricordare uno a uno gli indirizzi di posta gestiti, soprattutto quando si parla di persone con uno o più alias a testa, shared mailbox, contatti e chissà quanto altro ancora, Exchange è un mondo infinito, nella sua soluzione cloud è poi in continua evoluzione.

Come cerchi un indirizzo di posta elettronica all’interno del tenant? Come capisci a chi o cosa è stato assegnato? Tutto sommato semplice: usi l’ennesima query.

Get-Recipient -Filter {EmailAddresses -like "*mario.rossi*"}

Powershell office 365 cercare un indirizzo di posta

In un solo colpo trovi qualsiasi cosa abbia uno specifico (o parte del) indirizzo di posta elettronica tra quelli a lui assegnati, a prescindere che si tratti di una mailbox (personal o shared non importa), un contatto mail, un mail user. Nella query che ho riportato qui sopra il *mario.rossi* cerca qualunque indirizzo contenga quel nome.cognome, a prescindere dalla sua posizione, ignorando totalmente il dominio. Funziona, è immediato, è maledettamente comodo, soprattutto quando ti ritrovi di fronte alla domanda secca di un tuo superiore oppure un errore di PowerShell quando si tenta di creare una casella di posta elettronica con lo stesso indirizzo di posta di qualcosa di già esistente.

Per ovvi motivi, il filtro può funzionare con qualsiasi parametro facente compatibile con il Get-Recipient, basterà modificare un tantinello la richiesta da far eseguire a PowerShell, per esempio:

Get-Recipient -Filter { Name -like "*alessio*"}

Ricercherà qualsiasi cosa abbia “Alessio” nel campo nome, a prescindere -ancora una volta- che si tratti di casella di posta, contatto o gruppo (e non solo).

Buon lavoro.

G