Skip to content

Commit

Permalink
GEN-1578: SAML redirect leads to 404 page on UI (#17978)
Browse files Browse the repository at this point in the history
* move routes to callback router

* move callback routes to global router

* added comments

* make saml and confidential callback route public

(cherry picked from commit c709ec6)
  • Loading branch information
karanh37 committed Sep 30, 2024
1 parent d83e3a6 commit 4f4cf29
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,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 = useLocation();

Expand Down Expand Up @@ -91,6 +93,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>
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ import { ROUTES } from '../../constants/constants';
import { AuthProvider } from '../../generated/configuration/authenticationConfiguration';
import { useApplicationStore } from '../../hooks/useApplicationStore';
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';
Expand Down Expand Up @@ -74,10 +73,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} />
Expand Down

0 comments on commit 4f4cf29

Please sign in to comment.