diff --git a/frontend/src/services/OAuth2/OAuthContext.ts b/frontend/src/services/OAuth2/OAuthContext.ts
index 10c4d3821689f1ab3a1a28d679446ea2265788ba..32d272c2851b94b2465da98255547cbfbf9f3d97 100644
--- a/frontend/src/services/OAuth2/OAuthContext.ts
+++ b/frontend/src/services/OAuth2/OAuthContext.ts
@@ -3,6 +3,7 @@ import { createContext } from "react";
 
 export interface OAuthContextProps extends IOAuthState {
   signinPopup(): void;
+  logout(): void;
 }
 
 export const OAuthContext = createContext<OAuthContextProps | undefined>(undefined);
diff --git a/frontend/src/services/OAuth2/OAuthProvider.tsx b/frontend/src/services/OAuth2/OAuthProvider.tsx
index feb36a15c3c03a899c36d1de6ebcfd689d311333..21af44b4bfb308c98abb46a4c41b8ef0bc15177e 100644
--- a/frontend/src/services/OAuth2/OAuthProvider.tsx
+++ b/frontend/src/services/OAuth2/OAuthProvider.tsx
@@ -168,10 +168,15 @@ export const OAuthProvider = (props: OAuthProviderProps): JSX.Element => {
 
   }, [props]);
 
+  const logout = useCallback(() => {
+    setOAuthState(initialOAuthState);
+  }, []);
+
   return (
     <OAuthContext.Provider
       value={{
         signinPopup: signinPopup,
+        logout: logout,
         isAuthenticated: oAuthState.isAuthenticated,
         isLoading: oAuthState.isLoading,
         error: oAuthState.error,