No se puede sincronizar un buzón de Exchange después de actualizar un dispositivo Apple iOS a IOS 7.0

Se aplica a
Exchange Server 2010 Standard Exchange Server 2010 Enterprise Exchange Server 2013 Standard Edition Exchange Server 2013 Enterprise Edition

Síntomas

Tenga en cuenta el siguiente escenario:

  • Un usuario tiene un buzón hospedado en Microsoft Exchange Server 2010 o Microsoft Exchange Server 2013.
  • El usuario actualiza un dispositivo Apple iOS a IOS 7.0.
  • El usuario intenta sincronizar su dispositivo basado en iOS 7.0 con su buzón de correo de Exchange Server.

En este escenario, el usuario no puede sincronizar su dispositivo basado en iOS 7.0 con el buzón hospedado en Exchange Server. Además, el siguiente evento se registra en el registro de aplicaciones del equipo de Exchange Server 2010 o Exchange Server 2013 que tiene el rol de Acceso de clientes:

Nota

Código: 4999
Nivel: Error
Fuente: MSExchange Common
Mensaje: Informe de Watson a punto de enviarse para id. de proceso: id>. de proceso, <con parámetros: E12, <tipo> de compilación, <versión> de la aplicación, AirSync, M.Exchange.Compliance, M.E.S.C.MessageDigestForNonCryptographicPurposes.HashCore, System.ArgumentOutOfRangeException, <callstackHash>, <versión> de ensamblado.

Además, se registra un mensaje de error similar al siguiente en el registro de Exchange ActiveSync.

Nota: Este error de estado 110 para el comando Provision puede aparecer muchas veces si el dispositivo basado en iOS 7.0 envía repetidamente el comando Provision después de que se devuelva una excepción de servidor. En las pruebas, algunos dispositivos iOS enviaron el comando Provision más de 2 000 veces, incluso después de un error continuo.

Nota

AssemblyVersion :
14.02.0328.009

Identificador :
4D7D0057

RequestHeader :
POST /Microsoft-Server-ActiveSync/default.eas? User=johndoe&DeviceId=ApplDMPGH8DWDFJ3&DeviceType=iPad&Cmd=Provision HTTP/1.1
Conexión: keep-alive
Longitud del contenido: 136
Content-Type: application/vnd.ms-sync.wbxml
Aceptar: */*
Accept-Encoding: gzip, deflate
Accept-Language: en-us
Autorización: ********
Cookie: Cookie=R3437444435
Anfitrión: contosocas.com
User-Agent: Apple-iPad2C2/1101.465
MS-ASProtocolVersion: 14.1

RequestBody :
<?xml version="1.0" encoding="utf-8" ?>
<Aprovisionamiento xmlns="Provision:">
                 <DeviceInformation xmlns="Settings:">
                                 <Conjunto>
                                                 <Modelo>iPad2C2</Modelo>
                                                 <UserAgent>iOS/7.0 (11A465) dataaccessd/1.0</UserAgent>
                                                 <OS>iOS 7.0 11A465</OS>
                                                 <OSLanguage>en</OSLanguage>
                                                 <FriendlyName>Black iPad 2</FriendlyName>
                                 </set>

                 </DeviceInformation>
                 <Directivas>
                                 <Directiva>
                                                 <PolicyType>MS-EAS-Provisioning-WBXML/<PolicyType>
                                 </Directiva>
                 </Directivas>
</Aprovisionamiento>

Command_WorkerThread_Exception :
--- Inicio de excepción ---
Tipo de excepción: System.ArgumentOutOfRangeException
Mensaje de excepción: Se requiere un número no negativo.
Nombre del parámetro: recuento
Nivel de excepción: 0
Seguimiento de la pila de excepciones: en System.Buffer.BlockCopy(Array src, Int32 srcOffset, Array dst, Int32 dstOffset, Int32 count)
   en Microsoft.Exchange.Security.Compliance.MessageDigestForNonCryptographicPurposes.HashCore(Byte[] array, Int32 ibStart, Int32 cbSize)
   en el búfer System.Security.Cryptography.HashAlgorithm.ComputeHash(Byte[])
   en Microsoft.Exchange.Configuration.SQM.SmsSqmDataPointHelper.Generate64BitUserID(String legacyDN)
   en Microsoft.Exchange.Configuration.SQM.SmsSqmDataPointHelper.AddDeviceInfoReceivedDataPoint(SmsSqmSession instance, ADObjectId id, String legacyDN, String deviceType, String versionString)

   en Microsoft.Exchange.AirSync.DeviceInformationSetting.ProcessSet(XmlNode setNode)
   en Microsoft.Exchange.AirSync.DeviceInformationSetting.Execute()
   en Microsoft.Exchange.AirSync.ProvisionCommand.ProcessDeviceInformationSettings(respuesta XmlNode)
   en Microsoft.Exchange.AirSync.ProvisionCommand.ExecuteCommand()
   en Microsoft.Exchange.AirSync.Command.WorkerThread()
--- Fin de excepción ---

AccessState :
Permitido
AccessStateReason :
Global

ResponseHeader :
HTTP/1.1 200 OK

ResponseBody :
<?xml version="1.0" encoding="utf-8" ?>
<Aprovisionamiento xmlns="Provision:">
                 <Estado>110</Estado>
</Aprovisionamiento>

Causa

Este problema se produce porque varios subprocesos de ActiveSync y W3wp.exe intentan obtener acceso a un objeto protegido al mismo tiempo. Esto coloca el objeto en un estado incorrecto.

Resolución

Exchange Server 2013

Para resolver este problema en Exchange Server 2013, instale la actualización que se describe en el siguiente artículo de Microsoft Knowledge Base:

2859928 Descripción de la actualización acumulativa 2 para Exchange Server 2013

Exchange Server 2010

Para resolver este problema en Exchange Server 2010, instale el paquete acumulativo de actualizaciones que se describe en el siguiente artículo de Microsoft Knowledge Base:

2866475 Descripción del paquete acumulativo de actualizaciones 2 para Exchange Server 2010 SP3

Estado

Apple está investigando el problema en el que un dispositivo iOS 7.0 envía muchos comandos de provisión después de que se devuelve un error. Actualizaremos este artículo cuando haya información adicional disponible.

Más información

El tutorial guiado para solucionar problemas de ActiveSync con Exchange Server ayuda a solucionar los siguientes problemas:

  • No se puede crear un perfil en el dispositivo
  • No se puede conectar al servidor
  • Problemas de correo
  • Problemas de calendario
  • Retrasos en el rendimiento del dispositivo/CAS