workflowsecret

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2026 License: MIT Imports: 11 Imported by: 5

Documentation

Overview

Package workflowsecret protects sensitive node configuration before workflow persistence.

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrKeyTooShort      = errors.New("workflow secret key must contain at least 32 bytes")
	ErrInvalidReference = errors.New("workflow secret reference is invalid")
)
View Source
var ErrPasswordMustBeString = errors.New("workflow node password must be a string")

Functions

func ProtectWorkflow

func ProtectWorkflow(source *workflow.Workflow, codec *Codec) (*workflow.Workflow, error)

ProtectWorkflow clones a workflow and replaces node config passwords with opaque references.

func ResolveWorkflow

func ResolveWorkflow(source *workflow.Workflow, codec *Codec) (*workflow.Workflow, error)

ResolveWorkflow clones a workflow and resolves secretRefs for in-process validation/execution.

Types

type Codec

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

Codec seals secret values into opaque references bound to one workspace.

func NewCodec

func NewCodec(key string) (*Codec, error)

NewCodec creates a workspace-bound AES-GCM secret codec.

func (*Codec) Open

func (c *Codec) Open(workspace string, reference string) (string, error)

Open resolves one opaque reference for its owning workspace.

func (*Codec) Seal

func (c *Codec) Seal(workspace string, plaintext string) (string, error)

Seal returns an opaque reference. The same reference cannot be opened in another workspace.

Jump to

Keyboard shortcuts

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