首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

客户端配置 | Client configuration (Notary)

本文档适用于希望促进 CLI 交互或指定自定义选项的公证人客户端的高级用户。

公证客户端的配置文件通常驻留在~/.notary/config.json,但可以使用-c--configFile命令行标志指定不同配置文件的路径。

该文件的概述

除了配置文件格式之外,请查看公证人客户端可以使用的可选密码环境变量以便使用。

这是一个完整的客户端配置文件示例; 请点击顶层的 JSON 键以了解更多关于与该键相对应的配置部分:

{
  "trust_dir" : "~/.docker/trust",
  "remote_server": {
    "url": "https://my-notary-server.my-private-registry.com",
    "root_ca": "./fixtures/root-ca.crt",
    "tls_client_cert": "./fixtures/secure.example.com.crt",
    "tls_client_key": "./fixtures/secure.example.com.crt"
  },
  "trust_pinning": {
    "certs": {
      "docker.com/notary": ["49cf5c6404a35fa41d5a5aa2ce539dfee0d7a2176d0da488914a38603b1f4292"]
    }
  }
}

trust_dir 部分(可选)

trust_dir其中的元数据 TUF 和私有密钥将被存储指定的位置(为绝对路径或相对于配置文件的目录的路径)。

这通常是默认的~/.notary,但是指定~/.docker/trust促进与内容信任的互操作性。

请注意,该选项可以用命令行标志覆盖--trustDir

remote_server 部分(可选)

remote_server指定如何连接到公证服务器下载元数据更新和发布元数据的变化。

远程服务器示例:

"remote_server": {
  "url": "https://my-notary-server.my-private-registry.com",
  "root_ca": "./fixtures/root-ca.crt",
  "tls_client_cert": "./fixtures/secure.example.com.crt",
  "tls_client_key": "./fixtures/secure.example.com.crt"
}

参数

需要

描述

网址(url)

没有

公证服务器的URL:默认为该配置选项可以用命令行标志-s或--server。

root_ca

没有

包含根CA的文件的路径,用于验证公证服务器的TLS证书(例如,是否为自签名)。该路径相对于配置文件的目录。该配置选项可以用命令行标志覆盖,该标志--tlscacert将指定相对于公证客户端被调用的当前工作目录的路径。

tls_client_cert

没有

客户端证书的路径,用于与公证服务器进行相互TLS。必须与tls_client_key一起提供或根本不提供。该路径相对于配置文件的目录。该配置选项可以用命令行标志覆盖,该标志--tlscert将指定相对于公证客户端被调用的当前工作目录的路径。

tls_client_key

没有

客户端密钥用于与公证服务器进行相互TLS的路径。必须与tls_client_cert一起提供或根本不提供。该路径相对于配置文件的目录。该配置选项可以用命令行标志覆盖,该标志--tlskey将指定相对于公证客户端被调用的当前工作目录的路径。

trust_pinning 部分(可选)

trust_pinning指定如何引导信任的公证客户的信任集的根目录。

此部分是可选的,默认情况下,公证人将通过 HTTPS 使用 TOFU,并在所下载的根文件中信任证书。

在本节中,可以提供特定的证书以供引脚连接,或者 CA 可以将其作为 GUN 的信任根。可以指定多个部分,但固定证书将以最高优先级进行验证,然后是固定 CA,然后是 TOFUS(通过 HTTPS 的 TOFU)。下图描述了此验证流程:

</img>

即使指定了多个部分,也只会使用一个信任钉住选项来​​验证 GUN,任何验证失败都会导致回购的引导失败。

参数

需要

描述

certs

没有

将GUN映射到要插入的证书ID。两者都是JSON对象中的字符串。

ca

没有

将GUN前缀映射到包含根CA文件的文件路径,用于验证根文件中的证书。该文件可以包含多个根证书,捆绑在单独的PEM块中。该路径相对于配置文件的目录。

disable_tofu

没有

在对集合的根文件进行引导验证时,确定是否在首次使用时使用信任的布尔值。这会默认保持TOFU。

环境变量(可选)

包含签名密钥密码的以下环境变量可以用于帮助公证客户端 CLI 交互。如果提供,这些密码将最初用于签署 TUF 元数据。如果密码不正确,系统将提示您输入正确的密码。

环境变量

描述

NOTARY_ROOT_PASSPHRASE

root / offline密钥短语

NOTARY_TARGETS_PASSPHRASE

目标(在线)密钥密码

NOTARY_SNAPSHOT_PASSPHRASE

快照(在线)密钥密码

NOTARY_DELEGATION_PASSPHRASE

代表团(在线)密钥密码

请注意,如果提供,NOTARY_DELEGATION_PASSPHRASE将尝试为公证人尝试签署的所有代表团角色输入密码。

扫码关注腾讯云开发者

领取腾讯云代金券