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), обязательный
spec содержит информацию о подписывающем лице (если таковое имеется) и корневых сертификатах доверия.
ClusterTrustBundleSpec
ClusterTrustBundleSpec содержит информацию о подписывающем лице и корневых сертификатах доверия.
-
trustBundle (строка), обязательный
trustBundle содержит отдельные корневые сертификаты доверия для данного пакета в формате PEM-пакета, содержащего PEM-упакованные, DER-форматированные X.509-сертификаты.
Данные должны содержать только блоки сертификатов PEM, которые интерпретируются как допустимые X.509-сертификаты. Каждый сертификат должен включать расширение базовых ограничений с установленным битом CA. Сервер API отклонит объекты, содержащие дублирующие сертификаты или использующие заголовки блоков PEM.
Пользователи ClusterTrustBundles, включая Kubelet, могут свободно переупорядочивать и удалять дублирующие блоки сертификатов в этом файле в соответствии со своей логикой, а также удалять заголовки блоков PEM и данные между блоками.
-
signerName (строка)
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), обязательный
items — это коллекция объектов ClusterTrustBundle
© 2022 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2022 The Linux Foundation ®. All rights reserved.
https://v1-27.docs.kubernetes.io/docs/reference/kubernetes-api/authentication-resources/cluster-trust-bundle-v1alpha1/