Documentation
¶
Overview ¶
TODO: rename the package name to vuln
Index ¶
- func IsConnectedToThirdPartyIntegration(asset models.Asset) bool
- func NewFirstPartyVulnController(firstPartyVulnRepository core.FirstPartyVulnRepository, ...) *firstPartyVulnController
- func NewFirstPartyVulnService(firstPartyVulnRepository core.FirstPartyVulnRepository, ...) *firstPartyVulnService
- func NewHTTPController(dependencyVulnRepository core.DependencyVulnRepository, ...) *dependencyVulnHTTPController
- func NewService(dependencyVulnRepository core.DependencyVulnRepository, ...) *service
- func ShouldCreateIssues(assetVersion models.AssetVersion) bool
- func ShouldCreateThisIssue(asset models.Asset, dependencyVuln *models.DependencyVuln) bool
- type DependencyVulnDTO
- type DependencyVulnStatus
- type ExpectedIssueState
- type FirstPartyVulnDTO
- type FirstPartyVulnStatus
- type LicenseRiskController
- func (controller LicenseRiskController) Create(ctx core.Context) error
- func (controller LicenseRiskController) CreateEvent(ctx core.Context) error
- func (controller LicenseRiskController) GetComponentOverwriteForAssetVersion(assetID uuid.UUID, assetVersionName string, pURL string) (models.LicenseRisk, error)
- func (controller LicenseRiskController) ListPaged(ctx core.Context) error
- func (controller LicenseRiskController) MakeFinalLicenseDecision(ctx core.Context) error
- func (controller LicenseRiskController) Mitigate(ctx core.Context) error
- func (controller LicenseRiskController) Read(ctx core.Context) error
- type LicenseRiskDTO
- type LicenseRiskService
- func (s *LicenseRiskService) FindLicenseRisksInComponents(assetVersion models.AssetVersion, components []models.Component, ...) error
- func (s *LicenseRiskService) MakeFinalLicenseDecision(vulnID, finalLicense, justification, userID string) error
- func (s *LicenseRiskService) UpdateLicenseRiskState(tx core.DB, userID string, licenseRisk *models.LicenseRisk, statusType string, ...) (models.VulnEvent, error)
- func (s *LicenseRiskService) UserDetectedExistingLicenseRiskOnDifferentBranch(tx core.DB, artifactName string, licenseRisks []models.LicenseRisk, ...) error
- func (s *LicenseRiskService) UserDetectedLicenseRiskInAnotherArtifact(tx core.DB, licenseRisks []models.LicenseRisk, artifactName string) error
- func (s *LicenseRiskService) UserDetectedLicenseRisks(tx core.DB, assetID uuid.UUID, assetVersionName, artifactName string, ...) error
- func (s *LicenseRiskService) UserDidNotDetectLicenseRiskInArtifactAnymore(tx core.DB, licenseRisks []models.LicenseRisk, artifactName string) error
- func (s *LicenseRiskService) UserFixedLicenseRisks(tx core.DB, userID string, licenseRisks []models.LicenseRisk) error
- func (s *LicenseRiskService) UserFixedLicenseRisksByAutomaticRefresh(tx core.DB, userID string, licenseRisks []licenseRiskWithNewLicense, ...) error
- type LicenseRiskStatus
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewFirstPartyVulnController ¶
func NewFirstPartyVulnController(firstPartyVulnRepository core.FirstPartyVulnRepository, firstPartyVulnService core.FirstPartyVulnService, projectService core.ProjectService) *firstPartyVulnController
func NewFirstPartyVulnService ¶
func NewFirstPartyVulnService(firstPartyVulnRepository core.FirstPartyVulnRepository, vulnEventRepository core.VulnEventRepository, assetRepository core.AssetRepository, thirdPartyIntegration core.ThirdPartyIntegration) *firstPartyVulnService
func NewHTTPController ¶
func NewHTTPController(dependencyVulnRepository core.DependencyVulnRepository, dependencyVulnService core.DependencyVulnService, projectService core.ProjectService, statisticsService core.StatisticsService) *dependencyVulnHTTPController
func NewService ¶
func NewService(dependencyVulnRepository core.DependencyVulnRepository, vulnEventRepository core.VulnEventRepository, assetRepository core.AssetRepository, cveRepository core.CveRepository, orgRepository core.OrganizationRepository, projectRepository core.ProjectRepository, thirdPartyIntegration core.ThirdPartyIntegration, assetVersionRepository core.AssetVersionRepository) *service
func ShouldCreateIssues ¶
func ShouldCreateIssues(assetVersion models.AssetVersion) bool
func ShouldCreateThisIssue ¶
func ShouldCreateThisIssue(asset models.Asset, dependencyVuln *models.DependencyVuln) bool
Types ¶
type DependencyVulnDTO ¶
type DependencyVulnDTO struct {
ID string `json:"id"`
Message *string `json:"message"`
AssetVersionName string `json:"assetVersionId"`
AssetID string `json:"assetId"`
State models.VulnState `json:"state"`
CVE *models.CVE `json:"cve"`
CVEID *string `json:"cveID"`
ComponentPurl *string `json:"componentPurl"`
ComponentDepth *int `json:"componentDepth"`
ComponentFixedVersion *string `json:"componentFixedVersion"`
Effort *int `json:"effort"`
RiskAssessment *int `json:"riskAssessment"`
RawRiskAssessment *float64 `json:"rawRiskAssessment"`
Priority *int `json:"priority"`
LastDetected time.Time `json:"lastDetected"`
CreatedAt time.Time `json:"createdAt"`
TicketID *string `json:"ticketId"`
TicketURL *string `json:"ticketUrl"`
ManualTicketCreation bool `json:"manualTicketCreation"`
Artifacts []models.Artifact `json:"artifacts"`
RiskRecalculatedAt time.Time `json:"riskRecalculatedAt"`
}
func DependencyVulnToDto ¶
func DependencyVulnToDto(f models.DependencyVuln) DependencyVulnDTO
type DependencyVulnStatus ¶
type DependencyVulnStatus struct {
StatusType string `json:"status"`
Justification string `json:"justification"`
MechanicalJustification models.MechanicalJustificationType `json:"mechanicalJustification"`
}
type ExpectedIssueState ¶
type ExpectedIssueState string
const ( ExpectedIssueStateOpen ExpectedIssueState = "open" ExpectedIssueStateClosed ExpectedIssueState = "closed" )
func GetExpectedIssueState ¶
func GetExpectedIssueState(asset models.Asset, dependencyVuln *models.DependencyVuln) ExpectedIssueState
func GetExpectedIssueStateForFirstPartyVuln ¶
func GetExpectedIssueStateForFirstPartyVuln(asset models.Asset, firstPartyVuln *models.FirstPartyVuln) ExpectedIssueState
func (ExpectedIssueState) ToGithub ¶
func (e ExpectedIssueState) ToGithub() string
func (ExpectedIssueState) ToGitlab ¶
func (e ExpectedIssueState) ToGitlab() string
type FirstPartyVulnDTO ¶
type FirstPartyVulnDTO struct {
ID string `json:"id"`
ScannerIDs string `json:"scannerIds"`
Message *string `json:"message"`
AssetVersionName string `json:"assetVersionName"`
AssetID string `json:"assetId"`
State models.VulnState `json:"state"`
RuleID string `json:"ruleId"`
URI string `json:"uri"`
SnippetContents []models.SnippetContent `json:"snippetContents"`
CreatedAt time.Time `json:"createdAt"`
TicketID *string `json:"ticketId"`
TicketURL *string `json:"ticketUrl"`
ManualTicketCreation bool `json:"manualTicketCreation"`
Commit string `json:"commit"`
Email string `json:"email"`
Author string `json:"author"`
Date string `json:"date"`
RuleName string `json:"ruleName"`
RuleHelp string `json:"ruleHelp"`
RuleHelpURI string `json:"ruleHelpURI"`
RuleDescription string `json:"ruleDescription"`
RuleProperties map[string]any `json:"ruleProperties"`
}
func FirstPartyVulnToDto ¶
func FirstPartyVulnToDto(f models.FirstPartyVuln) FirstPartyVulnDTO
type FirstPartyVulnStatus ¶
type FirstPartyVulnStatus struct {
StatusType string `json:"status"`
Justification string `json:"justification"`
MechanicalJustification models.MechanicalJustificationType `json:"mechanicalJustification"`
}
type LicenseRiskController ¶
type LicenseRiskController struct {
// contains filtered or unexported fields
}
func NewLicenseRiskController ¶
func NewLicenseRiskController(licenseOverwriteRepository core.LicenseRiskRepository, LicenseRiskService core.LicenseRiskService) *LicenseRiskController
func (LicenseRiskController) Create ¶
func (controller LicenseRiskController) Create(ctx core.Context) error
func (LicenseRiskController) CreateEvent ¶
func (controller LicenseRiskController) CreateEvent(ctx core.Context) error
func (LicenseRiskController) GetComponentOverwriteForAssetVersion ¶
func (controller LicenseRiskController) GetComponentOverwriteForAssetVersion(assetID uuid.UUID, assetVersionName string, pURL string) (models.LicenseRisk, error)
func (LicenseRiskController) ListPaged ¶
func (controller LicenseRiskController) ListPaged(ctx core.Context) error
func (LicenseRiskController) MakeFinalLicenseDecision ¶
func (controller LicenseRiskController) MakeFinalLicenseDecision(ctx core.Context) error
type LicenseRiskDTO ¶
type LicenseRiskDTO struct {
ID string `json:"id"`
Message *string `json:"message"`
AssetVersionName string `json:"assetVersionName"`
AssetID string `json:"assetId"`
State models.VulnState `json:"state"`
CreatedAt time.Time `json:"createdAt"`
TicketID *string `json:"ticketId"`
TicketURL *string `json:"ticketUrl"`
ManualTicketCreation bool `json:"manualTicketCreation"`
FinalLicenseDecision *string `json:"finalLicenseDecision"`
ComponentPurl string `json:"componentPurl"`
Component models.Component `json:"component"`
Artifacts []models.Artifact `json:"artifacts"`
}
func LicenseRiskToDto ¶
func LicenseRiskToDto(f models.LicenseRisk) LicenseRiskDTO
type LicenseRiskService ¶
type LicenseRiskService struct {
// contains filtered or unexported fields
}
func NewLicenseRiskService ¶
func NewLicenseRiskService(licenseRiskRepository core.LicenseRiskRepository, vulnEventRepository core.VulnEventRepository) *LicenseRiskService
func (*LicenseRiskService) FindLicenseRisksInComponents ¶
func (s *LicenseRiskService) FindLicenseRisksInComponents(assetVersion models.AssetVersion, components []models.Component, artifactName string) error
func (*LicenseRiskService) MakeFinalLicenseDecision ¶
func (s *LicenseRiskService) MakeFinalLicenseDecision(vulnID, finalLicense, justification, userID string) error
func (*LicenseRiskService) UpdateLicenseRiskState ¶
func (s *LicenseRiskService) UpdateLicenseRiskState(tx core.DB, userID string, licenseRisk *models.LicenseRisk, statusType string, justification string, mechanicalJustification models.MechanicalJustificationType) (models.VulnEvent, error)
func (*LicenseRiskService) UserDetectedExistingLicenseRiskOnDifferentBranch ¶
func (s *LicenseRiskService) UserDetectedExistingLicenseRiskOnDifferentBranch(tx core.DB, artifactName string, licenseRisks []models.LicenseRisk, alreadyExistingEvents [][]models.VulnEvent, assetVersion models.AssetVersion, asset models.Asset) error
func (*LicenseRiskService) UserDetectedLicenseRiskInAnotherArtifact ¶
func (s *LicenseRiskService) UserDetectedLicenseRiskInAnotherArtifact(tx core.DB, licenseRisks []models.LicenseRisk, artifactName string) error
Helper: ensure existing license risks are associated with another artifact (insert join rows)
func (*LicenseRiskService) UserDetectedLicenseRisks ¶
func (s *LicenseRiskService) UserDetectedLicenseRisks(tx core.DB, assetID uuid.UUID, assetVersionName, artifactName string, licenseRisks []models.LicenseRisk) error
Helper: create detected events for newly opened license risks and save them
func (*LicenseRiskService) UserDidNotDetectLicenseRiskInArtifactAnymore ¶
func (s *LicenseRiskService) UserDidNotDetectLicenseRiskInArtifactAnymore(tx core.DB, licenseRisks []models.LicenseRisk, artifactName string) error
func (*LicenseRiskService) UserFixedLicenseRisks ¶
func (s *LicenseRiskService) UserFixedLicenseRisks(tx core.DB, userID string, licenseRisks []models.LicenseRisk) error
the license risks were fixes BY REMOVING the component
func (*LicenseRiskService) UserFixedLicenseRisksByAutomaticRefresh ¶
type LicenseRiskStatus ¶
type LicenseRiskStatus struct {
StatusType string `json:"status"`
Justification string `json:"justification"`
MechanicalJustification models.MechanicalJustificationType `json:"mechanicalJustification"`
}
Click to show internal directories.
Click to hide internal directories.