Skip to content

Action Cache Verification #368

Description

@sluongng

I want to split this issue from #133 to discuss about improvements to Action Cache verification specifically.

As folks are already aware, Action Cache is a Key-Value store that maps a cache key (i.e, an Action's digest) to an Action Result message, which in turn points to the outputs of said action. Currently, there is no way to validate if the given Key-Value mapping is "correct". To put this differently, clients kinda have to "blindly" trust the content of the Action Cache, and server implementations often secure the Action Cache by enforcing write (UpdateActionCache) permissions to only trusted clients.

As the next major step for remote-api v2, I want to explore the solutions where we can increase the trust for Action Cache entries for multi-tenancy use cases.

Specifically, I want to enable a client to trust and use Action Cache entries created by a third party through verification. There are a few prior arts, such as:

  1. Git commit signing
  1. OCI container signing with SigStore
  1. Nix packaging shared cache
  1. Go Module Checksum database
  1. Google OSS Rebuild

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions