Apple iOS 6.1 issues with Exchange – resolved with 6.1.2 release???
So Apple finally acknowledged the iOS 6.1 issues with Exchange and released an update iOS 6.1.2 today.
It is highly unprofessional for a company like Apple “not to” acknowledge issues like this which causes widespread problems and potential business impact as soon as they confirm it exists. Caused me a lot of pain (personally)
I haven’t personally tested it but the update looks like this:
The update will be made public today and I will post the link as soon as I have it.
iOS 6.1.2 Software Update: http://support.apple.com/kb/DL1639
A detailed microsoft KB can be found here:
Rapid growth in transaction logs, CPU use, and memory consumption in Exchange Server 2010 when a user syncs a mailbox by using an iOS 6.1 or 6.1.1-based device: http://support.microsoft.com/kb/2814847
The update plan I am looking at is to:
1. Find all iOS 6.1 users in the organization using the cmdlet:
Get-CASMailbox -ResultSize unlimited -filter {HasActivesyncDevicePartnership -eq $True} | % {Get-ActiveSyncDeviceStatistics -Mailbox $_.identity |where {$_.DeviceOS -match “6.1″}} | Select-Object Identity, DeviceOS, DeviceType, DeviceID, DeviceUserAgent, LastSuccessSync | Export-Csv “C:\iOS_6.1_Feb_2013.csv”
You may also use this script – Save it as *.ps1 and run from EMS:
###################################################################
## List out Apple Devices version 6.1
$AdminSessionADSettings.ViewEntireForest = $True
Function New-Array {,$args}
$Report = new-array
$file_out = “C:\iOS6.1.csv”
$mbx = Get-CASMailbox -ResultSize Unlimited | ?{$_.HasActiveSyncDevicePartnership}
$mbx | ForEach-Object {
$mailbox = $_.Name
$PrimarySMTPAddress = $([string]$_.PrimarySMTPAddress)
$stats = Get-ActiveSyncDeviceStatistics -Mailbox $PrimarySMTPAddress | ?{$_.LastSuccessSync -gt (Get-Date).AddDays(-60)}
if($stats){
foreach ($dev in $stats){
if ($dev.DeviceOS -match “iOS 6.1”){
$device = New-Object System.Object
$device | Add-Member -type NoteProperty -name Mailbox -value $mailbox
$device | Add-Member -type NoteProperty -name LastSuccessSync -value $dev.LastSuccessSync
$device | Add-Member -type NoteProperty -name DeviceID -value $dev.DeviceOS
$device | Add-Member -type NoteProperty -name DeviceID -value $([string]$dev.DeviceID)
$device | Add-Member -type NoteProperty -name DeviceType -value $dev.DeviceType
$device | Add-Member -type NoteProperty -name DeviceUserAgent -value $dev.DeviceUserAgent
$device | Add-Member -type NoteProperty -name DeviceModel -value $dev.DeviceModel
$device | Add-Member -type NoteProperty -name DeviceIMEI -value $([string]$dev.DeviceIMEI)
$Report += $device
}
}
}
}
$Report | Export-Csv $file_out -NoType
#################################################################
2. Send an IT notification to all iOS 6.1 users that they need to upgrade to the latest iOS and that it is a mandatory step.
3. Your management team should come up with a risk assessment plan as to how many days should be allowed before we disable all iOS 6.1 users. You may use the cmdlet, where the file should contain the SAMAccountName or PrimarySMTPAddress of all users
Get-Content “C:\iOS6.1_users.txt” | Set-CASMailbox –ActiveSyncEnabled $False
4. If you need to disable all users matching iOS 6.1, you may also create a Device Access Rule and set it to Block
New-ActiveSyncDeviceAccessRule -QueryString “iOS 6.1 10B142” -Characteristic DeviceOS -AccessLevel Block
Ratish Nair
MVP Exchange
Team @MSExchangeGuru
February 19th, 2013 at 4:55 pm
I love how it is listed “fixes an Exchange bug” no…fixes a problem with IOS….
February 19th, 2013 at 6:47 pm
I am on 6.1.2 but I don’t use cellular services
February 20th, 2013 at 11:24 am
Wow… never read it that way !!!
Apple is loosing big time…
February 21st, 2013 at 10:21 am
I get a pipeline cannot execute running the command you supplied in #1 (non-script ps1 version). Is there a simple fix for the piping foreach part?