403: Error prohibido al intentar ver la información de disponibilidad de toda la organización en Exchange

Número de KB original: 3082946

Resumen

Al intentar ver la información de disponibilidad de toda la organización, se produce un error en el intento y se genera un error 403: Prohibido .

Por ejemplo, tiene el bosque A en un servidor que ejecuta Microsoft Exchange 2007 y el bosque B en un servidor que ejecuta Exchange Server 2013 o Exchange Server 2010. En esta situación, un usuario del bosque A no puede ver la información de disponibilidad de un usuario en el bosque B. Además, el siguiente evento se registra en el registro de eventos en el servidor de origen:

Log Name:      Application

Source:        MSExchange Availability

Date:          Date

Event ID:      4002

Task Category: Availability Service

Level:         Error

Keywords:      Classic

User:          N/A

Computer:      <Computer Name>

Description:

Process <Process ID>[w3wp.exe:/LM/W3SVC/1/ROOT/EWS-1-130778800910201315]: Proxy request CrossForest from
Requester:S-1-5-21-1016748826-3068013645-1401187561-1105 to https://<ONLINE_URL>/EWS/Exchange.asmx failed.
Caller SIDs: . The exception returned is Microsoft.Exchange.InfoWorker.Common.Availability.ProxyWebRequestProcessingException:
System.Net.WebException: The request failed with HTTP status 403: Forbidden.

En el servidor de destino, la siguiente entrada se registra en el registro de Internet Information Service (IIS), en el directorio W3SVC1:

IIS Logs:  2015-06-08 04:19:25 <IP Address> POST /EWS/Exchange.asmx &CorrelationID=<empty>;&ClientId=JQJLGECZ0MGEHVVWEBZG&cafeReqId=9f422915-0721-48ce-b2c6-4406d2c1b49d; 443 domain\serviceaccount <IP Address> ASProxy/CrossForest/EmailDomain/EXCH/08.03.0083.000 - 403 0 0 718

En el servidor que ejecuta Exchange Server 2013, se registra la siguiente entrada en el registro HTTPProxy:

WebExceptionStatus=ProtocolError;ResponseStatusCode=403;WebException=System.Net.WebException: The remote server returned an error: (403) Forbidden.    at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)    at Microsoft.Exchange.HttpProxy.ProxyRequestHandler.<>c__DisplayClass2c.<OnResponseReady>b__2b();

En el servidor de buzones de correo, se registra la siguiente entrada en el registro de IIS, en el directorio W3SVC2:

2015-06-08 04:16:29 <IP Address> POST /EWS/Exchange.asmx - 444 domain\serviceaccount 10.152.152.166 ASProxy/CrossForest/EmailDomain/EXCH/08.03.0083.000 403 0 0 233

En el servidor de buzones de correo, se registra la siguiente entrada en el registro de EWS:

AuthError=User not allowed to access EWS;,FaultInnerException=Microsoft.Exchange.Services.Core.Types.ServiceAccessDeniedException: Access is denied. Check credentials and try again.;ExceptionHandlerBase_ProvideFault_FaultException=System.ServiceModel.FaultException: Access is denied. Check credentials and try again.    at Microsoft.Exchange.Services.Wcf.MessageInspectorManager.InternalAfterReceiveRequest(Message& request  IClientChann

Causa

Este problema se produce porque EWS está bloqueado en el bosque B en el nivel de organización. El bosque B solo permite que las aplicaciones seleccionadas accedan a EWS. EWS no se permite para las solicitudes de disponibilidad entre bosques.

Para comprobar la configuración de la organización, ejecute el siguiente comando:

Get-Organizationconfig | fl *ews*

Solución

Para habilitar las solicitudes de disponibilidad entre bosques en el nivel de organización, debe agregar el agente de usuario a la lista EWS Allow (Permitir). Por ejemplo, en la situación que se describe en la sección "Resumen", agregue la siguiente ruta de acceso del agente de usuario.

Nota:

Esta información se toma de los registros de IIS en el servidor de destino.

ASProxy/CrossForest/EmailDomain/EXCH/08.03.0083.00

Después, ejecute el siguiente comando:

Set-OrganizationConfig -EwsAllowList "ASProxy/CrossForest/EmailDomain/EXCH/08.03.0083.000","TestApp","app1"