1
0
forked from baron/baron-sso

devfront 개발모드 unkown로그인 제거

This commit is contained in:
2026-06-19 08:15:07 +09:00
parent 7ea385a9f4
commit 016d783482
11 changed files with 162 additions and 34 deletions

View File

@@ -2,22 +2,26 @@ import { useEffect, useState } from "react";
import { useAuth } from "react-oidc-context";
import { Navigate, Outlet } from "react-router-dom";
import { userManager } from "../../lib/auth";
import { findPersistedOidcUser } from "../../lib/oidcStorage";
import {
findPersistedOidcUser,
isValidOidcSessionUser,
} from "../../lib/oidcStorage";
export default function AuthGuard() {
const auth = useAuth();
const hasActiveAuthUser =
auth.isAuthenticated && isValidOidcSessionUser(auth.user);
const [hasStoredUser, setHasStoredUser] = useState<boolean | null>(() =>
findPersistedOidcUser() ? true : null,
);
const isDevelopmentMode = import.meta.env.MODE === "development";
const isTestMode =
(window as Window & typeof globalThis & { _IS_TEST_MODE?: boolean })
._IS_TEST_MODE === true || navigator.webdriver === true;
._IS_TEST_MODE === true;
useEffect(() => {
let cancelled = false;
if (isDevelopmentMode || isTestMode) {
if (isTestMode) {
setHasStoredUser(true);
return () => {
cancelled = true;
@@ -36,7 +40,7 @@ export default function AuthGuard() {
.getUser()
.then((user) => {
if (!cancelled) {
setHasStoredUser(Boolean(user && !user.expired));
setHasStoredUser(isValidOidcSessionUser(user));
}
})
.catch(() => {
@@ -50,7 +54,7 @@ export default function AuthGuard() {
};
}, [isTestMode]);
if (isDevelopmentMode || isTestMode) {
if (isTestMode) {
return <Outlet />;
}
@@ -76,7 +80,7 @@ export default function AuthGuard() {
);
}
if (!auth.isAuthenticated && !hasStoredUser) {
if (!hasActiveAuthUser && !hasStoredUser) {
return <Navigate to="/login" replace />;
}