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
Click to show internal directories.
Click to hide internal directories.