mirror of
https://github.com/Drop-OSS/drop.git
synced 2025-11-09 20:12:10 +10:00
* fix: small fixes to request util and version update endpoint * feat: api token creation and management * fix: lint * fix: remove unneeded sidebar component
71 lines
1.3 KiB
Plaintext
71 lines
1.3 KiB
Plaintext
enum AuthMec {
|
|
Simple
|
|
OpenID
|
|
}
|
|
|
|
model LinkedAuthMec {
|
|
userId String
|
|
mec AuthMec
|
|
enabled Boolean @default(true)
|
|
|
|
version Int @default(1)
|
|
credentials Json
|
|
|
|
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
|
|
@@id([userId, mec])
|
|
}
|
|
|
|
model Invitation {
|
|
id String @id @default(uuid())
|
|
isAdmin Boolean @default(false)
|
|
|
|
username String?
|
|
email String?
|
|
expires DateTime
|
|
}
|
|
|
|
enum APITokenMode {
|
|
User
|
|
System
|
|
Client
|
|
}
|
|
|
|
model APIToken {
|
|
id String @id @default(uuid())
|
|
token String @unique @default(uuid())
|
|
mode APITokenMode
|
|
name String
|
|
|
|
userId String?
|
|
user User? @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
|
|
clientId String?
|
|
client Client? @relation(fields: [clientId], references: [id], onDelete: Cascade)
|
|
|
|
acls String[]
|
|
|
|
expiresAt DateTime?
|
|
|
|
@@index([token])
|
|
}
|
|
|
|
model Certificate {
|
|
id String @id @default(uuid())
|
|
|
|
privateKey String
|
|
certificate String
|
|
|
|
blacklisted Boolean @default(false)
|
|
}
|
|
|
|
model Session {
|
|
token String @id
|
|
expiresAt DateTime
|
|
|
|
userId String
|
|
user User? @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
|
|
data Json // misc extra data
|
|
}
|