Get Full Control over your Exchange remote PowerShell session

Monday, August 22, 2011

var addthis_config = {"data_track_clickback":true}; PowerShell 2.0 supports two kinds of remote configurations: fan-in and fan-out. When we execute a command against a bunch of servers we use fan-out (one to many). Fan-in is used when multiple users are connecting to a remote server (many to one). Exchange server implements a fan-in configuration via a virtual directory on the Exchange server’s IIS. We can connect to the virtual directory (http connection) and manage our Exchange server remotely, without having to install the Exchange Management Tools locally on our admin station. We can create a remote session (using the currently logged...
12 comments

Exchange – Removing Illegal Alias Characters using PowerShell

Monday, August 15, 2011

var addthis_config = {"data_track_clickback":true}; If you're in a mixed-mode environment with both Exchange 2003 and Exchange 2007/2010 you may have noticed this message when using the Get-* cmdlets in the Exchange Management Shell: WARNING: The object domin.com/Users/UserName has been corrupted, and it's in an inconsistent state. The following validation errors happened: WARNING: Property expression "xx xxx" isn't valid. Valid values are: Strings formed with characters from A to Z (uppercase or lowercase), digits from 0 to 9, !, #, $, %, &, ', *, +, -, /, =, ?, ^, _, `, {, |, } or ~. One...

Using variables in EMS Filter parameter

Saturday, December 4, 2010

The Filter parameter is one of my favorite parameters in EMS (Exchange Management Shell). It is one of the most robust parameters in EMS as it enables us to filter objects on the server (using a PowerShell expression) instead of using the Where-Object cmdlet, which filters objects on the client. In Exchange 2007, we could use a simple filter expression to get all mailbox objects which have the Office attribute set to 'Sales': > Get-Mailbox -Filter {Office -eq 'Sales'} | Format-Table Name,Office -AutoSizeName Office---- ...
one comment

Managing email addresses in Exchange 2010

Monday, November 22, 2010

In this post I wrote about a way to modify email addresses with the Update-List cmdlet in a Exchange 2007 environment. Exchange 2010 has been released in the meantime and this method no longer works, you'll get this warning: > Get-Mailbox User1 | Update-List -Property EmailAddresses -Add TestUser1@domain.com | Set-Mailbox WARNING: The command completed successfully but no settings of 'domain.com/Users/TestUser1' have been modified.   Exchange 2010 uses PowerShell 2.0 Remote PowerShell sessions to manage Exchange and that changed the way objects and parameters are bind in the implementation of remote Exchange commands....
31 comments

Cmdlets and Parameters – Differences between Exchange 2007 and 2010

Tuesday, June 15, 2010

Exchange 2010 adds a lot of new commands to the Exchange Management Shell (EMS). In addition to the new commands, some commands were removed and some cmdlet parameters have changed. To find all the changes between the two versions of Exchange I put together a script that produces a collection of custom objects. By querying these objects you can find if a command or its parameters are new or removed. The changes are recorded in an XML file (compare.xml) which you can use to filter a specific command. To compare the changes I ran a script, on each...

Mapping WMI mailbox object to its AD user account

Thursday, July 16, 2009

Few days ago I got a request from a reader of my blog: "I found the WMI commands to get info from Exchange 2003 servers and the following gets me the displayname, servername, storagegroupname, and storename but am I able to get the SamAccountName?  Do you know any way?" Get-WmiObject -Class Exchange_Mailbox -NameSpace root\microsoftexchangev2 -ComputerName ExchangeServer | Sort-Object MailboxDisplayName | Format-Table MailboxDisplayName, ServerName, StorageGroupName, StoreName, Size -auto First, lets see how a sample mailbox output looks like when we issue the above WMI command (without piping to sort and format-table):(...) AssocContentCount : 159 Caption ...

Upcoming Webcast: Exchange 2010 Management Tools (Level 300)

Saturday, May 16, 2009

Exchange 2010 includes new capabilities that make the operation of your Exchange environment more efficient.  Learn how we’ve made the Exchange Management Console more powerful, extended the reach of PowerShell, and made it easier to delegate management tasks. You can register HERE.     Presenter: Evan Dodds, US-Exchange Shared PM, Microsoft Corporation. Start Date: Monday, June 08, 2009 1:00 PM Pacific Time (US & Canada)