@@ -506,6 +506,8 @@ signatures. The field offers two subfields:
506
506
- ` .provider` , to specify the verification provider. Only supports `cosign` at present.
507
507
- ` .secretRef.name` , to specify a reference to a Secret in the same namespace as
508
508
the OCIRepository, containing the Cosign public keys of trusted authors.
509
+ - ` .cosignIdentityMatch` , to specify the identity matching criteria if the
510
+ artifact was signed using Cosign keyless signing.
509
511
510
512
` ` ` yaml
511
513
---
@@ -555,6 +557,14 @@ For publicly available OCI artifacts, which are signed using the
555
557
[Cosign Keyless](https://github.com/sigstore/cosign/blob/main/KEYLESS.md) procedure,
556
558
you can enable the verification by omitting the `.verify.secretRef` field.
557
559
560
+ To verify that the subject and the OIDC issuer present in the Fulcio certificate
561
+ you can specify `.spec.verify.cosignIdentityMatch`. It provides two fields :
562
+
563
+ - ` .issuerRegExp` , to sepcify a regexp that matches against the OIDC issuer.
564
+ - ` .subjectRegExp` , to specify a regexp that matches against the identity in
565
+ the certificate.
566
+ Both values should follow the [Go regular expression syntax](https://golang.org/s/re2syntax).
567
+
558
568
Example of verifying artifacts signed by the
559
569
[Cosign GitHub Action](https://github.com/sigstore/cosign-installer) with GitHub OIDC Token :
560
570
@@ -568,6 +578,9 @@ spec:
568
578
url: oci://ghcr.io/stefanprodan/manifests/podinfo
569
579
verify:
570
580
provider: cosign
581
+ cosignIdentityMatch:
582
+ subjectRegExp: "stefanprodan"
583
+ issuerRegExp: "^https://token.actions.githubusercontent.com$"
571
584
` ` `
572
585
573
586
The controller verifies the signatures using the Fulcio root CA and the Rekor
0 commit comments