keymanager

package
v0.0.0-...-3c7cc97 Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultKeyLen is the default length (in bytes) of the key allocated
	DefaultKeyLen = 16

	// DefaultKeyRotationInterval used by key manager
	DefaultKeyRotationInterval = 12 * time.Hour

	// SubsystemGossip handles gossip protocol between the agents
	SubsystemGossip = "networking:gossip"

	// SubsystemIPSec is overlay network data encryption subsystem
	SubsystemIPSec = "networking:ipsec"

	// DefaultSubsystem is gossip
	DefaultSubsystem = SubsystemGossip
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	ClusterName      string
	Keylen           int
	RotationInterval time.Duration
	Subsystems       []string
}

Config for the keymanager that can be modified

func DefaultConfig

func DefaultConfig() *Config

DefaultConfig provides the default config for keymanager

type KeyManager

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

KeyManager handles key allocation, rotation & distribution

func New

func New(store *store.MemoryStore, config *Config) *KeyManager

New creates an instance of keymanager with the given config

func (*KeyManager) Run

func (k *KeyManager) Run(ctx context.Context) error

Run starts the keymanager, it doesn't return

func (*KeyManager) Stop

func (k *KeyManager) Stop() error

Stop stops the running instance of key manager

Jump to

Keyboard shortcuts

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