Source repo for Docker's Documentation
Go to file
David Lawrence cc0782d3d2 rewriting imports to 'gotuf', adding config to set log level, making
restart/shutdown cleanup connections after timeout, updating godeps
2015-06-11 16:30:25 -07:00
Godeps rewriting imports to 'gotuf', adding config to set log level, making 2015-06-11 16:30:25 -07:00
cmd/vetinari-server rewriting imports to 'gotuf', adding config to set log level, making 2015-06-11 16:30:25 -07:00
config rewriting imports to 'gotuf', adding config to set log level, making 2015-06-11 16:30:25 -07:00
errors adding some basic tests for circleci 2015-04-13 15:27:18 -07:00
fixtures Adding CA fixture 2015-04-27 18:50:07 -07:00
server rewriting imports to 'gotuf', adding config to set log level, making 2015-06-11 16:30:25 -07:00
signer rewriting imports to 'gotuf', adding config to set log level, making 2015-06-11 16:30:25 -07:00
utils rewriting imports to 'gotuf', adding config to set log level, making 2015-06-11 16:30:25 -07:00
version Fixing makefile 2015-04-28 11:22:10 -07:00
.gitignore adding gitignore to ignore binaries and cover profile files (assuming they're calling cover) 2015-04-21 11:43:29 -07:00
Dockerfile public key type canonicalization 2015-04-28 17:28:48 -07:00
Makefile Fixing makefile 2015-04-28 11:22:10 -07:00
README.md rewriting imports to 'gotuf', adding config to set log level, making 2015-06-11 16:30:25 -07:00
ROADMAP.md adding basic roadmap 2015-06-08 16:10:57 -07:00
ca.crt Adding new certs to vetinari 2015-04-27 18:39:31 -07:00
circle.yml upgrading stable go to 1.4.2 2015-04-24 11:43:55 -07:00
docker-compose.yml Changing compose and logging 2015-04-28 22:53:09 -07:00

README.md

Vetinari

Overview

Vetinari manages trust metadata as a complementary service to the registry. It implements all endpoints under the _trust segment of the registry URLs. Vetinari expects to manage TUF metadata and will do validation of one parent level of content for any data uploaded to ensure repositories do not become corrupted. This means either the keys in the root.json file will be used to validate the uploaded role, or the keys in the immediate delegate parent will be used.

Uploading a new root.json will be validated using the same token mechanism present in the registry. A user having write permissions on a repository will be sufficient to permit the uploading of a new root.json.

Timestamping

TUF requires a timestamp file be regularly generated. To achieve any ease of use, it is necessary that Vetinari is responsible for generating the timestamp.json based on the snapshot.json created and uploaded by the repository owner.

It is bad policy to place any signing keys in frontline servers. While Vetinari is capable of supporting this behaviour we recommend using a separate service and server with highly restricted permissions. Rufus is provided as a reference implementation of a remote signer. An implementation that satisfies the gRPC interface defined in Rufus will satisfy Vetinari's requirements.