From c709ec6c29ada205cd1764f844ea45ee9c71316e Mon Sep 17 00:00:00 2001 From: Karan Hotchandani <33024356+karanh37@users.noreply.github.com> Date: Fri, 27 Sep 2024 20:40:54 +0530 Subject: [PATCH] GEN-1578: SAML redirect leads to 404 page on UI (#17978) * move routes to callback router * move callback routes to global router * added comments * make saml and confidential callback route public --- .../ui/src/components/AppRouter/AppRouter.tsx | 10 ++++++++++ .../components/AppRouter/UnAuthenticatedAppRouter.tsx | 6 +----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/openmetadata-ui/src/main/resources/ui/src/components/AppRouter/AppRouter.tsx b/openmetadata-ui/src/main/resources/ui/src/components/AppRouter/AppRouter.tsx index ab449c663ae..f50f6579c3c 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/AppRouter/AppRouter.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/AppRouter/AppRouter.tsx @@ -26,6 +26,8 @@ import AppContainer from '../AppContainer/AppContainer'; import Loader from '../common/Loader/Loader'; import { UnAuthenticatedAppRouter } from './UnAuthenticatedAppRouter'; +import SamlCallback from '../../pages/SamlCallback'; + const AppRouter = () => { const location = useCustomLocation(); @@ -92,6 +94,14 @@ const AppRouter = () => { {!isEmpty(currentUser) && } + + {/* When authenticating from an SSO provider page (e.g., SAML Apps), if the user is already logged in, + the callbacks should be available. This ensures consistent behavior across different authentication scenarios. */} + + {isAuthenticated ? : } ); diff --git a/openmetadata-ui/src/main/resources/ui/src/components/AppRouter/UnAuthenticatedAppRouter.tsx b/openmetadata-ui/src/main/resources/ui/src/components/AppRouter/UnAuthenticatedAppRouter.tsx index f1d2f8dac8a..0b5ba794da4 100644 --- a/openmetadata-ui/src/main/resources/ui/src/components/AppRouter/UnAuthenticatedAppRouter.tsx +++ b/openmetadata-ui/src/main/resources/ui/src/components/AppRouter/UnAuthenticatedAppRouter.tsx @@ -18,7 +18,6 @@ import { AuthProvider } from '../../generated/configuration/authenticationConfig import { useApplicationStore } from '../../hooks/useApplicationStore'; import useCustomLocation from '../../hooks/useCustomLocation/useCustomLocation'; import PageNotFound from '../../pages/PageNotFound/PageNotFound'; -import SamlCallback from '../../pages/SamlCallback'; import AccountActivationConfirmation from '../../pages/SignUp/account-activation-confirmation.component'; import { isProtectedRoute } from '../../utils/AuthProvider.util'; import Auth0Callback from '../Auth/AppCallbacks/Auth0Callback/Auth0Callback'; @@ -76,10 +75,7 @@ export const UnAuthenticatedAppRouter = () => { {callbackComponent && ( )} - + {!isSigningUp && (