security

package
v0.2.2 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type PluginMetrics

type PluginMetrics struct {
	MemoryUsageMB   float64
	CPUUsagePercent float64
	LoadTime        time.Duration
	InitTime        time.Duration
	LastAccess      time.Time
}

PluginMetrics holds resource metrics for a plugin

type ResourceMonitor

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

ResourceMonitor monitors plugin resource usage

func NewResourceMonitor

func NewResourceMonitor(cfg *config.PerformanceConfig) *ResourceMonitor

NewResourceMonitor creates a new resource monitor

func (*ResourceMonitor) CheckResourceLimits

func (rm *ResourceMonitor) CheckResourceLimits(pluginName string) error

CheckResourceLimits validates if plugin can be loaded based on resource limits

func (*ResourceMonitor) Cleanup

func (rm *ResourceMonitor) Cleanup(pluginName string)

Cleanup removes metrics for unloaded plugins

func (*ResourceMonitor) GetAllMetrics

func (rm *ResourceMonitor) GetAllMetrics() map[string]*PluginMetrics

GetAllMetrics returns all plugin metrics

func (*ResourceMonitor) GetPluginMetrics

func (rm *ResourceMonitor) GetPluginMetrics(pluginName string) *PluginMetrics

GetPluginMetrics returns metrics for a specific plugin

func (*ResourceMonitor) RecordPluginMetrics

func (rm *ResourceMonitor) RecordPluginMetrics(pluginName string, metrics *PluginMetrics)

RecordPluginMetrics records resource usage for a plugin

type Sandbox

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

Sandbox provides security controls for extension loading

func NewSandbox

func NewSandbox(cfg *config.SecurityConfig) *Sandbox

NewSandbox creates a new sandbox instance

func (*Sandbox) ValidatePluginPath

func (s *Sandbox) ValidatePluginPath(path string) error

ValidatePluginPath checks if plugin path is allowed

func (*Sandbox) ValidatePluginSignature

func (s *Sandbox) ValidatePluginSignature(path string) error

ValidatePluginSignature checks plugin signature if required

func (*Sandbox) ValidatePluginSource

func (s *Sandbox) ValidatePluginSource(source string) error

ValidatePluginSource checks if plugin source is trusted

Jump to

Keyboard shortcuts

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