Udostępnij za pośrednictwem


403: Błąd zabroniony podczas próby wyświetlenia informacji wolnych/zajętych w całej organizacji w programie Exchange

Oryginalny numer KB: 3082946

Podsumowanie

Podczas próby wyświetlenia informacji wolny/zajęty w całej organizacji próba kończy się niepowodzeniem i generuje błąd 403: Zabronione .

Na przykład masz las A na serwerze z programem Microsoft Exchange 2007 i lasem B na serwerze z systemem Exchange Server 2013 lub Exchange Server 2010 r. W takiej sytuacji użytkownik w lesie A nie może wyświetlić informacji o wolnym/zajętym użytkowniku w lesie B. Ponadto następujące zdarzenie jest rejestrowane w dzienniku zdarzeń na serwerze źródłowym:

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.

Na serwerze docelowym następujący wpis jest rejestrowany w dzienniku usługi Internet Information Service (IIS) w katalogu 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

Na serwerze z systemem Exchange Server 2013 w dzienniku HTTPProxy jest rejestrowany następujący wpis:

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();

Na serwerze skrzynki pocztowej następujący wpis jest rejestrowany w dzienniku usług IIS w katalogu 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

Na serwerze skrzynki pocztowej w dzienniku EWS jest rejestrowany następujący wpis:

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

Przyczyna

Ten problem występuje, ponieważ usługa EWS jest zablokowana w lesie B na poziomie organizacji. Las B zezwala tylko wybranym aplikacjom na dostęp do ews. Usługa EWS nie jest dozwolona w przypadku żądań wolnych/zajętych między lasami.

Aby sprawdzić konfigurację organizacji, uruchom następujące polecenie:

Get-Organizationconfig | fl *ews*

Rozwiązanie

Aby włączyć żądania wolnych/zajętych między lasami na poziomie organizacji, musisz dodać agenta użytkownika do listy Zezwalaj ews. Na przykład w sytuacji opisanej w sekcji "Podsumowanie" dodaj następującą ścieżkę agenta użytkownika.

Uwaga

Te informacje są pobierane z dzienników usług IIS na serwerze docelowym.

ASProxy/CrossForest/EmailDomain/EXCH/08.03.0083.00

Następnie uruchom następujące polecenie:

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