gcpkms

package
v1.8.9 Latest Latest
Warning

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

Go to latest
Published: Apr 4, 2024 License: Apache-2.0 Imports: 46 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuiltIn

func BuiltIn() catalog.BuiltIn

Types

type Config

type Config struct {
	// File path location where key metadata used by the plugin is persisted.
	KeyMetadataFile string `hcl:"key_metadata_file" json:"key_metadata_file"`

	// File path location to a custom IAM Policy (v3) that will be set to
	// created CryptoKeys.
	KeyPolicyFile string `hcl:"key_policy_file" json:"key_policy_file"`

	// KeyRing is the resource ID of the key ring where the keys managed by this
	// plugin reside, in the format projects/*/locations/*/keyRings/*.
	KeyRing string `hcl:"key_ring" json:"key_ring"`

	// Path to the service account file used to authenticate with the Cloud KMS
	// API. If not specified, the value of the GOOGLE_APPLICATION_CREDENTIALS
	// environment variable is used.
	ServiceAccountFile string `hcl:"service_account_file" json:"service_account_file"`
}

Config provides configuration context for the plugin.

type Plugin

type Plugin struct {
	keymanagerv1.UnsafeKeyManagerServer
	configv1.UnsafeConfigServer
	// contains filtered or unexported fields
}

Plugin is the main representation of this keymanager plugin.

func New

func New() *Plugin

New returns an instantiated plugin.

func (*Plugin) Close

func (p *Plugin) Close() error

func (*Plugin) Configure

Configure sets up the plugin.

func (*Plugin) GenerateKey

GenerateKey creates a key in KMS. If a key already exists in the local storage, it is updated.

func (*Plugin) GetPublicKey

GetPublicKey returns the public key for a given key

func (*Plugin) GetPublicKeys

GetPublicKeys returns the publicKey for all the keys.

func (*Plugin) SetLogger

func (p *Plugin) SetLogger(log hclog.Logger)

SetLogger sets a logger.

func (*Plugin) SignData

SignData creates a digital signature for the data to be signed.

Jump to

Keyboard shortcuts

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