Windows app: OIDC sign-in via browser succeeds but does not redirect back to app (self-hosted + Microsoft Entra ID)
Summary
When signing into the Windows desktop app against a self-hosted Outline instance using Microsoft Entra ID (OIDC), the browser-based sign-in completes successfully — the user is authenticated and lands on the Outline wiki in the browser — but the redirect back to the desktop app never fires. The app stays on the sign-in screen.
Steps to reproduce
- Install the Outline Windows desktop app (v1.8.0)
- Enter custom server URL (self-hosted, e.g.
https://wiki.example.com) - Click Sign in with Microsoft (Entra ID / OIDC)
- Browser opens → Entra ID login completes → browser lands on the Outline wiki (authenticated)
- Desktop app does not receive the redirect — it remains on the sign-in screen
- The user is now signed in on the browser but not in the app
Expected behavior
After successful browser-based OIDC authentication, the OS-level protocol redirect (outline://) should fire and hand the session token back to the desktop app, completing sign-in there too.
Actual behavior
The redirect back to the desktop app does not trigger. The browser stays open showing the authenticated wiki. The desktop app stays stuck on the sign-in screen.
Environment
| Field | Value |
|---|---|
| App version | 1.8.0 |
| OS | Windows 11 |
| Server version | self-hosted (latest) |
| Auth provider | Microsoft Entra ID (OIDC) |
| Deployment | Enterprise (Intune-managed devices) |
Additional context
- Sign-in works correctly in the browser against the same server and same OIDC provider
- The Entra ID OIDC redirect URI is configured as
https://wiki.example.com/auth/oidc.callback - Similar behaviour reported in the main outline/outline repo: #12916 — suggests the desktop app's protocol handler (
outline://auth/...) is either not being triggered by the server or not registered/handled correctly on Windows - The referenced server-side code path (
server/utils/authentication.ts#L136) may not enter the desktop redirect block for self-hosted instances
Workaround
None found. Users must use the browser version of Outline instead of the desktop app.
Source: OutlineFoundation/outline-apps