[英]React MSAL Library msal-react : Issue in persisting the login session in different user-policies B2C application
我在單頁 B2C 應用程序中使用 msal-react 進行登錄。我使用 loginRedirect() function 進行登錄。
const { instance } = useMsal();
let {idToken} = await instance.loginRedirect();
這使我可以成功登錄。
登錄后,當我檢查用戶是否使用以下 function 進行身份驗證時,它返回 true。
import {useIsAuthenticated,} from "@azure/msal-react";
const isAuthenticated = useIsAuthenticated();
這意味着用戶已通過身份驗證。
但是,當我嘗試從應用程序訪問另一個用戶策略 url 時。 它要求再次輸入用戶憑據。 有什么方法可以在單頁應用程序中使用相同的用戶 session 來在訪問其他用戶策略 url 時不再詢問憑據?
我只是將用戶直接從應用程序重定向到策略 url。 請參閱下面的代碼。
function UserPolicyRedirect() {
useEffect(() => {
const timeout = setTimeout(() => {
// 👇️ redirects to an external URL
window.location.replace(
"user-policy url"
);
}, 3000);
return () => clearTimeout(timeout);
}, []);
return <>Redirecting...</>;
}
在用於重定向用戶的 app.js 中,我按如下方式設置了路由。
<Route path="/profile" element={<UserPolicyRedirect/>}></Route>
關於如何避免在這種情況下再次詢問憑據的任何建議?
我認為您需要使用 loginRedirect(或 loginPopup)來導航到其他策略。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.