403: Errore non consentito quando si tenta di visualizzare le informazioni sulla disponibilità a livello di organizzazione in Exchange

Numero KB originale: 3082946

Riepilogo

Quando si tenta di visualizzare le informazioni sulla disponibilità a livello di organizzazione, il tentativo ha esito negativo e genera un errore 403: Non consentito .

Ad esempio, è presente la foresta A in un server che esegue Microsoft Exchange 2007 e la foresta B in un server che esegue Exchange Server 2013 o Exchange Server 2010. In questo caso, un utente della foresta A non può visualizzare le informazioni sulla disponibilità di un utente nella foresta B. Inoltre, l'evento seguente viene registrato nel registro eventi nel server di origine:

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.

Nel server di destinazione viene registrata la voce seguente nel log di Internet Information Service (IIS), nella directory 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

Nel server che esegue Exchange Server 2013 viene registrata la voce seguente nel log 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();

Nel server Cassette postali viene registrata la voce seguente nel log IIS, nella directory 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

Nel server Cassette postali viene registrata la voce seguente nel log 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

Questo problema si verifica perché EWS è bloccato nella foresta B a livello di organizzazione. La foresta B consente solo alle applicazioni selezionate di accedere a EWS. EWS non è consentito per le richieste di disponibilità tra foreste.

Per controllare la configurazione dell'organizzazione, eseguire il comando seguente:

Get-Organizationconfig | fl *ews*

Risoluzione

Per abilitare le richieste di disponibilità tra foreste a livello di organizzazione, è necessario aggiungere l'agente utente all'elenco EWS Allow. Ad esempio, nella situazione descritta nella sezione "Riepilogo" aggiungere il percorso dell'agente utente seguente.

Nota

Queste informazioni sono tratte dai log IIS nel server di destinazione.

ASProxy/CrossForest/EmailDomain/EXCH/08.03.0083.00

Quindi, esegui il seguente comando:

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