Documentation
¶
Index ¶
Constants ¶
View Source
const ( DefaultRekorURL string = "https://rekor.sigstore.dev" DefaultTLogVerify bool = true DefaultCTLogVerify bool = true DefaultTrustPolicyConfigVersion string = "1.0.0" )
View Source
const GlobalWildcardCharacter = '*'
Variables ¶
View Source
var SupportedTrustPolicyConfigVersions = []string{DefaultTrustPolicyConfigVersion}
Functions ¶
This section is empty.
Types ¶
type Extension ¶
type Extension struct {
SignatureExtension []cosignExtensionList `json:"signatures,omitempty"`
TrustPolicy string `json:"trustPolicy,omitempty"`
}
Extension is the structure for the verifier result extensions contains a list of signature verification results where each entry corresponds to a single signature verified
type KeylessConfig ¶
type KeylessConfig struct {
CTLogVerify *bool `json:"ctLogVerify,omitempty"`
CertificateIdentity string `json:"certificateIdentity,omitempty"`
CertificateIdentityRegExp string `json:"certificateIdentityRegExp,omitempty"`
CertificateOIDCIssuer string `json:"certificateOIDCIssuer,omitempty"`
CertificateOIDCIssuerRegExp string `json:"certificateOIDCIssuerRegExp,omitempty"`
}
type LegacyExtension ¶
type LegacyExtension struct {
SignatureExtension []cosignExtension `json:"signatures,omitempty"`
}
LegacyExtension is the structure for the verifier result extensions used for backwards compatibility with the legacy cosign verifier
type PluginConfig ¶
type PluginConfig struct {
Name string `json:"name"`
Type string `json:"type,omitempty"`
ArtifactTypes string `json:"artifactTypes"`
KeyRef string `json:"key,omitempty"`
RekorURL string `json:"rekorURL,omitempty"`
NestedReferences []string `json:"nestedArtifactTypes,omitempty"`
TrustPolicies []TrustPolicyConfig `json:"trustPolicies,omitempty"`
}
type TrustPolicies ¶
type TrustPolicies struct {
// contains filtered or unexported fields
}
func CreateTrustPolicies ¶
func CreateTrustPolicies(configs []TrustPolicyConfig, verifierName string) (*TrustPolicies, error)
CreateTrustPolicies creates a set of trust policies from the given configuration
func (*TrustPolicies) GetScopedPolicy ¶
func (tps *TrustPolicies) GetScopedPolicy(reference string) (TrustPolicy, error)
GetScopedPolicy returns the policy that applies to the given reference TODO: add link to scopes docs when published
type TrustPolicy ¶
type TrustPolicy interface {
GetName() string
GetKeys(ctx context.Context, namespace string) (map[PKKey]keymanagementprovider.PublicKey, error)
GetScopes() []string
GetCosignOpts(context.Context) (cosign.CheckOpts, error)
}
func CreateTrustPolicy ¶
func CreateTrustPolicy(config TrustPolicyConfig, verifierName string) (TrustPolicy, error)
CreateTrustPolicy creates a trust policy from the given configuration returns an error if the configuration is invalid reads the public keys from the file path
type TrustPolicyConfig ¶
type TrustPolicyConfig struct {
Version string `json:"version"`
Name string `json:"name"`
Scopes []string `json:"scopes"`
Keys []KeyConfig `json:"keys,omitempty"`
Keyless KeylessConfig `json:"keyless,omitempty"`
TLogVerify *bool `json:"tLogVerify,omitempty"`
RekorURL string `json:"rekorURL,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.