|
Miloslav Trmač January 2023
NAMEcontainers-sigstore-signing-params.yaml - syntax for the sigstore signing parameter file DESCRIPTIONSigstore signing parameter files are used to store options that may be required to create sigstore signatures. There is no default location for these files; they are user-managed, and used as inputs to a container image signing operation, e.g. skopeo copy --sign-by-sigstore=param-file.yaml or podman push --sign-by-sigstore=param-file.yaml . FORMATSigstore signing parameter files use YAML. Many parameters are optional, but the file must specify enough to create a signature; in particular either a private key, or Fulcio. Signing with Private Keys
Create a signature using a private key at path.
Read the passphrase required to use privateKeyFile from
passphrasePath.
Signing with Fulcio-generated CertificatesInstead of a static private key, the signing process generates a short-lived key pair and requests a Fulcio server to issue a certificate for that key pair, based on the user authenticating to an OpenID Connect provider. To specify Fulcio, include a fulcio sub-object with one or more of the following keys. In addition, a Rekor server must be specified as well.
Required. URL of the Fulcio server to use.
Required. Specifies how to obtain the necessary OpenID Connect credential. interactive opens a web browser on the same machine, or if
that is not possible,
deviceGrant uses a device authorization grant flow (RFC
8628).
staticToken provides a pre-existing OpenID Connect “ID token”, which must have been obtained separately.
Required for oidcMode: interactive or deviceGrant. URL of an OpenID Connect issuer server to authenticate with.
Used for oidcMode: interactive or deviceGrant
to identify the client when contacting the issuer.
Used for oidcMode: interactive or deviceGrant
to authenticate the client when contacting the issuer.
Required for oidcMode: staticToken.
Recording the Signature to a Rekor Transparency ServerThis can be combined with either a private key or Fulcio. It is, practically speaking, required for Fulcio; it is optional when a static private key is used, but necessary for interoperability with the default configuration of cosign.
URL of the Rekor server to use. EXAMPLESSign Using a Pre-existing Private KeyUses the ”community infrastructure” Rekor server. privateKeyFile: "/home/user/sigstore/private-key.key" privateKeyPassphraseFile: "/mnt/user/sigstore-private-key" rekorURL: "https://rekor.sigstore.dev" Sign Using a Fulcio-Issued CertificateUses the ”community infrastructure” Fulcio and Rekor server, and the Dex OIDC issuer which delegates to other major issuers like Google and GitHub. Other configurations will very likely need to also provide an OIDC client secret. fulcio: SEE ALSOskopeo(1), podman(1)
|