What happened:
We always prefix the .critical.identity.docker-reference signature entry for our root images with /kubernetes:
> cosign verify registry.k8s.io/kube-apiserver-amd64:v1.28.0-alpha.3 \
--certificate-identity krel-trust@k8s-releng-prod.iam.gserviceaccount.com \
--certificate-oidc-issuer https://accounts.google.com \
| jq -r '.[0].critical.identity."docker-reference"'
…
registry.k8s.io/kubernetes/kube-apiserver-amd64
Notice that registry.k8s.io/kubernetes should be registry.k8s.io.
It's fine for our prefixed images, though:
> cosign verify registry.k8s.io/kubernetes/kube-apiserver-amd64:v1.28.0-alpha.3 \
--certificate-identity krel-trust@k8s-releng-prod.iam.gserviceaccount.com \
--certificate-oidc-issuer https://accounts.google.com \
| jq -r '.[0].critical.identity."docker-reference"'
…
registry.k8s.io/kubernetes/kube-apiserver-amd64
What happened:
We always prefix the
.critical.identity.docker-referencesignature entry for our root images with/kubernetes:Notice that
registry.k8s.io/kubernetesshould beregistry.k8s.io.It's fine for our prefixed images, though: