From d7d9e75e5b4a0fc10e74522f3e419e7d76043023 Mon Sep 17 00:00:00 2001
From: Brandon Hopkins <76761586+TechHutTV@users.noreply.github.com>
Date: Wed, 3 Jun 2026 07:42:33 -0700
Subject: [PATCH] Add optional logout URL step (#775)
---
src/pages/selfhosted/identity-providers/adfs.mdx | 2 ++
src/pages/selfhosted/identity-providers/authentik.mdx | 1 +
src/pages/selfhosted/identity-providers/generic-oidc.mdx | 5 +++++
src/pages/selfhosted/identity-providers/keycloak.mdx | 1 +
src/pages/selfhosted/identity-providers/managed/auth0.mdx | 1 +
src/pages/selfhosted/identity-providers/managed/duo.mdx | 4 ++++
.../identity-providers/managed/google-workspace.mdx | 5 +++++
.../selfhosted/identity-providers/managed/jumpcloud.mdx | 1 +
.../identity-providers/managed/microsoft-entra-id.mdx | 1 +
src/pages/selfhosted/identity-providers/managed/okta.mdx | 1 +
src/pages/selfhosted/identity-providers/pocketid.mdx | 1 +
src/pages/selfhosted/identity-providers/zitadel.mdx | 1 +
12 files changed, 24 insertions(+)
diff --git a/src/pages/selfhosted/identity-providers/adfs.mdx b/src/pages/selfhosted/identity-providers/adfs.mdx
index 846fb258..c85c3a7b 100644
--- a/src/pages/selfhosted/identity-providers/adfs.mdx
+++ b/src/pages/selfhosted/identity-providers/adfs.mdx
@@ -128,6 +128,8 @@ Write-Host "Client Secret: $($serverApp.ClientSecret)"
Record both the **Client ID** and **Client Secret**. You will paste them into the NetBird dashboard in Step 2.
+*(Optional)* To let logout redirect back to NetBird, register NetBird's logout callback as an additional redirect URI — include `"https://
diff --git a/src/pages/selfhosted/identity-providers/generic-oidc.mdx b/src/pages/selfhosted/identity-providers/generic-oidc.mdx
index e54be994..4ef1f455 100644
--- a/src/pages/selfhosted/identity-providers/generic-oidc.mdx
+++ b/src/pages/selfhosted/identity-providers/generic-oidc.mdx
@@ -143,6 +143,11 @@ The redirect URL format is typically:
https://your-netbird-domain.com/oauth2/callback/{connector-id}
```
+**(Optional) Logout redirect URI** — if your provider supports a post-logout (sign-out) redirect URI, also register NetBird's logout callback so logout redirects back to NetBird cleanly:
+```
+https://your-netbird-domain.com/oauth2/logout/callback
+```
+
diff --git a/src/pages/selfhosted/identity-providers/managed/duo.mdx b/src/pages/selfhosted/identity-providers/managed/duo.mdx
index 843e95eb..be49c71a 100644
--- a/src/pages/selfhosted/identity-providers/managed/duo.mdx
+++ b/src/pages/selfhosted/identity-providers/managed/duo.mdx
@@ -78,6 +78,10 @@ Add Duo as an external IdP directly in the NetBird Management Dashboard. This is
diff --git a/src/pages/selfhosted/identity-providers/managed/jumpcloud.mdx b/src/pages/selfhosted/identity-providers/managed/jumpcloud.mdx
index 4e210b37..238f9114 100644
--- a/src/pages/selfhosted/identity-providers/managed/jumpcloud.mdx
+++ b/src/pages/selfhosted/identity-providers/managed/jumpcloud.mdx
@@ -83,6 +83,7 @@ Sometimes, the JumpCloud application configuration will add duplicate attributes
1. Return to the JumpCloud tab
2. Click the **SSO** tab
3. Under **Redirect URIs**, verify the redirect URL matches the exact URL you copied from NetBird (e.g., `https://netbird.hopkins.sh/oauth2/callback`). If it doesn't match exactly, update it to match.
+ - *(Optional)* In the **Post Logout Redirect URIs** field, add `https://
diff --git a/src/pages/selfhosted/identity-providers/managed/microsoft-entra-id.mdx b/src/pages/selfhosted/identity-providers/managed/microsoft-entra-id.mdx
index fb3ce993..9e399114 100644
--- a/src/pages/selfhosted/identity-providers/managed/microsoft-entra-id.mdx
+++ b/src/pages/selfhosted/identity-providers/managed/microsoft-entra-id.mdx
@@ -87,6 +87,7 @@ Add Microsoft as an external IdP directly in the NetBird Management Dashboard. C
2. Click **Add a platform** → **Web**
3. In the dropdown next to the redirect URI field, select **Web**
4. Paste the redirect URL you copied from NetBird in the **Redirect URI** field
+ - *(Optional)* Add NetBird's logout callback as an additional **Web** redirect URI: `https://netbird.example.com/oauth2/logout/callback` (replace `netbird.example.com` with your NetBird dashboard domain). Entra validates the post-logout redirect against the registered redirect URIs, so this lets logout return to NetBird cleanly.
diff --git a/src/pages/selfhosted/identity-providers/managed/okta.mdx b/src/pages/selfhosted/identity-providers/managed/okta.mdx
index 22b6c5ff..1c5ee5d0 100644
--- a/src/pages/selfhosted/identity-providers/managed/okta.mdx
+++ b/src/pages/selfhosted/identity-providers/managed/okta.mdx
@@ -72,6 +72,7 @@ Add Okta as an external IdP directly in the NetBird Management Dashboard. This i
1. Return to the Okta tab
2. In the **Sign-in redirect URIs** field, paste the redirect URL you copied from NetBird
+ - *(Optional)* In the **Sign-out redirect URIs** field, add `https://netbird.example.com/oauth2/logout/callback` (replace `netbird.example.com` with your NetBird dashboard domain) so logout redirects back to NetBird cleanly
diff --git a/src/pages/selfhosted/identity-providers/pocketid.mdx b/src/pages/selfhosted/identity-providers/pocketid.mdx
index 54710914..8b1e7a8b 100644
--- a/src/pages/selfhosted/identity-providers/pocketid.mdx
+++ b/src/pages/selfhosted/identity-providers/pocketid.mdx
@@ -80,6 +80,7 @@ After saving, NetBird displays the **Redirect URL**. Copy this URL and add it to
1. Return to PocketID console → **OIDC Clients**
2. Edit your NetBird client
3. Add the redirect URL to **Callback URLs**
+ - *(Optional)* In **Logout Callback URLs**, add `https://netbird.example.com/oauth2/logout/callback` (replace `netbird.example.com` with your NetBird dashboard domain) so logout redirects back to NetBird cleanly
diff --git a/src/pages/selfhosted/identity-providers/zitadel.mdx b/src/pages/selfhosted/identity-providers/zitadel.mdx
index dcd3f593..ebf39e8e 100644
--- a/src/pages/selfhosted/identity-providers/zitadel.mdx
+++ b/src/pages/selfhosted/identity-providers/zitadel.mdx
@@ -87,6 +87,7 @@ Add Zitadel as an external IdP directly in the NetBird Management Dashboard. Thi
1. Return to the Zitadel Console tab
2. In the redirect URIs field, paste the redirect URL you copied from NetBird
+ - *(Optional)* In the **Post Logout URIs** field, add `https://netbird.example.com/oauth2/logout/callback` (replace `netbird.example.com` with your NetBird dashboard domain) so logout redirects back to NetBird cleanly