login as
This commit is contained in:
@ -247,7 +247,10 @@ export const authOptions: NextAuthOptions = {
|
|||||||
session.user.role = token.role;
|
session.user.role = token.role;
|
||||||
session.user.name = token.name || token.email;
|
session.user.name = token.name || token.email;
|
||||||
}
|
}
|
||||||
|
if (user.impersonating) {
|
||||||
|
// Add flag to session if user is being impersonated
|
||||||
|
session.user.impersonating = true;
|
||||||
|
}
|
||||||
// if (session?.user) {
|
// if (session?.user) {
|
||||||
// session.user.id = user.id; //duplicate
|
// session.user.id = user.id; //duplicate
|
||||||
// }
|
// }
|
||||||
|
@ -27,6 +27,8 @@ export default async function handler(req, res) {
|
|||||||
impersonating: true, // flag to indicate impersonation
|
impersonating: true, // flag to indicate impersonation
|
||||||
originalUser: session.user // save the original user for later
|
originalUser: session.user // save the original user for later
|
||||||
};
|
};
|
||||||
|
// Log the event (simplified example)
|
||||||
|
console.log(`Admin ${session.user} impersonated user ${userToImpersonate.email} on ${new Date().toISOString()}`);
|
||||||
|
|
||||||
// Here you would typically use some method to create a session server-side
|
// Here you would typically use some method to create a session server-side
|
||||||
// For this example, we'll just send the impersonated session as a response
|
// For this example, we'll just send the impersonated session as a response
|
||||||
|
Reference in New Issue
Block a user