mirror of
https://github.com/docker/docs.git
synced 2026-11-05 00:14:17 +03:00
Include trust pinning flow diagram
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
This commit is contained in:
@@ -123,9 +123,7 @@ func ValidateRoot(certStore trustmanager.X509Store, root *data.Signed, gun strin
|
||||
return &ErrValidationFail{Reason: "failed to validate data with current trusted certificates"}
|
||||
}
|
||||
} else {
|
||||
logrus.Debugf("found no currently valid root certificates for %s", gun)
|
||||
logrus.Debugf("using trust_pinning config to bootstrap trust: %v", trustPinning)
|
||||
|
||||
logrus.Debugf("found no currently valid root certificates for %s, using trust_pinning config to bootstrap trust:", gun, trustPinning)
|
||||
trustPinChecker, err := NewTrustPinChecker(trustPinning, gun)
|
||||
if err != nil {
|
||||
return &ErrValidationFail{Reason: err.Error()}
|
||||
@@ -146,7 +144,7 @@ func ValidateRoot(certStore trustmanager.X509Store, root *data.Signed, gun strin
|
||||
if len(validPinnedCerts) == 0 {
|
||||
return &ErrValidationFail{Reason: "unable to match any certificates to trust_pinning config"}
|
||||
}
|
||||
allValidCerts = validPinnedCerts
|
||||
certsFromRoot = validPinnedCerts
|
||||
}
|
||||
|
||||
// Validate the integrity of the new root (does it have valid signatures)
|
||||
|
||||
BIN
docs/images/trust-pinning-flow.png
Normal file
BIN
docs/images/trust-pinning-flow.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 62 KiB |
@@ -127,10 +127,16 @@ This section is optional, Notary will use TOFU over HTTPS by default and
|
||||
trust certificates in the downloaded root file.
|
||||
|
||||
In this section, one can provide specific certificates to pin to, or a CA
|
||||
to pin to as a root of trust for a GUN.
|
||||
to pin to as a root of trust for a GUN. Multiple sections can be specified,
|
||||
but the pinned certificates will take highest priority for validation, followed
|
||||
by the pinned CA, followed by TOFUS (TOFU over HTTPS). The diagram below
|
||||
describes this validation flow:
|
||||
|
||||
Only one trust pinning option can be used per GUN, and any validation failure
|
||||
will result in a failed bootstrapping of the repo.
|
||||
<center><img src="../images/trust-pinning-flow.png" alt="Trust pinning flow" width="400px"/></center>
|
||||
|
||||
Only one trust pinning option will be used to validate a GUN even if multiple
|
||||
sections are specified, and any validation failure will result in a failed
|
||||
bootstrapping of the repo.
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
|
||||
Reference in New Issue
Block a user