Documentation ¶
Index ¶
- func PrepareScanDocument(body map[string]interface{}, kind model.FileKind) map[string]interface{}
- type Content
- type Service
- func (s *Service) GetScanSummary(ctx context.Context, scanIDs []string) ([]model.SeveritySummary, error)
- func (s *Service) GetVulnerabilities(ctx context.Context, scanID string) ([]model.Vulnerability, error)
- func (s *Service) PrepareSources(ctx context.Context, scanID string, wg *sync.WaitGroup, errCh chan<- error)
- func (s *Service) StartScan(ctx context.Context, scanID string, errCh chan<- error, wg *sync.WaitGroup, ...)
- type Storage
- type Tracker
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Service ¶
type Service struct { SourceProvider provider.SourceProvider Storage Storage Parser *parser.Parser Inspector *engine.Inspector SecretsInspector *secrets.Inspector Tracker Tracker Resolver *resolver.Resolver // contains filtered or unexported fields }
Service is a struct that contains a SourceProvider to receive sources, a storage to save and retrieve scanning informations a parser to parse and provide files in format that KICS understand, a inspector that runs the scanning and a tracker to update scanning numbers
func (*Service) GetScanSummary ¶
func (s *Service) GetScanSummary(ctx context.Context, scanIDs []string) ([]model.SeveritySummary, error)
GetScanSummary returns how many vulnerabilities of each severity was found
func (*Service) GetVulnerabilities ¶
func (s *Service) GetVulnerabilities(ctx context.Context, scanID string) ([]model.Vulnerability, error)
GetVulnerabilities returns a list of scan detected vulnerabilities
func (*Service) PrepareSources ¶ added in v1.4.3
type Storage ¶
type Storage interface { SaveFile(ctx context.Context, metadata *model.FileMetadata) error SaveVulnerabilities(ctx context.Context, vulnerabilities []model.Vulnerability) error GetVulnerabilities(ctx context.Context, scanID string) ([]model.Vulnerability, error) GetScanSummary(ctx context.Context, scanIDs []string) ([]model.SeveritySummary, error) }
Storage is the interface that wraps following basic methods: SaveFile, SaveVulnerability, GetVulnerability and GetScanSummary SaveFile should append metadata to a file SaveVulnerabilities should append vulnerabilities list to current storage GetVulnerabilities should returns all vulnerabilities associated to a scan ID GetScanSummary should return a list of summaries based on their scan IDs
type Tracker ¶
type Tracker interface { TrackFileFound() TrackFileParse() TrackFileFoundCountLines(countLines int) TrackFileParseCountLines(countLines int) }
Tracker is the interface that wraps the basic methods: TrackFileFound and TrackFileParse TrackFileFound should increment the number of files to be scanned TrackFileParse should increment the number of files parsed successfully to be scanned