feat(proxy): add optional auth for dashboard and API
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
22
packages/proxy/src/auth/sessionStore.ts
Normal file
22
packages/proxy/src/auth/sessionStore.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import { randomUUID } from 'node:crypto';
|
||||
|
||||
interface Session {
|
||||
username: string;
|
||||
createdAt: number;
|
||||
}
|
||||
|
||||
const sessions = new Map<string, Session>();
|
||||
|
||||
export function createSession(username: string): string {
|
||||
const token = randomUUID();
|
||||
sessions.set(token, { username, createdAt: Date.now() });
|
||||
return token;
|
||||
}
|
||||
|
||||
export function validateSession(token: string): Session | null {
|
||||
return sessions.get(token) ?? null;
|
||||
}
|
||||
|
||||
export function removeSession(token: string): void {
|
||||
sessions.delete(token);
|
||||
}
|
||||
Reference in New Issue
Block a user