Comparación de la programación de clientes de Exchange Online y Exchange localComparing Exchange Online and Exchange on-premises client programming

Obtenga información sobre las consideraciones de diseño para crear una API administrada de EWS o una aplicación cliente de EWS que funcione con Exchange Online y Exchange local.Learn about the design considerations for creating an EWS Managed API or EWS client application that works against Exchange Online and Exchange on-premises.

En la mayoría de los casos, los clientes y los servicios Web de Exchange de destino funcionarán de la misma forma independientemente de si el destino es un Exchange Online, Exchange online como parte de Office 365 o un servidor local de Exchange.For the most part, clients and the web services in Exchange they target will work the same way regardless of whether the target is an Exchange Online, Exchange Online as part of Office 365, or Exchange on-premises server. Sin embargo, hay algunas excepciones y querrá asegurarse de que la aplicación puede administrarlas.There are, however, some exceptions, and you'll want to make sure that your application can handle them. Use la información de este artículo como ayuda para diseñar el cliente de como destino Exchange Online y Exchange local.Use the information in this article to help you design your client to target both Exchange Online and Exchange on-premises.

Consideraciones sobre la programación de clientes de detección automáticaAutodiscover client programming considerations

Detección automática proporciona información de configuración para los clientes de Exchange.Autodiscover provides configuration information for Exchange clients. Una aplicación cliente puede detectar su información de configuración de una de estas tres maneras, en función de si el cliente está destinado a Exchange online o Exchange local.A client application can discover its configuration information in one of three ways, depending on whether the client is targeting Exchange Online or Exchange on-premises.

Tabla 1. Tipos de servicio de detección automática y aplicabilidad de ExchangeTable 1. Autodiscover service types and Exchange applicability

Tipo de servicio Detección automáticaAutodiscover service type Se aplica aApplies to
Detección automática de SOAPSOAP Autodiscover
Exchange Online y versiones de Exchange locales a partir de Exchange 2010Exchange Online and versions of Exchange on-premises starting with Exchange 2010
Detección automática de POX POX Autodiscover
Exchange Online y versiones de Exchange locales a partir de Exchange 2007Exchange Online and versions of Exchange on-premises starting with Exchange 2007
Búsqueda de punto de conexión de servicio (SCP)Service connection point (SCP) lookup
Versiones de Exchange local a partir de Exchange 2007Versions of Exchange on-premises starting with Exchange 2007

Además de la información de configuración del cliente, la detección automática SOAP y POX también devuelve la versión del servicio de Exchange e indica si Exchange Online hospeda el servicio.In addition to the client configuration information, that SOAP and POX Autodiscover also return the Exchange service version and indicate whether the service is hosted by Exchange Online. Esta información se devuelve en elementos diferentes, según el tipo de detección automática que se use.This information is returned in different elements, depending on the type of Autodiscover you use.

Tabla 2. Elementos de detección automática que devuelven la versión del servicio y la información de hospedaje de Exchange OnlineTable 2. Autodiscover elements that return service version and Exchange Online hosting information

Tipo de servicio Detección automáticaAutodiscover service type Elemento XML que contiene la versión de servicioXML element that contains service version Elemento XML que indica si el usuario tiene una cuenta de Exchange OnlineXML element that indicates whether the user has an Exchange Online account
Detección automática de SOAPSOAP Autodiscover
Elemento de configuración (SOAP) con el valor de texto CasVersion .Setting (SOAP) element with the CasVersion text value.
Elemento de configuración (SOAP) con el valor de texto UserMSOnline .Setting (SOAP) element with the UserMSOnline text value.
Detección automática de POX POX Autodiscover
ServerVersion (POX)ServerVersion (POX)
MicrosoftOnlineMicrosoftOnline

Asegúrese de que el cliente captura esta información para que pueda dirigirse al conjunto de características que está disponible en el servidor de Exchange.Ensure that your client captures this information so that it can target the feature set that is available on the Exchange server. Esto puede ser útil para determinar si el cliente puede esperar un comportamiento diferente en función de si el buzón de correo del usuario se encuentra en una organización de Exchange online o de Exchange local.This can be useful to determine whether your client can expect different behavior based on whether the user's mailbox is located in an Exchange Online or Exchange on-premises organization.

Pruebas y archivos de registro en aplicaciones destinadas a Exchange OnlineTesting and log files in applications that target Exchange Online

Exchange online no proporciona acceso a los archivos de registro de protocolo EWS, los contadores de rendimiento EWS y los eventos de servicio relacionados con EWS que están disponibles en los servidores de Exchange locales.Exchange Online does not provide access to the EWS protocol log files, EWS performance counters, and EWS-related service events that are available on on-premises Exchange servers. Sin embargo, el acceso a ellos es útil para descubrir cómo realiza la aplicación cuando interactúa con EWS.Access to these is useful, however, in discovering how your application performs when it interacts with EWS. Asegúrese de probar la aplicación con un servidor local de Exchange de prueba para poder optimizar su rendimiento.Make sure that you test your application against a test Exchange on-premise server so that you can optimize its performance. Si es posible, puede cambiar la configuración de limitación en el servidor de prueba para que se ajuste a la configuración de limitación de Exchange Online, de modo que pueda evaluar cómo se comportará la aplicación cuando se conecte a Exchange Online.If possible, you can change the throttling settings on your test server to match the throttling settings for Exchange Online, so you can evaluate how your application will behave when it connects to Exchange Online.

Sugerencia

Puede usar la herramienta EWSRelentless para realizar una prueba de carga de EWS.You can use the EWSRelentless tool to perform an EWS load test. Puede usar esta herramienta con un servidor de prueba, los registros de protocolo EWS, los contadores de rendimiento de EWS, los eventos de servicio y la configuración de limitación de EWS para comprender mejor cómo funciona EWS con Load.You can use this tool with a test server, the EWS protocol logs, EWS performance counters, service events, and the EWS throttling settings to better understand how EWS performs under load.

Configuración de limitación y Exchange OnlineThrottling settings and Exchange Online

Los valores predeterminados para la configuración de limitación de EWS son distintos para Exchange online que para Exchange local.The default values for the EWS throttling settings are different for Exchange Online than they are for Exchange on-premises. Además, no puede cambiar la configuración de limitación de Exchange Online.Also, you cannot change Exchange Online throttling settings. Puede usar los cmdlets del shell de administración de Exchange para descubrir la configuración de limitación de Exchange local; sin embargo, estos cmdlets no están habilitados para Exchange Online.You can use Exchange Management Shell cmdlets to discover the throttling settings for Exchange on-premises; however, those cmdlets are not enabled for Exchange Online.

Opciones de configuración y cmdlets del shell de administración de ExchangeExchange Management Shell cmdlets and configuration settings

Varios cmdlets pueden afectar directa o indirectamente a las API de servicio Web en Exchange Online y Exchange local.A number of cmdlets can directly or indirectly affect the web service APIs in Exchange Online and Exchange on-premises. Los cmdlets no están disponibles para los siguientes en Exchange Online:Cmdlets are not available for the following in Exchange Online:

  • Configuración de limitaciónThrottling settings

  • Configuración del directorio virtualVirtual directory settings

  • Configuración de autenticaciónAuthentication settings

Para más información sobre los cmdlets que están disponibles para Exchange Online, consulte cmdlets de PowerShell en Exchange Online.For details about the cmdlets that are available for Exchange Online, see PowerShell cmdlets in Exchange Online. Para obtener más información acerca de los cmdlets que están disponibles para Exchange local, consulte cmdlets de exchange 2013.For more about cmdlets that are available for Exchange on-premises, see Exchange 2013 cmdlets.

Afinidad de cliente y equilibradores de carga de redClient affinity and network load balancers

La mayoría de las comunicaciones de EWS no requieren que el cliente participe en el mantenimiento de la afinidad con Exchange.Most EWS communication does not require that the client participate in maintaining affinity with Exchange. Las suscripciones a eventos de buzón de correo requieren que el cliente proporcione cookies y otra información para mantener la afinidad con el servidor de Exchange que mantiene la cola de eventos de buzón de un usuario.The subscriptions to mailbox events do require that the client provide cookies and other information to maintain affinity with the Exchange server that maintains the queue of mailbox events for a user. Exchange Server 2010 usa exchangecookie para mantener la afinidad de cliente en los equilibradores de carga de red.Exchange Server 2010 uses the exchangecookie to maintain client affinity across the network load balancers. Exchange Online y las versiones de Exchange local que comienzan con Exchange 2013 usan el encabezado x-AnchorMailbox, el encabezado x-PreferServerAffinity y la cookie x-BackEndOverrideCookie para mantener la afinidad de las notificaciones de buzón de correo.Exchange Online and versions of Exchange on-premises starting with Exchange 2013 use the X-AnchorMailbox header, X-PreferServerAffinity header, and X-BackEndOverrideCookie cookie to maintain affinity for mailbox notifications.

AutenticaciónAuthentication

Los clientes pueden autenticarse con Exchange online mediante Basic o OAuth.Clients can authenticate with Exchange Online by using either Basic or OAuth. Las versiones de Exchange local que comienzan con Exchange 2013 usan NTLM de forma predeterminada; sin embargo, es posible configurar Exchange local para que también use la autenticación básica.Versions of Exchange on-premises starting with Exchange 2013 use NTLM by default; however, it's possible to configure Exchange on-premises to use Basic authentication as well.

Diagnósticos de latencia de clienteClient latency diagnostics

Exchange Online recopila el diagnóstico de latencia de cliente si se informa de ellos.Exchange Online collects client latency diagnostics if they are reported. Esto ayuda a Microsoft a solucionar problemas de conectividad con Exchange Online.This helps Microsoft support troubleshoot connectivity issues with Exchange Online. Exchange local no recopila diagnósticos de latencia de cliente.Exchange on-premises does not collect client latency diagnostics. Si el cliente tiene como destino Exchange en el entorno local, el cliente no puede informar del diagnóstico de latencia al servidor.If your client targets Exchange on-premises, the client can't report latency diagnostics to the server.

Funcionalidad en la API administrada de EWSFunctionality in the EWS Managed API

La API administrada de EWS expone algunas funciones específicas de Exchange local, como la búsqueda de conexiones de punto de servicio y algunas funciones específicas de Exchange Online, como los informes de latencia de cliente.The EWS Managed API exposes some functionality that is specific to Exchange on-premises, such as service point connection lookup, and some functionality that is specific to Exchange Online, such as client latency reporting. Tenga en cuenta que es posible implementar algunas funcionalidades en Exchange Online antes de implementarlas en la API administrada de EWS.Note that it's possible for some functionality to be implemented in Exchange Online before it is implemented in the EWS Managed API.

La siguiente funcionalidad de la API administrada de EWS solo se aplica a Exchange Online:The following EWS Managed API functionality is only applicable to Exchange Online:

  • Informes de latencia de clienteClient latency reporting

  • Autenticación previa básicaBasic pre-authentication

  • La capacidad de solicitar que se devuelva RequestId en respuestasThe ability to request that the RequestId be returned in responses

Características de la API en los planes de Exchange Online y las ediciones de Exchange ServerAPI features in Exchange Online plans and Exchange Server editions

Los distintos conjuntos de características pueden estar disponibles en distintos planes de Office 365 y Exchange Online, o en las versiones Standard y Enterprise de Exchange Server.Different feature sets might be available in different Office 365 and Exchange Online plans, or in the standard and enterprise versions of Exchange Server. Tenga en cuenta que algunas funciones de API podrían no estar disponibles para la aplicación cliente según el plan de Exchange online o la edición de Exchange Server que hospeda el buzón de un usuario.Be aware that some API functionality might not be available to your client application depending on the Exchange Online plan or Exchange Server edition that hosts a user's mailbox.

Tabla 3. Variaciones de características de la API en planes y edicionesTable 3. API feature variations across plans and editions

Característica de la APIAPI feature Consideraciones de planeación o ediciónPlan or edition considerations

| Acceso de EWS a cuentas, excepto mediante la suplantación de Exchange|EWS access to accounts, except via Exchange impersonation
| No se permite en los planes de Office 365 para empresas: quiosco.|Not allowed in the Office 365 for business—Kiosk plans.
|

| Mensajería unificada (UM)|Unified Messaging (UM)
| Solo disponible con Office 365 Enterprise (E3) Plan, Exchange Online plan 2 y Exchange Server 2013 Enterprise Edition.|Only available with Office 365 Enterprise (E3) plan, Exchange Online Plan 2, and the Exchange Server 2013 Enterprise editions.
| | Integración de servicios de dominio de Active Directory (AD DS)| |Active Directory Domain Services (AD DS) integration
| No disponible en el plan Office 365 Small Business and Office 365 Small Business Premium.|Not available with the Office 365 Small Business and Office 365 Small Business Premium plan.
| | Information Rights Management, archiving y retenciones legales| |Information Rights Management, archiving, and legal holds
| Solo disponible con los planes de Office 365 Enterprise (E3 y E4).|Only available with the Office 365 Enterprise (E3 and E4) plans.
| | Protección contra la pérdida de datos| |Data Loss Protection
| Solo disponible con los planes de Office 365 Enterprise, Exchange Online plan 2 y Exchange Server 2013 Enterprise Edition.|Only available with the Office 365 Enterprise plans, Exchange Online Plan 2, and Exchange Server 2013 Enterprise editions.
|

Como la disponibilidad de las características puede cambiar, le recomendamos que revise los planes de Exchange Online y las ediciones de Exchange Server para evaluar cómo puede afectar la disponibilidad de las características a su cliente.Because feature availability can change, we recommend that you check the Exchange Online plans and Exchange Server editions to evaluate how feature availability might affect your client. También puede diseñar el cliente para comprobar la disponibilidad de la característica mediante el uso de la operación GetServiceConfiguration o mediante el envío de solicitudes de prueba para las operaciones que implementan las características.You can also design your client to check feature availability by using the GetServiceConfiguration operation or by sending test requests for the operations that implement the features. Si la característica no está disponible, la respuesta del servidor le indicará como tal.If the feature isn't available, the response from the server will indicate as such.

Otras consideracionesOther considerations

Puede hacer lo siguiente al dirigirse a Exchange local, pero no a Exchange Online:You can do the following when targeting Exchange on-premises but not Exchange Online:

  • Cree un cliente que esté instalado en el servidor de Exchange.Create a client that is installed on the Exchange server.

  • Instale agentes de transporte personalizados que puedan afectar la entrega y el contenido de los mensajes que cree y envíe con EWS y otros clientes.Install custom transport agents that can affect the delivery and content of messages you create and send with EWS and other clients.

Vea tambiénSee also