Zezwalanie na dostęp konkretnym urządzeniom przez ActiveSync do Exchanga 2007

W niektórych sytuacjach chcemy ograniczyć użytkownikom dostęp przez ActiveSync do konkretnych urządzeń. Rozwiązaniem tego problemu jest filtrowanie dostępu po DeviceID urządzenia. Mechanizmu opisany jest tutaj http://blogs.msdn.com/b/jasonlan/archive/2007/01/15/allowing-exchange-activesync-by-device-id-in-exchange-2007.aspx. Niestety nie da się tego wyklikać z GUI. W powershellu można ustawić to poleceniem:

Set-CASMailbox -identity:"user" -ActiveSynAllowedDeviceIDs:"deviceID_1", "deviceID_2"

Ale skąd wziąć DeviceID? Na początek podłączyć urządzenie, a potem mając DeviceID uzyskany z exchange ograniczyć dostęp. Podczas testów zauważyłem, że w przypadku telefonów od Nokii i Apple DeviceID można uzyskać bez podłączania. DeviceID Nokii zbudowany w jest w nasepujący sposób: IMEIXXXXXXXXXXXXXXX gdzie XXXXXXXXXXXXXXX zastępujemy numerem IMIE telefonu. Apple iPad i iPhone przedstawiają się z DeviceID ApplSN gdzie SN to numer seryjny urządzenia. Zrzut danych o podłączonych urządzeniach do excela:

$list = $null
ForEach($i in (Get-Mailbox | Select-Object Alias))
{
$list += Get-ActiveSyncDeviceStatistics -mailbox:$i.Alias
}
$list | Select-Object DeviceFriendlyName, DeviceID, DeviceIMEI, DeviceModel, DeviceOS, DeviceOSLanguage, DevicePhoneNumber, DeviceType, DeviceUserAgent, DeviceWipeAckTime, DeviceWipeRequestTime, DeviceWipeSentTime, FirstSyncTime, Identity, LastPingHeartbeat, LastPolicyUpdateTime, LastSuccessSync, LastSyncAttemptTime, RecoveryPassword | Export-Csv -UseCulture -NoTypeInformation as_raport.csv