custom

package
v1.8.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 11, 2026 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package custom provides a YAML-based custom rule detector. Users can define their own secret patterns in .leakwatch.yaml.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CustomDetector

type CustomDetector struct {
	// contains filtered or unexported fields
}

CustomDetector implements detector.Detector for user-defined rules.

func NewFromDef

func NewFromDef(def RuleDef) (*CustomDetector, error)

NewFromDef creates a CustomDetector from a RuleDef. Returns an error if the regex pattern is invalid or exceeds the maximum length.

func (*CustomDetector) Description

func (d *CustomDetector) Description() string

Description returns a human-readable description of the custom detector.

func (*CustomDetector) ID

func (d *CustomDetector) ID() string

ID returns the unique identifier of the custom detector.

func (*CustomDetector) Keywords

func (d *CustomDetector) Keywords() []string

Keywords returns the Aho-Corasick pre-filter keywords for the custom detector.

func (*CustomDetector) Scan

func (d *CustomDetector) Scan(_ context.Context, data []byte) []detector.RawFinding

Scan searches the data for matches against the custom regex pattern. If an entropy threshold is defined, matches below it are skipped.

func (*CustomDetector) Severity

func (d *CustomDetector) Severity() finding.Severity

Severity returns the default severity level for the custom detector findings.

type RuleDef

type RuleDef struct {
	ID          string   `yaml:"id" mapstructure:"id"`
	Description string   `yaml:"description" mapstructure:"description"`
	Regex       string   `yaml:"regex" mapstructure:"regex"`
	Keywords    []string `yaml:"keywords" mapstructure:"keywords"`
	Severity    string   `yaml:"severity" mapstructure:"severity"`
	Entropy     float64  `yaml:"entropy" mapstructure:"entropy"`
}

RuleDef represents a user-defined custom detection rule from YAML config.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL