pub struct SignVerifyConfig {
pub enabled: Option<bool>,
pub certificate_identity: Option<String>,
pub certificate_identity_regexp: Option<String>,
pub certificate_oidc_issuer: Option<String>,
}Expand description
Post-sign verification settings shared by SignConfig and
DockerSignConfig.
After each signature is produced, the sign stage re-verifies it with the
matching verifier (cosign verify-blob for detached cosign signatures,
cosign verify for registry-attached docker signatures, gpg --verify
for gpg) so “the signer exited 0” is upgraded to “the signature actually
verifies”. Everything is derived when possible:
- keyed cosign — the public key is derived once per run via
cosign public-key --key <ref>; nothing to configure. - keyless cosign — the certificate identity/issuer are derived from
the ambient GitHub Actions OIDC environment
(
GITHUB_SERVER_URL/GITHUB_WORKFLOW_REF); outside GitHub Actions, supply them here or verification skips with a named reason. - gpg — verified against the same keyring that signed.
signs:
- cmd: cosign
args: ["sign-blob", "--bundle={{ Signature }}", "--yes", "{{ Artifact }}"]
verify:
certificate_identity: "https://github.com/acme/app/.github/workflows/release.yml@refs/tags/v1.0.0"
certificate_oidc_issuer: "https://token.actions.githubusercontent.com"Fields§
§enabled: Option<bool>Whether to verify each produced signature (default: true).
certificate_identity: Option<String>Exact certificate identity (SAN) expected in a keyless signing
certificate (cosign --certificate-identity). Overrides the value
derived from the GitHub Actions environment.
certificate_identity_regexp: Option<String>Regular expression matched against the keyless certificate identity
(cosign --certificate-identity-regexp). Ignored when
certificate_identity is set.
certificate_oidc_issuer: Option<String>Expected OIDC issuer of the keyless signing certificate
(cosign --certificate-oidc-issuer). Overrides the derived
GitHub Actions issuer.
Implementations§
Source§impl SignVerifyConfig
impl SignVerifyConfig
Sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Whether verification is enabled (default: true).
Trait Implementations§
Source§impl Clone for SignVerifyConfig
impl Clone for SignVerifyConfig
Source§fn clone(&self) -> SignVerifyConfig
fn clone(&self) -> SignVerifyConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SignVerifyConfig
impl Debug for SignVerifyConfig
Source§impl Default for SignVerifyConfig
impl Default for SignVerifyConfig
Source§fn default() -> SignVerifyConfig
fn default() -> SignVerifyConfig
Source§impl<'de> Deserialize<'de> for SignVerifyConfigwhere
SignVerifyConfig: Default,
impl<'de> Deserialize<'de> for SignVerifyConfigwhere
SignVerifyConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for SignVerifyConfig
impl JsonSchema for SignVerifyConfig
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more