ClusterTrustBundle v1alpha1
apiVersion: certificates.k8s.io/v1alpha1
import "k8s.io/api/certificates/v1alpha1"
ClusterTrustBundle
ClusterTrustBundle — это контейнер уровня кластера для X.509 корневых сертификатов доверия.
Объекты ClusterTrustBundle считаются доступными для чтения любому авторизованному пользователю в кластере, потому что они могут быть смонтированы под капотом с помощью проекции clusterTrustBundle. Все учетные записи сервисов по умолчанию имеют доступ на чтение к ClusterTrustBundles. Пользователи, имеющие только доступ на уровне пространства имён в кластере, могут читать ClusterTrustBundles, имитируя учетную запись сервиса, к которой у них есть доступ.
Он может быть необязательно связан с определённым распределителем, в этом случае он содержит один допустимый набор корневых сертификатов доверия для этого подписывающего органа. Подписывающие органы могут иметь несколько связанных ClusterTrustBundles; каждый из них — независимый набор корневых сертификатов доверия для этого подписывающего органа. Контроль доступа используется для обеспечения того, чтобы только пользователи с разрешениями на подписывающий орган могли создавать или изменять соответствующий пакет.
apiVersion: certificates.k8s.io/v1alpha1
kind: ClusterTrustBundle
-
metadata (ObjectMeta)
metadata содержит метаданные объекта.
-
spec (ClusterTrustBundleSpec), required
spec содержит подписывающий орган (если есть) и корневые сертификаты доверия.
ClusterTrustBundleSpec
ClusterTrustBundleSpec содержит подписывающий орган и корневые сертификаты доверия.
-
trustBundle (string), required
trustBundle содержит отдельные корневые сертификаты доверия для этого пакета в виде PEM-пакета PEM-завёрнутых, DER-форматированных X.509 сертификатов.
Данные должны состоять только из блоков сертификатов PEM, которые парсятся как действительные X.509 сертификаты. Каждый сертификат должен включать расширение базовых ограничений с установленным битом CA. Сервер API отклонит объекты, содержащие дублируемые сертификаты или использующие заголовки блоков PEM.
Пользователи ClusterTrustBundles, включая Kubelet, могут свободно переупорядочивать и удалять дубликаты блоков сертификатов в этом файле в соответствии со своей логикой, а также удалять заголовки блоков PEM и данные между блоками.
-
signerName (string)
signerName указывает связанный подписывающий орган, если таковой имеется.
Для создания или обновления ClusterTrustBundle, устанавливающего signerName, необходимо следующее разрешение на уровне кластера: group=certificates.k8s.io resource=signers resourceName=<имя подписывающего органа> verb=attest.
Если signerName не пустое, то объект ClusterTrustBundle должен быть назван с префиксом имени подписывающего органа (перевод слэшей в двоеточия). Например, для имени подписывающего органа
example.com/foo, допустимые имена объектов ClusterTrustBundle включаютexample.com:foo:abcиexample.com:foo:v1.Если signerName пустое, то имя объекта ClusterTrustBundle не должно иметь такого префикса.
Запросы List/watch для ClusterTrustBundles могут фильтроваться по этому полю с помощью селектора поля
spec.signerName=NAME.
ClusterTrustBundleList
ClusterTrustBundleList — это коллекция объектов ClusterTrustBundle
apiVersion: certificates.k8s.io/v1alpha1
kind: ClusterTrustBundleList
-
metadata (ListMeta)
metadata содержит метаданные списка.
-
items ([]ClusterTrustBundle), required
items — это коллекция объектов ClusterTrustBundle
© 2024 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2024 The Linux Foundation ®. All rights reserved.
https://kubernetes.io/docs/reference/kubernetes-api/authentication-resources/cluster-trust-bundle-v1alpha1/