Exchange 2010 Powershell command per verificare se esiste un indirizzo email nel sistema

Sto cercando un command di Exchange 2010 che avrebbe fatto quanto segue:

  1. Dato un indirizzo di posta elettronica (completamente qualificato con dominio e tutti), verificare se l'indirizzo email è associato a una cassetta postale o un gruppo nel sistema;
  2. (Idealmente) mostra quale entity framework; possiede quel indirizzo email

Questo sarebbe molto utile per me controllare la mia migrazione e assicurarsi che tutti i nostri alias siano stati spostati correttamente.

  • loop Get-ReceiveConnector per afferrare connettori multipli di ricezione
  • In quale versione di windows è powerhell installato per impostazione predefinita?
  • "Get-AdComputer -filter" non riesce nulla quando cerca Vista Clienti
  • Come abilitare la copia shadow volume utilizzando Powershell?
  • PowerShell remoto con Exchange 2010: il valore non può essere nullo
  • Utilizzo di defaultAuthenticationType con PowerShell Web Access
  • Come rendere le richieste di MS Exchange per "Attiva amministratore di periferica" ​​(visualizza su Android Device)
  • Chiarimento della terminologia: MAPI vs RPC / HTTPS vs Outlook Anywhere
  • Filtro del calendario MS Exchange
  • Script per rimuovere AutoMapping di Exchange 2010 per tutte le cassette postali
  • Exchange 2010: i client di Outlook che rifiutano di aggiornare al nuovo server CAS
  • In un'installazione multi-tenuta di Exchange 2010 è ansible percorrere diversi connettori di invio per diverse organizzazioni
  • 5 Solutions collect form web for “Exchange 2010 Powershell command per verificare se esiste un indirizzo email nel sistema”

    Get-Recipient -Identity user@domain.com

    Questo restituirà l'object destinatario per chiunque abbia l'indirizzo email indicato (inclusi gli alias). Poiché le email sono garantite per essere uniche questo non dovrebbe mai restituire più di un record (credo).

    Get-Recipient -ANR user

    È ansible utilizzare -ANR per eseguire ricerche utilizzando Ambiguous Name Resolution (in modo da digitare il loro primo, ultimo, nome utente, ecc.), Ma mentre ANR corrisponderà all'indirizzo di posta principale di un utente, non corrisponderà agli altri alias SMTP. ANR può restituire più partite (quindi assicurati che il tuo codice gestisca questo caso).

    Get-Mailbox non è sufficiente a confermare che un indirizzo di posta elettronica è univoco, poiché non necessariamente restituirà contatti o registri da sisthemes esterni o legacy. Restituisce le cassette postali … e mentre tutte le cassette postali hanno un indirizzo email, non tutti gli indirizzi e-mail sono una cassetta postale.

    Questo dovrebbe fare il trucco:

     get-mailbox -an user@domain.com 

    Mi rendo conto che questo è un po 'vecchio, ma ha appena risolto il problema eseguendo quanto segue:

     Get-Mailbox | %{$_.EmailAddresses | ?{$_ -like "*<email address>*"}} Get-DistributionGroup | %{$_.EmailAddresses | ?{$_ -like "*<email address>*"}} Get-MailPublicFolder | %{$_.EmailAddresses | ?{$_ -like "*<email address>*"}} 

    Se qualcosa fosse stato restituito da nessuno di loro, non mi diceva necessariamente che cosa stava usando, ma posso quindi concentrarmi su quale dei tre restituirono un record per immersione più profonda. Se nulla viene restituito, allora non viene utilizzato.

    Get-Destinatario dovrebbe fare il trucco

    Il seguente mi ha lavorato, anche con alias:

     get-recipient -filter {emailaddresses -like "*user@domain.com*"} 

    Restituisce anche il nome del destinatario e del tipo.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.