DB schema

studied byStudied by 0 people
0.0(0)
learn
LearnA personalized and smart learning plan
exam
Practice TestTake a test on your terms and definitions
spaced repetition
Spaced RepetitionScientifically backed study method
heart puzzle
Matching GameHow quick can you match all your cards?
flashcards
FlashcardsStudy terms and definitions

1 / 3

flashcard set

Earn XP

Description and Tags

schema.prisma

4 Terms

1
model Vulnerability

  id                                       String                                     @id @unique @default(uuid()) @db.Uuid
title String
advisory_id String @default("")
cve String
cwe_id Int
cwe CWE? @relation(fields: [cwe_id], references: [id], onDelete: Cascade)
published_at DateTime @db.Timestamptz
imported_at DateTime @default(now()) @db.Timestamptz
last_updated_at DateTime @default(now()) @updatedAt @db.Timestamptz
summary String
description String
publisher String
original_url String?
svm_url String?
cvss_base_score Decimal @db.Decimal(3, 1)
cvss_temporal_score Decimal @db.Decimal(3, 1)
cvss_vector_string String
cvss_version CVSSVersion
threats String
assets AssetVulnerability[]
affected_components AffectedComponent[]
document_version String
VulnerabilityListSortedByRiskScoreCounts VulnerabilityListSortedByRiskScoreCounts[]
advisory_feed_url AdvisoryFeedUrl? @relation(fields: [advisory_feed_url_id], references: [id], onDelete: NoAction)
advisory_feed_url_id String? @db.Uuid
tenant_id String?
tenant Tenant? @relation(fields: [tenant_id], references: [id], onDelete: Cascade)

@@unique([tenant_id, cve, advisory_id, publisher])

New cards
2
model AffectedComponent

  id                  Int           @id @default(autoincrement())
vulnerability_id String @db.Uuid
vulnerability Vulnerability @relation(fields: [vulnerability_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
name String
vendor String
cpe String?
versioning_scheme String?
version_constraints String?
model_numbers String[]
potential_products Product[]
remediations Remediation[]

@@index([vulnerability_id])

New cards
3
model Remediation

  id                    Int                 @id @default(autoincrement())
affected_component_id Int
affected_component AffectedComponent @relation(fields: [affected_component_id], references: [id], onDelete: Cascade)
category RemediationCategory
details String
url String
versioning_scheme String
version_constraint String

@@index([affected_component_id])

New cards
4
model AdvisoryFeed

  id                   String          @id @unique @default(uuid()) @db.Uuid
tenant Tenant? @relation(fields: [tenant_id], references: [id], onDelete: Cascade)
tenant_id String?
advisory_feed_url AdvisoryFeedUrl @relation(fields: [advisory_feed_url_id], references: [id], onDelete: NoAction)
advisory_feed_url_id String @db.Uuid
publisher String

@@unique([publisher, tenant_id])
@@index([tenant_id])

New cards
robot