Documentation
¶
Index ¶
Constants ¶
View Source
const ( ReasonNewUnapprovedTool = "new_unapproved_tool" ReasonRevokedToolReappeared = "revoked_tool_reappeared" ReasonDeprecatedToolReappeared = "deprecated_tool_reappeared" ReasonPermissionExpansion = "unapproved_permission_expansion" ReasonCriticalAttackPath = "critical_attack_path_drift" ReasonNewUnknownAutomation = "new_unknown_automation" ReasonNewRepoWritePath = "new_repo_write_path" ReasonNewSecretBearingWorkflow = "new_secret_bearing_workflow" ReasonNewMCPToolConfig = "new_mcp_tool_config" ReasonApprovalExpired = "approval_expired" ReasonOwnerChanged = "owner_changed" ReasonApprovedPathRiskIncreased = "approved_path_risk_increased" ReasonDeprecatedPathReappeared = "deprecated_path_reappeared" )
View Source
const BaselineVersion = "v1"
Variables ¶
This section is empty.
Functions ¶
func SaveBaseline ¶
Types ¶
type AttackPathDriftSummary ¶ added in v1.0.5
type AttackPathDriftSummary struct {
BaselineCriticalCount int `json:"baseline_critical_count"`
CurrentCriticalCount int `json:"current_critical_count"`
Added []AttackPathState `json:"added,omitempty"`
Removed []AttackPathState `json:"removed,omitempty"`
ScoreChanged []AttackPathScoreChange `json:"score_changed,omitempty"`
DriftCount int `json:"drift_count"`
DriftRatio float64 `json:"drift_ratio"`
MinAbsolute int `json:"min_absolute"`
MinRelative float64 `json:"min_relative"`
}
type AttackPathScoreChange ¶ added in v1.0.5
type AttackPathState ¶ added in v1.0.5
type Baseline ¶
type Baseline struct {
Version string `json:"version"`
GeneratedAt string `json:"generated_at"`
Tools []ToolState `json:"tools"`
AttackPaths []AttackPathState `json:"attack_paths,omitempty"`
}
func BuildBaselineFromSnapshot ¶ added in v1.0.8
func LoadBaseline ¶
func LoadComparableBaseline ¶ added in v1.0.8
type InventoryDiffResult ¶ added in v1.0.8
type InventoryDiffResult struct {
Status string `json:"status"`
Drift bool `json:"drift_detected"`
BaselinePath string `json:"baseline_path,omitempty"`
AddedCount int `json:"added_count"`
RemovedCount int `json:"removed_count"`
ChangedCount int `json:"changed_count"`
ControlPathDrift bool `json:"control_path_drift_detected,omitempty"`
ControlPathReasonCount int `json:"control_path_reason_count,omitempty"`
ControlPathReasons []Reason `json:"control_path_reasons,omitempty"`
Added []source.Finding `json:"added"`
Removed []source.Finding `json:"removed"`
Changed []diff.ChangedItem `json:"changed"`
}
func CompareInventory ¶ added in v1.0.8
func CompareInventory(baseline, current state.Snapshot) InventoryDiffResult
type Reason ¶
type Reason struct {
Code string `json:"code"`
AgentID string `json:"agent_id"`
AgentInstanceID string `json:"agent_instance_id,omitempty"`
ToolID string `json:"tool_id"`
Org string `json:"org"`
Message string `json:"message"`
AddedPermissions []string `json:"added_permissions,omitempty"`
PreviousOwner string `json:"previous_owner,omitempty"`
CurrentOwner string `json:"current_owner,omitempty"`
PreviousRiskScore float64 `json:"previous_risk_score,omitempty"`
CurrentRiskScore float64 `json:"current_risk_score,omitempty"`
AttackPathDrift *AttackPathDriftSummary `json:"attack_path_drift,omitempty"`
}
type Result ¶
type ToolState ¶
type ToolState struct {
AgentID string `json:"agent_id"`
AgentInstanceID string `json:"agent_instance_id,omitempty"`
ToolID string `json:"tool_id"`
Org string `json:"org"`
Repo string `json:"repo,omitempty"`
Location string `json:"location,omitempty"`
Status string `json:"status"`
ApprovalStatus string `json:"approval_status"`
SecurityVisibility string `json:"security_visibility,omitempty"`
Owner string `json:"owner,omitempty"`
EvidenceExpires string `json:"evidence_expires,omitempty"`
WritePathClasses []string `json:"write_path_classes,omitempty"`
SecretBearing bool `json:"secret_bearing,omitempty"`
Confidence string `json:"confidence,omitempty"`
ControlPathType string `json:"control_path_type,omitempty"`
RiskScore float64 `json:"risk_score,omitempty"`
Present bool `json:"present"`
Permissions []string `json:"permissions"`
LegacyAgentID string `json:"-"`
}
func SnapshotTools ¶
Click to show internal directories.
Click to hide internal directories.