allow for api key auth in upload endpoint

This commit is contained in:
cirroskais 2024-08-02 11:14:07 -04:00
parent fa8d7b4223
commit e130fcd4c3
No known key found for this signature in database
GPG key ID: 5FC73EBF2678E33D

View file

@ -1,7 +1,18 @@
import { COOKIE } from '$lib/config';
import type { Cookies } from '@sveltejs/kit';
import { getSession } from './database';
import type { User, UserSettings } from '@prisma/client';
import { getSession, getUserApiKey } from './database';
import type { Role, UserSettings } from '@prisma/client';
interface User {
id: number;
username: string;
email: string;
password: string;
role: Role;
createdAt: Date;
lastSeen: Date;
maxUploadMB: number;
}
interface UserAndMaybeSettings extends User {
settings: UserSettings | null;
@ -14,7 +25,10 @@ export async function authenticate(request: Request, cookies: Cookies) {
let user: UserAndMaybeSettings | false = false;
if (bearer && !cookie) {
return false;
const key = await getUserApiKey(bearer);
if (key) {
user = key.user;
}
}
if (cookie && !bearer) {