Інформація в цьому документі може бути застарілою
Дата оновлення цього документа старіша за оригінал, можливо інформація в ньому застаріла. Радимо ознайомитись з оригіналом англійською для отримання найсвіжіших відомостей: ClusterTrustBundle v1alpha1
ClusterTrustBundle v1alpha1
apiVersion: certificates.k8s.io/v1alpha1
import "k8s.io/api/certificates/v1alpha1"
ClusterTrustBundle
ClusterTrustBundle — це кластерний контейнер для довірчих якорів X.509 (кореневих сертифікатів).
Обʼєкти ClusterTrustBundle вважаються доступними для читання будь-яким автентифікованим користувачем у кластері, оскільки їх можна монтувати в Pod за допомогою проєкції clusterTrustBundle
. Усі службові облікові записи типово мають доступ на читання ClusterTrustBundles. Користувачі, які мають доступ лише на рівні простору імен у кластері, можуть читати ClusterTrustBundles, використовуючи serviceaccount, до якого вони мають доступ.
Він може бути опціонально повʼязаний з певним підписувачем, у такому випадку він містить один дійсний набір довірчих якорів для цього підписувача. Підписувачі можуть мати кілька повʼязаних ClusterTrustBundles; кожен з них є незалежним набором довірчих якорів для цього підписувача. Контроль доступу використовується для забезпечення того, що лише користувачі з правами підписувача можуть створювати або змінювати відповідний набір.
apiVersion: certificates.k8s.io/v1alpha1
kind: ClusterTrustBundle
metadata (ObjectMeta)
metadata містить метадані обʼєкта.
spec (ClusterTrustBundleSpec), обовʼязково
spec містить підписувача (якщо є) та довірчі якорі.
ClusterTrustBundleSpec
ClusterTrustBundleSpec містить інформацію про підписувача та довірчі якорі.
trustBundle (string), обовʼязково
trustBundle містить окремі довірчі якорі X.509 для цього набору, у вигляді PEM-пакета PEM-обгорток, DER-форматованих сертифікатів X.509.
Дані повинні складатися лише з PEM-блоків сертифікатів, які розпізнаються як дійсні сертифікати X.509. Кожен сертифікат повинен містити розширення базових обмежень з встановленою позначкою CA. Сервер API відхилить обʼєкти, що містять дублюючі сертифікати або використовують заголовки блоків PEM.
Користувачі ClusterTrustBundle, включаючи 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 не повинно мати такого префікса.
Запити на список/перегляд ClusterTrustBundle можуть фільтрувати за цим полем, використовуючи селектор поля
spec.signerName=NAME
.
ClusterTrustBundleList
ClusterTrustBundleList — це колекція обʼєктів ClusterTrustBundle.
apiVersion: certificates.k8s.io/v1alpha1
kind: ClusterTrustBundleList
metadata (ListMeta)
metadata містить метадані списку.
items ([]ClusterTrustBundle), обовʼязково
items — це колекція обʼєктів ClusterTrustBundle.
Операції
get
отримати вказаний ClusterTrustBundle
HTTP запит
GET /apis/certificates.k8s.io/v1alpha1/clustertrustbundles/{name}
Параметри
name (в шляху): string, обовʼязково
name of the ClusterTrustBundle
pretty (в запиті): string
Відповідь
200 (ClusterTrustBundle): OK
401: Unauthorized
list
перелік або перегляд обʼєктів типу ClusterTrustBundle
HTTP запит
GET /apis/certificates.k8s.io/v1alpha1/clustertrustbundles
Параметри
allowWatchBookmarks (в запиті): boolean
continue (в запиті): string
fieldSelector (в запиті): string
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
watch (в запиті): boolean
Відповідь
200 (ClusterTrustBundleList): OK
401: Unauthorized
create
створення ClusterTrustBundle
HTTP запит
POST /apis/certificates.k8s.io/v1alpha1/clustertrustbundles
Параметри
body: ClusterTrustBundle, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (ClusterTrustBundle): OK
201 (ClusterTrustBundle): Created
202 (ClusterTrustBundle): Accepted
401: Unauthorized
update
заміна вказаного ClusterTrustBundle
HTTP запит
PUT /apis/certificates.k8s.io/v1alpha1/clustertrustbundles/{name}
Параметри
name (в шляху): string, обовʼязково
name of the ClusterTrustBundle
body: ClusterTrustBundle, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (ClusterTrustBundle): OK
201 (ClusterTrustBundle): Created
401: Unauthorized
patch
часткове оновлення вказаного ClusterTrustBundle
HTTP запит
PATCH /apis/certificates.k8s.io/v1alpha1/clustertrustbundles/{name}
Параметри
name (в шляху): string, обовʼязково
name of the ClusterTrustBundle
body: Patch, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
force (в запиті): boolean
pretty (в запиті): string
Відповідь
200 (ClusterTrustBundle): OK
201 (ClusterTrustBundle): Created
401: Unauthorized
delete
видалення ClusterTrustBundle
HTTP запит
DELETE /apis/certificates.k8s.io/v1alpha1/clustertrustbundles/{name}
Параметри
name (в шляху): string, обовʼязково
name of the ClusterTrustBundle
body: DeleteOptions
dryRun (в запиті): string
gracePeriodSeconds (в запиті): integer
pretty (в запиті): string
propagationPolicy (в запиті): string
Відповідь
200 (Status): OK
202 (Status): Accepted
401: Unauthorized
deletecollection
видалення колекції ClusterTrustBundle
HTTP запит
DELETE /apis/certificates.k8s.io/v1alpha1/clustertrustbundles
Параметри
body: DeleteOptions
continue (в запиті): string
dryRun (в запиті): string
fieldSelector (в запиті): string
gracePeriodSeconds (в запиті): integer
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
propagationPolicy (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
Відповідь
200 (Status): OK
401: Unauthorized