Help us shape the future of Go! Take the 2026 Go Developer Survey

cloud

package
v5.14.0 Latest Latest
Warning

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

Go to latest
Published: Oct 30, 2026 License: Apache-2.0 Imports: 38 Imported by: 3

Documentation

Index

Constants

View Source
const (
	RevocationSubmittedFormattedMessage          = "The revocation for the certificate ID: %q Thumbprint: %q was successfully submitted."
	RevocationFailedFormattedMessage             = "failed to revoke certificate: ID: %q Thumbprint: %q"
	RevocationFailedWithErrorFormattedMessage    = "failed to revoke certificate: ID: %q Thumbprint: %q Error: %w"
	RevocationApprovalPendingFormattedMessage    = "The revocation for the certificate ID: %q Thumbprint: %q is pending for approval."
	RevocationRejectedFormattedMessage           = "The revocation for the certificate ID: %q Thumbprint: %q was rejected."
	RevocationRejectedWithReasonFormattedMessage = "The revocation for the certificate ID: %q Thumbprint: %q was rejected. Reason: %s."
)

Variables

RevocationReasonsMap maps *certificate.RevocationRequest.Reason to ca-operations reasons

Functions

func ConvertZipBytesToPem

func ConvertZipBytesToPem(dataByte []byte, rootFirst bool) (*certificate.PEMCollection, error)

func GetGCMCertificateScope added in v5.10.1

func GetGCMCertificateScope(scope domain.GCMCertificateScope) *cloudproviders.GCMCertificateScope

func Load32KeyByte

func Load32KeyByte(keyBytes []byte) (*[32]byte, error)

func PolicyExist

func PolicyExist(policyName string, c *Connector) (bool, error)

Types

type ApplicationDetails

type ApplicationDetails struct {
	ApplicationId             string               `json:"id,omitempty"`
	CitAliasToIdMap           map[string]string    `json:"certificateIssuingTemplateAliasIdMap,omitempty"`
	CompanyId                 string               `json:"companyId,omitempty"`
	Name                      string               `json:"name,omitempty"`
	Description               string               `json:"description,omitempty"`
	OwnerIdType               []policy.OwnerIdType `json:"ownerIdsAndTypes,omitempty"`
	InternalFqDns             []string             `json:"internalFqDns,omitempty"`
	ExternalIpRanges          []string             `json:"externalIpRanges,omitempty"`
	InternalIpRanges          []string             `json:"internalIpRanges,omitempty"`
	InternalPorts             []string             `json:"internalPorts,omitempty"`
	FullyQualifiedDomainNames []string             `json:"fullyQualifiedDomainNames,omitempty"`
	IpRanges                  []string             `json:"ipRanges,omitempty"`
	Ports                     []string             `json:"ports,omitempty"`
	FqDns                     []string             `json:"fqDns,omitempty"`
}

type Certificate

type Certificate struct {
	Id                            string              `json:"id"`
	ManagedCertificateId          string              `json:"managedCertificateId"`
	CertificateRequestId          string              `json:"certificateRequestId"`
	SubjectCN                     []string            `json:"subjectCN"`
	SubjectAlternativeNamesByType map[string][]string `json:"subjectAlternativeNamesByType"`
	SerialNumber                  string              `json:"serialNumber"`
	Fingerprint                   string              `json:"fingerprint"`
	ValidityStart                 string              `json:"validityStart"`
	ValidityEnd                   string              `json:"validityEnd"`
	ApplicationIds                []string            `json:"applicationIds"`
}

func (Certificate) ToCertificateInfo

func (c Certificate) ToCertificateInfo() certificate.CertificateInfo

type CertificateSearchResponse

type CertificateSearchResponse struct {
	Count        int           `json:"count"`
	Certificates []Certificate `json:"certificates"`
}

func ParseCertificateSearchResponse

func ParseCertificateSearchResponse(httpStatusCode int, body []byte) (searchResult *CertificateSearchResponse, err error)

type CertificateStatusErrorInformation

type CertificateStatusErrorInformation struct {
	Type    string   `json:"type,omitempty"`
	Code    int      `json:"code,omitempty"`
	Message string   `json:"message,omitempty"`
	Args    []string `json:"args,omitempty"`
}

type CertificateTemplates

type CertificateTemplates struct {
	CertificateTemplates []certificateTemplate `json:"certificateIssuingTemplates"`
}

type CloudKeystoreProvisioningResult added in v5.7.0

type CloudKeystoreProvisioningResult struct {
	CloudProviderCertificateID string `json:"cloudProviderCertificateId"`
	CloudCertificateName       string `json:"cloudProviderCertificateName"`
	CloudCertificateVersion    string `json:"cloudProviderCertificateVersion"`
	MachineIdentityActionType  string `json:"machineIdentityActionType"`
	MachineIdentityId          string `json:"machineIdentityId"`
	Error                      error  `json:"error"`
	ErrorMessage               string `json:"message"`
	StatusCode                 int    `json:"statusCode"`
}

type Connector

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

Connector contains the base data needed to communicate with the CyberArk Certificate Manager, SaaS servers

func NewConnector

func NewConnector(url string, zone string, verbose bool, trust *x509.CertPool) (*Connector, error)

NewConnector creates a new Connector object used to communicate with CyberArk Certificate Manager, SaaS

func (*Connector) Authenticate

func (c *Connector) Authenticate(auth *endpoint.Authentication) error

Authenticate authenticates the user with CyberArk Certificate Manager, SaaS using the provided API Key

func (*Connector) CreateAPIUserAccount

func (c *Connector) CreateAPIUserAccount(userName string, password string) (int, *userDetails, error)

func (*Connector) CreateUserAccount

func (c *Connector) CreateUserAccount(userAccount *userAccount) (int, *userDetails, error)

func (*Connector) DeleteMachineIdentity added in v5.7.0

func (c *Connector) DeleteMachineIdentity(machineIdentityID string) (bool, error)

func (*Connector) GenerateRequest

func (c *Connector) GenerateRequest(config *endpoint.ZoneConfiguration, req *certificate.Request) (err error)

GenerateRequest generates a CertificateRequest based on the zone configuration, and returns the request along with the private key.

func (*Connector) GetAccessToken added in v5.6.0

func (c *Connector) GetAccessToken(auth *endpoint.Authentication) (*TLSPCAccessTokenResponse, error)

func (*Connector) GetCloudKeystore added in v5.7.0

func (c *Connector) GetCloudKeystore(request domain.GetCloudKeystoreRequest) (*domain.CloudKeystore, error)

func (*Connector) GetCloudProvider added in v5.7.0

func (c *Connector) GetCloudProvider(request domain.GetCloudProviderRequest) (*domain.CloudProvider, error)

func (*Connector) GetMachineIdentity added in v5.7.0

func (*Connector) GetPolicy

func (c *Connector) GetPolicy(name string) (*policy.PolicySpecification, error)

func (*Connector) GetPolicyWithRegex

func (c *Connector) GetPolicyWithRegex(name string) (*policy.PolicySpecification, error)

func (*Connector) GetType

func (c *Connector) GetType() endpoint.ConnectorType

func (*Connector) GetZonesByParent

func (c *Connector) GetZonesByParent(parent string) ([]string, error)

GetZonesByParent returns a list of valid zones for a CyberArk Certificate Manager, SaaS application specified by parent

func (*Connector) ImportCertificate

func (c *Connector) ImportCertificate(req *certificate.ImportRequest) (*certificate.ImportResponse, error)

func (*Connector) IsCSRServiceGenerated

func (c *Connector) IsCSRServiceGenerated(req *certificate.Request) (bool, error)

func (*Connector) ListCertificates

func (c *Connector) ListCertificates(filter endpoint.Filter) ([]certificate.CertificateInfo, error)

func (*Connector) Ping

func (c *Connector) Ping() (err error)

Ping attempts to connect to the CyberArk Certificate Manager, SaaS API and returns an error if it cannot

func (*Connector) ProvisionCertificate added in v5.7.0

func (c *Connector) ProvisionCertificate(req *domain.ProvisioningRequest, options *domain.ProvisioningOptions) (*domain.ProvisioningMetadata, error)

func (*Connector) ProvisionCertificateToMachineIdentity added in v5.7.0

func (c *Connector) ProvisionCertificateToMachineIdentity(req domain.ProvisioningRequest) (*domain.ProvisioningMetadata, error)

func (*Connector) ReadPolicyConfiguration

func (c *Connector) ReadPolicyConfiguration() (policy *endpoint.Policy, err error)

func (*Connector) ReadZoneConfiguration

func (c *Connector) ReadZoneConfiguration() (config *endpoint.ZoneConfiguration, err error)

ReadZoneConfiguration reads the Zone information needed for generating and requesting a certificate from CyberArk Certificate Manager, SaaS

func (*Connector) RenewCertificate

func (c *Connector) RenewCertificate(renewReq *certificate.RenewalRequest) (requestID string, err error)

RenewCertificate attempts to renew the certificate

func (*Connector) RequestCertificate

func (c *Connector) RequestCertificate(req *certificate.Request) (requestID string, err error)

RequestCertificate submits the CSR to the CyberArk Certificate Manager, SaaS API for processing

func (*Connector) RequestSSHCertificate

func (c *Connector) RequestSSHCertificate(_ *certificate.SshCertRequest) (response *certificate.SshCertificateObject, err error)

func (*Connector) ResetCertificate

func (c *Connector) ResetCertificate(_ *certificate.Request, _ bool) (err error)

ResetCertificate resets the state of a certificate.

func (*Connector) RetireCertificate

func (c *Connector) RetireCertificate(retireReq *certificate.RetireRequest) error

RetireCertificate attempts to retire the certificate

func (*Connector) RetrieveAvailableSSHTemplates

func (c *Connector) RetrieveAvailableSSHTemplates() (response []certificate.SshAvaliableTemplate, err error)

func (*Connector) RetrieveCertificate

func (c *Connector) RetrieveCertificate(req *certificate.Request) (*certificate.PEMCollection, error)

RetrieveCertificate retrieves the certificate for the specified ID

func (*Connector) RetrieveCertificateMetaData

func (c *Connector) RetrieveCertificateMetaData(_ string) (*certificate.CertificateMetaData, error)

func (*Connector) RetrieveSSHCertificate

func (c *Connector) RetrieveSSHCertificate(_ *certificate.SshCertRequest) (response *certificate.SshCertificateObject, err error)

func (*Connector) RetrieveSshConfig

func (*Connector) RetrieveSystemVersion

func (c *Connector) RetrieveSystemVersion() (response string, err error)

func (*Connector) RevokeCertificate

RevokeCertificate attempts to revoke the certificate

func (*Connector) SearchCertificate

func (c *Connector) SearchCertificate(zone string, cn string, sans *certificate.Sans, certMinTimeLeft time.Duration) (certificateInfo *certificate.CertificateInfo, err error)

func (*Connector) SearchCertificates

func (*Connector) SetHTTPClient

func (c *Connector) SetHTTPClient(client *http.Client)

func (*Connector) SetPolicy

func (c *Connector) SetPolicy(name string, ps *policy.PolicySpecification) (string, error)

func (*Connector) SetUserAgent added in v5.6.1

func (c *Connector) SetUserAgent(userAgent string)

func (*Connector) SetZone

func (c *Connector) SetZone(z string)

func (*Connector) SupportSynchronousRequestCertificate added in v5.1.0

func (c *Connector) SupportSynchronousRequestCertificate() bool

SupportSynchronousRequestCertificate returns if the connector support synchronous calls to request a certificate.

func (*Connector) SynchronousRequestCertificate added in v5.1.0

func (c *Connector) SynchronousRequestCertificate(_ *certificate.Request) (certificates *certificate.PEMCollection, err error)

SynchronousRequestCertificate It's not supported yet in CyberArk Certificate Manager, SaaS

func (*Connector) WriteLog

func (c *Connector) WriteLog(_ *endpoint.LogRequest) (err error)

WriteLog Custom Logging not currently supported by VaaS

type CsrAttributes

type CsrAttributes struct {
	CommonName                    *string                        `json:"commonName,omitempty"`
	Organization                  *string                        `json:"organization,omitempty"`
	OrganizationalUnits           []string                       `json:"organizationalUnits,omitempty"`
	Locality                      *string                        `json:"locality,omitempty"`
	State                         *string                        `json:"state,omitempty"`
	Country                       *string                        `json:"country,omitempty"`
	SubjectAlternativeNamesByType *SubjectAlternativeNamesByType `json:"subjectAlternativeNamesByType,omitempty"`
	KeyTypeParameters             *KeyTypeParameters             `json:"keyTypeParameters,omitempty"`
}

type EdgeEncryptionKey

type EdgeEncryptionKey struct {
	Key string `json:"key,omitempty"`
}

type Expression

type Expression struct {
	Operator Operator  `json:"operator,omitempty"`
	Operands []Operand `json:"operands,omitempty"`
}

type Field

type Field string

type KeyStoreRequest

type KeyStoreRequest struct {
	ExportFormat                  string `json:"exportFormat,omitempty"`
	EncryptedPrivateKeyPassphrase string `json:"encryptedPrivateKeyPassphrase"`
	EncryptedKeystorePassphrase   string `json:"encryptedKeystorePassphrase"`
	CertificateLabel              string `json:"certificateLabel"`
}

type KeyTypeParameters

type KeyTypeParameters struct {
	KeyType   string  `json:"keyType,omitempty"`
	KeyLength *int    `json:"keyLength,omitempty"`
	KeyCurve  *string `json:"keyCurve,omitempty"`
}

type Operand

type Operand struct {
	Field    Field       `json:"field"`
	Operator Operator    `json:"operator"`
	Value    interface{} `json:"value,omitempty"`
	Values   interface{} `json:"values,omitempty"`
}

type Operator

type Operator string
const (
	EQ    Operator = "EQ"
	FIND  Operator = "FIND"
	GT    Operator = "GT"
	GTE   Operator = "GTE"
	IN    Operator = "IN"
	LT    Operator = "LT"
	LTE   Operator = "LTE"
	MATCH Operator = "MATCH"
	AND   Operator = "AND"
)

type OwnerType

type OwnerType int64
const (
	UserType OwnerType = iota
	TeamType
)

func (OwnerType) String

func (o OwnerType) String() string

type Paging

type Paging struct {
	PageNumber int `json:"pageNumber"`
	PageSize   int `json:"pageSize"`
}

type RevocationRequestResponseCloud added in v5.11.1

type RevocationRequestResponseCloud struct {
	ID              string
	Thumbprint      string
	Status          string //The possible values are SUBMITTED, FAILED, PENDING_APPROVAL, PENDING_FINAL_APPROVAL, REJECTED_APPROVAL
	RejectionReason string
	Error           error
}

func (*RevocationRequestResponseCloud) ToLog added in v5.11.1

func (r *RevocationRequestResponseCloud) ToLog(logger *log.Logger) error

type SearchRequest

type SearchRequest struct {
	Expression *Expression  `json:"expression"`
	Ordering   *interface{} `json:"ordering,omitempty"`
	Paging     *Paging      `json:"paging,omitempty"`
}

type SubjectAlternativeNamesByType

type SubjectAlternativeNamesByType struct {
	DnsNames                   []string `json:"dnsNames,omitempty"`
	IpAddresses                []string `json:"ipAddresses,omitempty"`
	Rfc822Names                []string `json:"rfc822Names,omitempty"`
	UniformResourceIdentifiers []string `json:"uniformResourceIdentifiers,omitempty"`
}

type TLSPCAccessTokenResponse added in v5.6.0

type TLSPCAccessTokenResponse struct {
	AccessToken string `json:"access_token"`
	TokenType   string `json:"token_type"`
	ExpiresIn   int64  `json:"expires_in"`
	Scope       string `json:"scope,omitempty"`
}

type VenafiCertificate added in v5.7.0

type VenafiCertificate struct {
	ID                   string    `json:"id,omitempty"`
	CertificateStatus    string    `json:"certificateStatus,omitempty"`
	CertificateRequestId string    `json:"certificateRequestId,omitempty"`
	DekHash              string    `json:"dekHash,omitempty"`
	Fingerprint          string    `json:"fingerprint,omitempty"`
	CertificateSource    string    `json:"certificateSource,omitempty"`
	ValidityEnd          time.Time `json:"validityEnd"`
}

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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