keystore

package
v0.0.0-...-2b00ea1 Latest Latest
Warning

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

Go to latest
Published: Nov 26, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package keystore implements the auth.KeyLookup interface. This implements an in-memory keystore for JWT support.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type KeyStore

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

KeyStore represents an in memory store implementation of the KeyLookup interface for use with the auth package.

func New

func New() *KeyStore

New constructs an empty KeyStore ready for use.

func (*KeyStore) LoadByFileSystem

func (ks *KeyStore) LoadByFileSystem(fsys fs.FS) (int, error)

LoadByFileSystem loads a set of RSA PEM files rooted inside of a directory. The name of each PEM file will be used as the key id. The function also returns the total number of keys in the store. Example: ks.LoadRSAKeys(os.DirFS("/zarf/keys/")) Example: /zarf/keys/54bb2165-71e1-41a6-af3e-7da4a0e1e2c1.pem

func (*KeyStore) LoadByJSON

func (ks *KeyStore) LoadByJSON(document string) (int, error)

LoadByJSON is given a JSON document read with two fields, key and pem (private key).

func (*KeyStore) PrivateKey

func (ks *KeyStore) PrivateKey(kid string) (string, error)

PrivateKey searches the key store for a given kid and returns the private key.

func (*KeyStore) PublicKey

func (ks *KeyStore) PublicKey(kid string) (string, error)

PublicKey searches the key store for a given kid and returns the public key.

Jump to

Keyboard shortcuts

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