본 서비스에는 “SBOM 발급”과 “SBOM 조회” 2가지 주 기능이 존재합니다. 이에, Database를 설계할 때, 최대한 merge하지 않고, 하나의 데이터베이스로 API를 구현하는 것을 목표로 했습니다. 특히, SBOM 발급기는 프로젝트 특성상 사내 인증팀이 “조회”를 목적으로 확인하는 프로그램으기에 이를 우선시 하여 데이터베이스를 구축하느 것을 목표로 했습니다.
하나의 스캔 타겟은, 하나의 SBOM 발급이 가능하므로 1:1로 매핑한다.
조건 ) 30일이 지나지 않은 경우, 같은 파일을 올려도 2개의 SBOM으로 모두 저장해야한다.
칼럼 명칭은 중복성을 피하기 위해 ‘sbom_’ 또는 ‘file_’과 같은 문구를 삭제한다.
프로젝트의 핵심기능 ‘조회’에서 보여지는 정보는 모두 Sbom_History 테이블에 넣어, 조회 성능 저하를 방지한다.