security

package
v0.4.7 Latest Latest
Warning

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

Go to latest
Published: May 23, 2026 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package security provides query sanitization and data masking functionality.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MaskPattern

type MaskPattern struct {
	Name        string
	Pattern     string
	Replacement string
	Enabled     bool
}

MaskPattern represents a PII masking pattern.

func DefaultPIIPatterns

func DefaultPIIPatterns() []MaskPattern

DefaultPIIPatterns returns commonly used PII masking patterns.

type PIIMasker

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

PIIMasker masks personally identifiable information in query results.

func NewPIIMasker

func NewPIIMasker(patterns []MaskPattern, enabled bool) (*PIIMasker, error)

NewPIIMasker creates a new PII masker with configured patterns.

func (*PIIMasker) MaskData

func (pm *PIIMasker) MaskData(data string) string

MaskData masks PII data in a string.

func (*PIIMasker) MaskValue

func (pm *PIIMasker) MaskValue(value interface{}) interface{}

MaskValue masks PII in any value (handles different types).

type QueryModifier

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

QueryModifier modifies queries to add safety constraints.

func NewQueryModifier

func NewQueryModifier(maxRowLimit int) *QueryModifier

NewQueryModifier creates a new query modifier.

func (*QueryModifier) AddRowLimit

func (qm *QueryModifier) AddRowLimit(query string) (string, error)

AddRowLimit adds a LIMIT clause to a query if it doesn't already have one.

type QueryValidator

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

QueryValidator validates SQL queries for security purposes.

func NewQueryValidator

func NewQueryValidator(allowedKeywords, blockedKeywords []string) *QueryValidator

NewQueryValidator creates a new query validator with custom allowed/blocked keywords.

func (*QueryValidator) ValidateQuery

func (qv *QueryValidator) ValidateQuery(query string) error

ValidateQuery validates if a SQL query is safe to execute. Uses sqlparser for AST-based analysis to detect dangerous operations.

Jump to

Keyboard shortcuts

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