Skip to content

OCI 1.1 referrers API in the container handler #144

@andrew

Description

@andrew

The container handler at internal/handler/container.go currently serves /v2/, blobs, manifests, and tag lists. It doesn't handle GET /v2/{name}/referrers/{digest} or manifest pushes that carry a subject field, which means tools like cosign attach sbom, oras attach, and notation sign can't store or discover SBOMs, signatures, or attestations through the proxy.

For a pull-through cache the minimum is proxying GET /v2/{name}/referrers/{digest} to upstream and caching the returned index, plus passing through the OCI-Subject header on manifest responses so clients know the registry supports it. If the proxy ever accepts pushes it would also need to accept manifests with a subject and update the referrers index (or fall back to the _referrers tag scheme for upstreams that don't support the API).

Artifactory added this in 7.90.1 and it's the standard way SBOMs travel with container images now, so without it the proxy silently drops supply-chain metadata that the upstream registry has.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions