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"