Entra IDDeep dive

Microsoft Entra application proxy errors: connector events, gateway messages and fixes

Every documented application proxy browser message, private network connector install and registration error, and KCD event (12008, 13016-13022), with cause and first check.

Microsoft Entra application proxy publishes on-premises web apps through an outbound-only connector, so every failure lands in one of three places: the browser error page, the connector's event logs, or the Kerberos hop to the back end. This quick reference lists the messages and events Microsoft documents for each, with the usual cause and the first check, plus the tests that prove which hop is broken.

Codes in this quick reference

  • Gateway time-out: the application proxy service can't reach a working connectorBrowser error page (Status Code)
  • Bad gateway: the connector can't reach the back-end applicationBrowser error page (Status Code)
  • Forbidden: the user isn't authorized in Entra ID or on the back-end applicationBrowser error page (Status Code)
  • Authorization failed. Make sure to assign the user with access to the application.Browser error page
  • Authorization failed. Make sure that the user has a license for Microsoft Entra ID P1 or P2.Browser error page
  • This corporate app can't be accessed right now. Please try again later… The connector timed out.Browser error page
  • Forbidden: This corporate app can't be accessed OR The user could not be authorized.Browser error page
  • InternalServerError: This corporate app can't be accessed right now. Please try again later… ConnectorError:Unauthorized.Browser error page

+ 22 more codes in the tables below.

How this guide is organized: How to read these codes → Browser messages users see → Connector installation and registration errors → Connector runtime and status problems → Kerberos constrained delegation (KCD) events → How to verify a fixFlow diagram of the article's sections in reading order: 1. How to read these codes. 2. Browser messages users see. 3. Connector installation and registration errors. 4. Connector runtime and status problems. 5. Kerberos constrained delegation (KCD) events. 6. How to verify a fix. Toolbox: AADSTS50059, AADSTS53000, AADSTS53003, setspn -x, MicrosoftEntraPrivateNetworkConnectorService.exe.1How to read these codes2Browser messages users see3Connector installation andregistration errors4Connector runtime and statusproblems5Kerberos constraineddelegation (KCD) events6How to verify a fixTOOLBOXAADSTS50059AADSTS53000AADSTS53003setspn -xMicrosoftEntraPrivateNetworkConne…How this guide is organized: How to read these codes → Browser messages users see → Connector installation and registration errors → Connector runtime and status problems → Kerberos constrained delegation (KCD) events → How to verify a fixFlow diagram of the article's sections in reading order: 1. How to read these codes. 2. Browser messages users see. 3. Connector installation and registration errors. 4. Connector runtime and status problems. 5. Kerberos constrained delegation (KCD) events. 6. How to verify a fix. Toolbox: AADSTS50059, AADSTS53000, AADSTS53003, setspn -x, MicrosoftEntraPrivateNetworkConnectorService.exe.1How to read these codes2Browser messages users see3Connector installation and registration errors4Connector runtime and status problems5Kerberos constrained delegation (KCD)events6How to verify a fixTOOLBOXAADSTS50059AADSTS53000AADSTS53003setspn -xMicrosoftEntraPrivateNetworkConnectorService…
At a glance: how this guide is organized · 6 sections · 5 key settings and tools

How to read these codes#

Which application proxy hop failed, from where the error showsWhere does the failure show up? if Browser error page: Which Status Code does the page show? if Gateway time-out: The service can't reach a connector (Check the connector group's status and the outbound ports); if Bad gateway: The connector can't reach the app (Open the internal URL on the connector server); if Forbidden: The user isn't authorized (Check the app's users and groups, then permissions on the back end); if Connector install: Read the Application log (Source Microsoft Entra private network connector); if AADSTS at sign-in: An ordinary Entra sign-in error (Look the code up in the AADSTS quick reference)Where does the failure showup?Which Status Code does thepage show?FIXThe service can'treach aconnectorCheck the connectorgroup's status andthe outbound portsGateway time-outFIXThe connectorcan't reach theappOpen the internalURL on theconnector serverBad gatewayFIXThe user isn'tauthorizedCheck the app'susers and groups,then permissions onthe back endForbiddenBrowser error pageFIXRead theApplication logSource MicrosoftEntra privatenetwork connectorConnector installNOTEAn ordinary Entrasign-in errorLook the code up inthe AADSTS quickreferenceAADSTS at sign-inWhich application proxy hop failed, from where the error showsWhere does the failure show up? if Browser error page: Which Status Code does the page show? if Gateway time-out: The service can't reach a connector (Check the connector group's status and the outbound ports); if Bad gateway: The connector can't reach the app (Open the internal URL on the connector server); if Forbidden: The user isn't authorized (Check the app's users and groups, then permissions on the back end); if Connector install: Read the Application log (Source Microsoft Entra private network connector); if AADSTS at sign-in: An ordinary Entra sign-in error (Look the code up in the AADSTS quick reference)Where does the failure show up?Browser error pageWhich Status Code does the page show?Gateway time-outFIXThe service can't reach a connectorCheck the connector group's status and theoutbound portsBad gatewayFIXThe connector can't reach the appOpen the internal URL on the connector serverForbiddenFIXThe user isn't authorizedCheck the app's users and groups, thenpermissions on the back endConnector installFIXRead the Application logSource Microsoft Entra private network connectorAADSTS at sign-inNOTEAn ordinary Entra sign-in errorLook the code up in the AADSTS quick reference
Figure 1 · Decision tree Which application proxy hop failed, from where the error shows. Start from where the failure shows up; for browser errors, the Status Code at the bottom left of the page tells you which hop broke.
  • The browser page says This corporate app can't be accessed and shows a Status Code at the bottom left. Gateway time-out means the cloud service couldn't reach a connector; Bad gateway means the connector couldn't reach the app; Forbidden means the user isn't authorized. Note the TransactionID and Timestamp: they match connector events.
  • Connector runtime events: Event Viewer › Applications and Services Logs › Microsoft › Microsoft Entra private network › Connector › Admin (Kerberos events, trust certificate). The updater writes to … › Updater › Admin.
  • Registration failures: Windows Logs › Application, source Microsoft Entra private network connector. Installer logs go to %TEMP%.
  • Naming: the connector is now the Microsoft Entra private network connector, shared with Microsoft Entra Private Access. Its services are WAPCSvc (Network Service) and WAPCUpdaterSvc (Local System).
  • Connector Diagnostics tool: from connector version 1.5.4287.0, ConnectorDiagnosticsTool in the install folder checks the certificate, ports 80/443, the outbound proxy, CRL access, the service and the back-end endpoint.

Sign-in failures before the app is reached (preauthentication) are ordinary Entra sign-ins; read their AADSTS codes in the AADSTS quick reference and Conditional Access blocks in AADSTS53000 vs AADSTS53003.

Browser messages users see#

MessageMeaningUsual causeFirst check
Gateway time-outService can't reach a connector in time.App assigned to a connector group with no working connectors; required ports closed.Connector group status; outbound ports.
Bad gatewayConnector can't reach the back end.Typo in the internal URL, app root not published, KCD problem, or the app itself.Open the internal URL in a browser on the connector server.
ForbiddenUser isn't authorized.Not assigned in Entra ID, or no permission on the back end.Users and groups on the app; back-end permissions.
This corporate app can't be accessed. You are not authorized to access the application. Authorization failed. Make sure to assign the user with access to the application.Assignment check failed.User not assigned, or a Microsoft account or guest on an IWA app.Assign the user or group; sign in with a corporate account.
… Authorization failed. Make sure that the user has a license for Microsoft Entra ID P1 or P2.License check failed.No Premium license assigned.Assign Entra ID P1 or P2 to the user or group.
This corporate app can't be accessed right now. Please try again later… The connector timed out.Back end didn't serve the user.User not set up for the app on-premises.On-premises permissions for the user.
Forbidden: This corporate app can't be accessed OR The user could not be authorized. Make sure the user is defined in your on-premises AD and that the user has access to the app in your on-premises AD.Connector can't read the user's authorization data.Connector machine account lacks access to authorization information.Add it to the Windows Authorization Access Group.
InternalServerError: This corporate app can't be accessed right now. Please try again later… ConnectorError:Unauthorized.Connector's client certificate didn't reach the service.A network device inspects or terminates outbound TLS.Bypass TLS inspection for connector traffic.
The website cannot display the page.IWA or OWA app fails.Wrong SPN; Microsoft account or guest user; missing on-premises rights.The SPN in the app's SSO settings.
A server with the specified host name could not be found.Custom domain doesn't resolve.DNS record or certificate for the custom domain.The domain's certificate and DNS record.
Page loads without images or stylesHTTP 404 for resources.Content outside the published path.Publish the highest-level path you need.

Connector installation and registration errors#

ErrorMeaningUsual causeFirst check
Connector registration failed: Make sure you enabled application proxy in the Azure Management Portal and that you entered your Active Directory user name and password correctly. Error: 'One or more errors occurred.'Registration didn't finish.Sign-in window closed, or a network error.Rerun the wizard; browse to a public site and test ports.
Clear error is presented in the registration window. Cannot proceedSign-in rejected.Wrong user name or password.Try again.
Same message with AADSTS50059: No tenant-identifying information found…Wrong account type.A Microsoft account instead of a tenant account.Use an admin from the tenant's domain.
Failed to retrieve the current execution policy for running PowerShell scripts.Installer can't run scripts.Group Policy disables PowerShell scripts.Turn on Script Execution: Not Configured, or Enabled with local and remote signed (or all) scripts.
Connector failed to download the configuration.Connector can't authenticate or reach the internet.Expired client certificate, or a proxy that blocks Network Service and Local System.Re-register; allow or bypass the proxy for those accounts.
Connector registration failed: Make sure you are an Application Administrator of your Active Directory to register the connector. Error: 'The registration request was denied.'Account lacks rights in this tenant.Not an admin; registration always targets the account's home tenant.At least Application Administrator.
The connector was unable to connect to the service due to networking issues.Outbound path blocked.Firewall rule.Required ports and URLs.
Event 1000: Connector re-registration failed: The Connector trust certificate expired.Connector stops working.Offline for months, so renewal failed.Re-register (below) or reinstall.
Installation fails at trust creationCertificate can't be used.Machine, proxy or firewall lacks TLS 1.2 or blocks SHA512.TLS 1.2 on the server; ask the network team.
No admin sign-in pop-upSign-in can't start.Pop-ups or JavaScript blocked.Allow them; add the sites to Trusted sites when prompted.
PowerShell
# Latest registration error, then re-register an existing connector
Get-EventLog -LogName Application -Source "Microsoft Entra private network connector" -EntryType Error -Newest 1
Import-Module MicrosoftEntraPrivateNetworkConnectorPSModule
Register-MicrosoftEntraPrivateNetworkConnector

The installer credentials are used only for registration; afterward the connector authenticates with its own certificate. Its thumbprint is in %ProgramData%\Microsoft\Microsoft Entra Private Network Connector\Config\TrustSettings.xml, issued for connectorregistrationca.msappproxy.net.

Connector runtime and status problems#

ProblemMeaningUsual causeFirst check
Failed to validate chain of certificate (advanced log)A service certificate such as *.msappproxy.net can't be validated.Proxy set in MicrosoftEntraPrivateNetworkConnectorService.exe.config but no system proxy.netsh winhttp set proxy address:port.
Connector Active, apps still failConnector can't reach some cloud endpoints.Partial firewall blocks or TLS inspection (unsupported).Firewall logs for the connector's IP.
Connector shows InactiveNo contact with the service.Uninstalled or stopped; removed automatically after 10 days.WAPCSvc running; no manual delete exists.
Old connector versionNot auto-upgraded.Only major versions auto-upgrade; updater errors.Updater Admin log; upgrade from Global Secure Access › Connect › Connectors.
Slow back end times outDefault back-end time-out too short.Long-running requests.Set Backend Application Timeout to Long.

Kerberos constrained delegation (KCD) events#

EventMeaningUsual causeFirst check
12008Too many Kerberos attempts to the back end.Back end declines the ticket; misconfiguration or clock skew.App settings; time sync on both servers.
13016No UPN in the edge token or access cookie.STS UPN claim configuration.The UPN claim in the STS.
13019No ticket on behalf of the user (general API error).DC declined: SPN, trust or clock skew.SPN on the app; domain trust; time sync with the DC.
13020No ticket: back-end SPN not defined.SPN missing.setspn -q http/spn.contoso.com.
13022Back end answers Kerberos with HTTP 401.App pool identity and SPN account differ, or UseAppPoolCredentials is False.IIS identity, SPN, Configuration Editor.
12027Logged with KCD sign-in failures.Delegation-stage failure (Microsoft pairs it with 13019).Match it to the browser's TransactionID.

Microsoft's KCD troubleshooting guide checks three stages in order: preauthentication, the delegation service, then the app. The essentials:

  • Internal DNS uses an A record, not a CNAME, for the app address.
  • The connector's computer account may delegate to the app's SPN with Use any authentication protocol; setspn -x finds duplicate SPNs.
  • A domain policy capping Kerberos token size can block the ticket.
  • In IIS, Negotiate sits above NTLM. A response blob starting TlRMTVNTUAAB is NTLM; Kerberos blobs start YII.
  • Switch the app's SSO from Integrated Windows authentication to Microsoft Entra single sign-on disabled: if users then get in, the fault is KCD. Ticket-side KDC errors are in the Kerberos error codes reference.

Watch out: TLS inspection or termination between the connector and the cloud service isn't supported; the connector authenticates with a certificate and the inspection breaks it.

How to verify a fix#

  1. Services and status: Get-Service WAPCSvc, WAPCUpdaterSvc shows both Running, and the connector is Active under Global Secure Access › Connect › Connectors.
  2. Diagnostics: run ConnectorDiagnosticsTool; every check should pass.
  3. Internal path: open the internal URL from the connector server. Good: the app loads, and the response offers Negotiate.
  4. External path: sign in through the external URL as an assigned, licensed user. Good: the app opens without a prompt, and the Connector Admin log shows no new 12008, 13019 or 13022.
  5. Remove any test changes (preauthentication off, NTLM removed, extended protection off) once Kerberos works.

To purge stale Kerberos tickets on the back-end server after an SPN or identity change, Microsoft documents this command:

PowerShell
Get-WmiObject Win32_LogonSession | Where-Object {$_.AuthenticationPackage -ne 'NTLM'} |
    ForEach-Object {klist.exe purge -li ([Convert]::ToString($_.LogonId, 16))}

References#

Written and checked against current Microsoft Learn documentation. Test changes with a pilot group before rolling them out to everyone, and if an admin center path has moved since, search for the setting name instead.

Spotted a mistake, or did this fix work differently for you? Email me or message me on LinkedIn — corrections are credited in the article.

Written by

Omer Eltayeb

Intune Subject Matter Expert in Cairo, Egypt, former Microsoft Cloud Solutions Architect, Microsoft Certified Trainer and Microsoft Innovative Educator Expert (2024–26) and Microsoft Elevate Educator Expert (2026–27). I share practical, step-by-step guides, study plans, scripts and toolkits for Microsoft Intune, Configuration Manager, Microsoft Entra ID, Microsoft Defender, Exchange and Microsoft 365 with the community.

Microsoft Certified Trainer (MCT) 2026Microsoft Innovative Educator Expert 2025–2026Microsoft Elevate Educator Expert 2026–2027ISC2 Certified Information Systems Security Professional (CISSP)Microsoft 365 Certified: Enterprise Administrator Expert (MS-102)