bless

package
v1.7.0 Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2023 License: MIT Imports: 12 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Certificate added in v1.0.1

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

func (*Certificate) MarshalJSON added in v1.0.1

func (c *Certificate) MarshalJSON() ([]byte, error)

func (*Certificate) UnmarshalJSON added in v1.0.1

func (c *Certificate) UnmarshalJSON(data []byte) error

type Identity added in v0.7.0

type Identity struct {
	OktaAccessToken *OktaAccessTokenInput `json:"okta_identity,omitempty"`
}

Identity represents different types of identity assertions that we can use

type OIDC added in v0.7.0

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

OIDC is an oidc client

func NewOIDC added in v0.7.0

func NewOIDC(
	awsClient *cziAWS.Client,
	lambdaConfig *config.LambdaConfig,
) *OIDC

NewOIDC returns a new OIDC client

func (*OIDC) RequestCert added in v0.7.0

func (o *OIDC) RequestCert(
	ctx context.Context,
	awsClient *cziAWS.Client,
	signingRequest *SigningRequest,
) (*ssh.Certificate, error)

RequestCert requests a new certificate

type OktaAccessTokenInput added in v0.7.0

type OktaAccessTokenInput struct {
	AccessToken string
}

type PublicKeyToSign added in v0.7.0

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

func NewPublicKeyToSign added in v0.7.0

func NewPublicKeyToSign(key crypto.PublicKey) *PublicKeyToSign

func (*PublicKeyToSign) MarshalJSON added in v0.7.0

func (p *PublicKeyToSign) MarshalJSON() ([]byte, error)

func (*PublicKeyToSign) UnmarshalJSON added in v0.7.0

func (p *PublicKeyToSign) UnmarshalJSON(data []byte) error

type RemoteUsernames added in v0.7.0

type RemoteUsernames []string

func (RemoteUsernames) List added in v0.7.0

func (ru RemoteUsernames) List() []string

List returns the []string representation of RemoteUsernames

func (RemoteUsernames) MarshalJSON added in v0.7.0

func (ru RemoteUsernames) MarshalJSON() ([]byte, error)

func (RemoteUsernames) String added in v0.7.0

func (ru RemoteUsernames) String() string

String returns the string representation of RemoteUsernames

func (RemoteUsernames) UnmarshalJSON added in v0.7.0

func (ru RemoteUsernames) UnmarshalJSON(data []byte) error

type Response added in v1.0.1

type Response struct {
	Certificate  *Certificate `json:"certificate,omitempty"`
	ErrorType    *string      `json:"errorType,omitempty"`
	ErrorMessage *string      `json:"errorMessage,omitempty"`
}

HACK(el): Temporarily hard-coding this here but should import from ssh-ca-lambda instead

type SigningRequest added in v0.7.0

type SigningRequest struct {
	RemoteUsernames RemoteUsernames  `json:"remote_usernames,omitempty"`
	PublicKeyToSign *PublicKeyToSign `json:"public_key_to_sign,omitempty"`

	// IdentityAssertion used to verify the caller
	Identity Identity `json:"identity,omitempty"`
}

SigningRequest is a request for a certificate TODO(el): copy/paste from ssh-ca-lambda. Use that once open source

Jump to

Keyboard shortcuts

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