signer

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: May 15, 2023 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Fallback

type Fallback struct {
	// The Caddy storage module to load/store the keys. If absent or null, the default storage is loaded.
	StorageRaw json.RawMessage `json:"storage,omitempty" caddy:"namespace=caddy.storage inline_key=module"`
	// contains filtered or unexported fields
}

Fallback signer checks if the RSA, Ed25519, and ECDSA private keys exist in the storage to load. If they're absent, RSA-4096 and Ed25519 keys are generated and stored. The ECDSA key is only loaded, not generated. It is the default signer.

func (Fallback) CaddyModule

func (f Fallback) CaddyModule() caddy.ModuleInfo

This method indicates that the type is a Caddy module. The returned ModuleInfo must have both a name and a constructor function. This method must not have any side-effects.

func (*Fallback) Configure

func (f *Fallback) Configure(ctx session.Context, cfg internalcaddyssh.SignerAdder)

Configure adds the signers/hostkeys to the session

func (*Fallback) Provision

func (f *Fallback) Provision(ctx caddy.Context) error

Provision sets up the Fallback module by loading the storage module then generating/loading the keys as necessary

type File

type File struct {
	// The file system implementation to use. The default is the local disk file system.
	// File system modules used here must implement the fs.FS interface
	FileSystemRaw json.RawMessage `json:"file_system,omitempty" caddy:"namespace=caddy.fs inline_key=backend"`

	// The collection of `signer.Key` resources.
	// Relative paths are appended to the path of the current working directory.
	// The supported PEM types and algorithms are:
	// - RSA PRIVATE KEY: RSA
	// - PRIVATE KEY: RSA, ECDSA, ed25519
	// - EC PRIVATE KEY: ECDSA
	// - DSA PRIVATE KEY: DSA
	// - OPENSSH PRIVATE KEY: RSA, ed25519, ECDSA
	Keys []Key `json:"keys,omitempty"`
	// contains filtered or unexported fields
}

File is a session signer that uses pre-existing keys, which may be backed as files

func (File) CaddyModule

func (s File) CaddyModule() caddy.ModuleInfo

This method indicates that the type is a Caddy module. The returned ModuleInfo must have both a name and a constructor function. This method must not have any side-effects.

func (*File) Configure

func (f *File) Configure(ctx session.Context, cfg internalcaddyssh.SignerAdder)

Configure adds the signers/hostkeys to the session

func (*File) Provision

func (s *File) Provision(ctx caddy.Context) error

Provision loads the keys from the specified URLs

type Key

type Key struct {
	// Source is the identifying path of the key depending on the source. In the case of `file` signer,
	// `Source` refers to the path to the file on disk in relative or absolute path forms. Other signers
	// are free to define the semantics of the field.
	Source string `json:"source,omitempty"`

	// A non-empty value means the key is protected with a passphrase
	Passphrase string `json:"passphrase,omitempty"`
}

Key is a generic holder of the location and passphrase of key (abstract) files

Jump to

Keyboard shortcuts

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