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
This commit is contained in:
Karan Hotchandani 2024-09-27 20:40:54 +05:30 committed by GitHub
parent bc6f4824ea
commit c709ec6c29
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 5 deletions

View File

@ -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 = () => {
<Route exact component={SignUpPage} path={ROUTES.SIGNUP}>
{!isEmpty(currentUser) && <Redirect to={ROUTES.HOME} />}
</Route>
{/* 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. */}
<Route
component={SamlCallback}
path={[ROUTES.SAML_CALLBACK, ROUTES.AUTH_CALLBACK]}
/>
{isAuthenticated ? <AppContainer /> : <UnAuthenticatedAppRouter />}
</Switch>
);

View File

@ -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 && (
<Route component={callbackComponent} path={ROUTES.CALLBACK} />
)}
<Route
component={SamlCallback}
path={[ROUTES.SAML_CALLBACK, ROUTES.AUTH_CALLBACK]}
/>
{!isSigningUp && (
<Route exact path={ROUTES.HOME}>
<Redirect to={ROUTES.SIGNIN} />