Пакет v1 — це версія API v1.
TracingConfigurationЗʼявляється в:
TracingConfiguration надає версійну конфігурацію для клієнтів трасування OpenTelemetry.
| Поле | Опис |
|---|---|
endpointstring |
Точка доступу колектора, до якої цей компонент буде надсилати трейси. Зʼєднання є незахищеним і наразі не підтримує TLS. Рекомендовано не встановлювати, точкою доступу є стандартне значення otlp grpc, localhost:4317. |
samplingRatePerMillionint32 |
SamplingRatePerMillion — це кількість зразків, які потрібно зібрати на мільйон відрізків. Рекомендується не встановлювати. Якщо не встановлено, семплер дотримується частоти дискретизації батьківського відрізка, але в іншому випадку ніколи не виконує дискретизацію. |
AdmissionConfigurationAdmissionConfiguration надає версійовану конфігурацію для контролерів допуску.
| Поле | Опис |
|---|---|
apiVersionstring |
apiserver.config.k8s.io/v1 |
kindstring |
AdmissionConfiguration |
plugins[]AdmissionPluginConfiguration
|
Plugins дозволяє вказувати конфігурацію для кожного втулка контролю допуску. |
AuthenticationConfiguration AuthenticationConfiguration надає версійну конфігурацію для автентифікації.
| Поле | Опис |
|---|---|
apiVersionstring |
apiserver.config.k8s.io/v1 |
kindstring |
AuthenticationConfiguration |
jwt [Обовʼязково][]JWTAuthenticator |
jwt — це список автентифікаторів для автентифікації користувачів Kubernetes за допомогою токенів, сумісних із JWT. Автентифікатор спробує проаналізувати необроблений ідентифікаційний токен і перевірити, чи він підписаний налаштованим емітентом. Відкритий ключ для перевірки підпису виявляється з публічної точки доступу емітента за допомогою виявлення OIDC. Для вхідного токена кожен автентифікатор JWT буде перевірений у порядку, в якому він вказаний у цьому списку. Однак зверніть увагу, що інші автентифікатори можуть працювати до або після автентифікаторів JWT. Конкретне положення автентифікаторів JWT у звʼязках з іншими автентифікаторами не визначено і не є стабільним у різних версіях. Оскільки кожен автентифікатор JWT повинен мати унікальний URL-адресу емітента, максимум один автентифікатор JWT спробує криптографічно перевірити токен. Мінімальний дійсне корисне навантаження JWT повинно містити наступні вимоги: { "iss": "https://issuer.example.com", "aud": ["audience"], "exp": 1234567890, "": "username" } |
anonymous [Обовʼязково]AnonymousAuthConfig |
Якщо присутній, --anonymous-auth не повинен бути встановлений |
AuthorizationConfiguration| Поле | Опис |
|---|---|
apiVersionstring |
apiserver.config.k8s.io/v1 |
kindstring |
AuthorizationConfiguration |
authorizers [Обовʼязково][]AuthorizerConfiguration
|
Авторизатори — це впорядкований список авторизаторів для авторизації запитів. Це схоже на прапорець --authorization-modes kube-apiserver Має бути принаймні один. |
EncryptionConfigurationEncryptionConfiguration зберігає повну конфігурацію для провайдерів шифрування. Він також дозволяє використовувати шаблони для вказання ресурсів, які повинні бути зашифровані. Використовуйте '*.<group>' для шифрування всіх ресурсів у групі або '*.*' для шифрування всіх ресурсів. '*.' можна використовувати для шифрування всіх ресурсів у основній групі. '*.*' зашифрує всі ресурси, навіть користувацькі, які додаються після запуску сервера API. Використання шаблонів, що перекриваються в межах одного списку ресурсів або між кількома записами, не дозволяється, оскільки частина конфігурації буде неефективною. Списки ресурсів обробляються в порядку, причому перші списки мають пріоритет.
Приклад:
kind: EncryptionConfiguration
apiVersion: apiserver.config.k8s.io/v1
resources:
- resources:
- events
providers:
- identity: {} # не шифрувати події, навіть якщо *.* зазначено нижче
- resources:
- secrets
- configmaps
- pandas.awesome.bears.example
providers:
- aescbc:
keys:
- name: key1
secret: c2VjcmV0IGlzIHNlY3VyZQ==
- resources:
- '*.apps'
providers:
- aescbc:
keys:
- name: key2
secret: c2VjcmV0IGlzIHNlY3VyZSwgb3IgaXMgaXQ/Cg==
- resources:
- '*.*'
providers:
- aescbc:
keys:
- name: key3
secret: c2VjcmV0IGlzIHNlY3VyZSwgSSB0aGluaw==
| Поле | Опис |
|---|---|
apiVersionstring |
apiserver.config.k8s.io/v1 |
kindstring |
EncryptionConfiguration |
resources [Обовʼязково][]ResourceConfiguration
|
resources — це список, що містить ресурси та відповідні їм провайдери шифрування. |
TracingConfiguration TracingConfiguration забезпечує версійну конфігурацію для клієнтів трасування.
| Поле | Опис |
|---|---|
apiVersionstring |
apiserver.config.k8s.io/v1 |
kindstring |
TracingConfiguration |
TracingConfiguration [Обовʼязково]TracingConfiguration |
(ЧлениTracingConfiguration вбудовані в цей тип.)
Вбудовує структуру конфігурації трасування конфігурації компонента |
AESConfigurationЗʼявляється в:
AESConfiguration містить конфігурацію API для AES-трансформера.
| Поле | Опис |
|---|---|
keys [Обовʼязково][]Key
|
keys — це список ключів, які використовуються для створення AES-трансформера. Кожен ключ повинен бути 32 байти для AES-CBC та 16, 24 або 32 байти для AES-GCM. |
AdmissionPluginConfigurationЗʼявляється в:
AdmissionPluginConfiguration надає конфігурацію для одного втулка.
| Поле | Опис |
|---|---|
name [Обовʼязково]string
|
Name — це назва контролера допуску. Вона повинна відповідати зареєстрованій назві втулка контролю допуску. |
pathstring
|
Path — це шлях до конфігураційного файлу, який містить конфігурацію втулка |
configurationk8s.io/apimachinery/pkg/runtime.Unknown
|
Configuration — це вбудований конфігураційний обʼєкт, який використовується як конфігурація втулка. Якщо він присутній, то буде використовуватися замість шляху до конфігураційного файлу. |
AnonymousAuthCondition Зʼявляється в:
AnonymousAuthCondition описує умови, за яких слід увімкнути анонімну автентифікацію.
| Поле | Опис |
|---|---|
path [Обовʼязково]string |
Шлях, для якого ввімкнено анонімну автентифікацію. |
AnonymousAuthConfig Зʼявляється в:
AnonymousAuthConfig забезпечує конфігурацію для анонімного автентифікатора.
| Поле | Опис |
|---|---|
enabled [Обовʼязково]bool |
Опис відсутній. |
conditions [Обовʼязково][]AnonymousAuthCondition |
Якщо встановлено, анонімна автентифікація дозволена тільки в тому випадку, якщо запит відповідає одній з умов. |
AudienceMatchPolicyType (Аліас до string)
Зʼявляється в:
AudienceMatchPolicyType — це набір допустимих значень для issuer.audienceMatchPolicy.
AuthorizerConfigurationЗʼявляється в:
| Поле | Опис |
|---|---|
type [Обовʼязково]string
|
Тип відноситься до типу авторизатора "Webhook" підтримується в загальному API сервері. Інші API сервери можуть підтримувати додаткові типи авторизаторів, такі як Node, RBAC, ABAC тощо. |
name [Обовʼязково]string
|
Name використовується для опису веб-хука. Це явно використовується в механізмах моніторингу для метрик. Примітка: Імена мають бути у вигляді міток DNS1123, наприклад |
webhook [Обовʼязково]WebhookConfiguration
|
Webhook визначає конфігурацію для авторизації Webhook. Має бути визначений, якщо Type=Webhook. Не повинно бути визначено, якщо Type!=Webhook |
ClaimMappings Зʼявляється в:
ClaimMappings забезпечує конфігурацію для зіставлення вимог
| Поле | Опис |
|---|---|
username [Обовʼязково]PrefixedClaimOrExpression |
username представляє опцію для атрибуту імені користувача. Значення вимоги повинно бути єдиним рядком. Те саме, що й прапорці --oidc-username-claim та --oidc-username-prefix. Якщо встановлено username.expression, вираз повинен утворювати значення рядка. Якщо username.expression використовує 'claims.email', то 'claims.email_verified' має використовуватися в username.expression або extra[].valueExpression або claimValidationRules[].expression. Прикладом виразу правила перевірки заявки, який відповідає перевірці, що автоматично застосовується, коли username.claim встановлено на 'email', є 'claims.?email_verified.orValue(true) == true'. Явно порівнюючи значення з true, ми дозволяємо перевірці типу бачити, що результат буде булевим, і переконуємося, що небулева заявка email_verified буде виявлена під час виконання. У підході на основі прапорців --oidc-username-claim та --oidc-username-prefix є необовʼязковими. Якщо --oidc-username-claim не встановлено, стандартним значенням є "sub". Для конфігурації автентифікації не існує стандартних значень для claim або prefix. Claim та prefix необхідно встановлювати явно. Для claim, якщо --oidc-username-claim не було встановлено за допомогою підходу на основі прапорців, налаштуйте username.claim="sub" у конфігурації автентифікації. Для prefix: (1) --oidc-username-prefix="-", до імені користувача не було додано префікс. Для такої самої поведінки з використанням конфігурації автентифікації встановіть username.prefix="" (2) --oidc-username-prefix="" і --oidc-username-claim != "email", префікс був "<значення --oidc-issuer-url>#". Для такої самої поведінки з використанням конфігурації автентифікації встановіть username.prefix="#" (3) --oidc-username-prefix="". Для такої самої поведінки з використанням конфігурації автентифікації встановіть username.prefix="" |
groupsPrefixedClaimOrExpression |
groups представляє опцію для атрибуту groups. Значення вимоги повинно бути рядком або масивом рядків. Якщо встановлено groups.claim, необхідно вказати префікс (який може бути порожнім рядком). Якщо встановлено groups.expression, вираз повинен утворювати значення рядка або масиву рядків. Значення "", [], та null трактуються як відсутність відповідності групи. |
uidClaimOrExpression |
uid представляє опцію для атрибуту uid. Claim повинен бути рядком в однині. Якщо встановлено uid.expression, вираз повинен утворювати рядкове значення. |
extra[]ExtraMapping |
extra представляє опцію для додаткового атрибуту. Вираз повинен створювати значення рядка або масиву рядків. Якщо значення порожнє, додаткове зіставлення не буде присутнє. жорстко закодований ключ / значення extra
жорстко закодований ключ, значення копіюється зі значення claim
hжорстко закодований ключ, значення походить від значення claim
|
ClaimOrExpression Зʼявляється в:
ClaimOrExpression забезпечує конфігурацію для окремого твердження або виразу.
| Поле | Опис |
|---|---|
claimstring |
claim — це JWT-вимога, яку потрібно використовувати. Необхідно встановити або claim, або expression. Взаємовиключні з expression. |
expressionstring |
expression представляє вираз, який буде обчислюватися CEL. Вирази CEL мають доступ до вмісту вимог токенів, організованих у змінну CEL:
Документація CEL: https://kubernetes.io/docs/reference/using-api/cel/ Взаємовиключне з claim. |
ClaimValidationRule Зʼявляється в:
ClaimValidationRule забезпечує конфігурацію для правила перевірки однієї вимоги.
| Поле | Опис |
|---|---|
claimstring |
claim — це назва потрібної вимоги. Те саме, що й прапорець --oidc-required-claim. Підтримуються лише ключі вимог типу string. Взаємовиключні з expression та message. |
requiredValuestring |
requiredValue — це значення потрібної вимоги. Те саме, що й прапорець --oidc-required-claim. Підтримуються лише значення вимог у вигляді string. Якщо вимога встановлена, а requiredValue не встановлено, вимога має бути присутня із значенням, встановленим як порожній рядок. Взаємовиключне з expression та message. |
expressionstring |
expression представляє вираз, який буде оцінений CEL. Повинен повертати логічне значення. Вирази CEL мають доступ до вмісту вимог токенів, організованих у змінні CEL:
Документація CEL: https://kubernetes.io/docs/reference/using-api/cel/ Mutually exclusive with claim and requiredValue. |
messagestring |
message налаштовує повідомлення про помилку, яке повертається, коли вираз повертає значення false. message є літеральним рядком. Взаємовиключний з claim та requiredValue. |
EgressSelectorType (Аліас до string)
Зʼявляється в:
EgressSelectorType — це індикатор, який вказує, який селектор egress слід використовувати для надсилання трафіку.
ExtraMapping Зʼявляється в:
ExtraMapping забезпечує конфігурацію для одного додаткового зіставлення.
| Поле | Опис |
|---|---|
key [Обовʼязково]string |
key — це рядок, який використовується як додатковий атрибут key. key повинен бути префіксом домену (наприклад, example.org/foo). Усі символи перед першим "/" повинні бути дійсним піддоменом, як визначено в RFC 1123. Усі символи після першого "/" повинні бути дійсними символами шляху HTTP, як визначено в RFC 3986. key повинен бути в нижньому регістрі. Повинен бути унікальним. |
valueExpression [Обовʼязково]string |
valueExpression — це вираз CEL для отримання додаткового значення атрибута. valueExpression повинен створювати значення типу рядок або масив рядків. Значення "", [] і null розглядаються як відсутність додаткового зіставлення. Порожні значення рядків, що містяться в масиві рядків, відфільтровуються. Вирази CEL мають доступ до вмісту вимог токенів, організованих у змінну CEL:
Документація CEL: https://kubernetes.io/docs/reference/using-api/cel/ |
IdentityConfigurationЗʼявляється в:
IdentityConfiguration — це порожня структура, яка дозволяє використовувати трансформер ідентичності в конфігурації провайдера.
IssuerЗʼявляється в:
Issuer надає конфігурацію для конкретних налаштувань зовнішнього постачальника.
| Поле | Опис |
|---|---|
url [Обовʼязково]string |
url вказує на URL-адресу емітента у форматі https://url або https://url/path. Вона повинна відповідати запиту "iss" у представленому JWT та емітенту, отриманому з виявлення. Те саме значення, що й прапорець --oidc-issuer-url. Інформація про виявлення отримується з "{url}/.well-known/openid-configuration", якщо вона не замінена discoveryURL. Повинна бути унікальною для всіх автентифікаторів JWT. Зверніть увагу, що конфігурація селектору egress не використовується для цього мережевого зʼєднання. |
discoveryURLstring |
discoveryURL, якщо вказано, замінює URL-адресу, яка використовується для отримання інформації про виявлення, замість використання "{url}/.well-known/openid-configuration". Використовується точне вказане значення, тому "/.well-known/openid-configuration" має бути включено в discoveryURL, якщо це необхідно. Поле "issuer" у отриманій інформації про виявлення повинно відповідати полю "issuer.url" в AuthenticationConfiguration і буде використовуватися для перевірки заявки "iss" у представленому JWT. Це стосується сценаріїв, коли відомі та jwks точки доступу розміщені в іншому місці, ніж емітент (наприклад, локально в кластері). Приклад: URL-адреса виявлення, яка відкривається за допомогою сервісу Kubernetes 'oidc' в просторі імен 'oidc-namespace', а інформація про виявлення доступна за адресою '/.well-known/openid-configuration'. discoveryURL: "https://oidc.oidc-namespace/.well-known/openid-configuration" certificateAuthority використовується для перевірки зʼєднання TLS, а імʼя хосту в сертифікаті leaf має бути встановлено на 'oidc.oidc-namespace'. curl https://oidc.oidc-namespace/.well-known/openid-configuration (.discoveryURL field) { issuer: "https://oidc.example.com" (.url field) } discoveryURL повинен відрізнятися від url. Повинен бути унікальним для всіх автентифікаторів JWT. Зверніть увагу, що конфігурація селектора egress не використовується для цього мережевого зʼєднання. |
certificateAuthoritystring |
certificateAuthority містить сертифікати центру сертифікації, закодовані у форматі PEM, які використовуються для перевірки зʼєднання під час отримання інформації про виявлення. Якщо не встановлено, використовується системний верифікатор. Те саме значення, що й вміст файлу, на який посилається прапорець --oidc-ca-file. |
audiences [Обовʼязково][]string |
audiences — набір дозволених аудиторій, яким має бути видано JWT. Принаймні один із записів має відповідати вимозі "aud" у представлених JWT. Те саме значення, що й прапорець --oidc-client-id (хоча це поле підтримує масив). Повинно бути не порожнім. |
audienceMatchPolicyAudienceMatchPolicyType |
audienceMatchPolicy визначає, як поле "audiences" використовується для зіставлення з вимогою "aud" у представленому JWT. Допустимі значення:
Для більш детальної перевірки аудиторії використовуйте claimValidationRules. Приклад: claimValidationRule[].expression: 'sets.equivalent(claims.aud, ["bar", "foo", "baz"])' для вимагання точної відповідності. |
egressSelectorTypeEgressSelectorType |
egressSelectorType — це індикатор, який вказує, який селектор egress слід використовувати для надсилання всього трафіку, що має звʼязки з цим емітентом (виявлення, JWKS, розподілені вимоги тощо). Якщо не вказано, номеронабирач користувача не використовується. Якщо вказано, допустимими варіантами є "controlplane" та "cluster". Вони відповідають повʼязаним значенням у --egress-selector-config-file.
|
JWTAuthenticator Зʼявляється в:
JWTAuthenticator забезпечує конфігурацію для окремого автентифікатора JWT.
| Поле | Опис |
|---|---|
issuer [Обовʼязково]Issuer |
issuer містить основні параметри підключення постачальника OIDC. |
claimValidationRules[]ClaimValidationRule |
claimValidationRules — це правила, які застосовуються для перевірки вимог токенів з метою автентифікації користувачів. |
claimMappings [Обовʼязково]ClaimMappings |
claimMappings вказує, що вимоги токена повинні розглядатися як атрибути користувача. |
userValidationRules[]UserValidationRule |
userValidationRules — це правила, які застосовуються до кінцевого користувача перед завершенням автентифікації. Вони дозволяють застосовувати інваріанти до вхідних ідентифікаторів, наприклад, запобігати використанню префікса системи, який зазвичай використовується компонентами Kubernetes. Правила перевірки обʼєднуються за допомогою логічного оператора AND і повинні повертати значення true, щоб перевірка пройшла успішно. |
KMSConfigurationЗʼявляється в:
KMSConfiguration містить назву, розмір кешу та шлях до конфігураційного файлу для трансформера конвертів на основі KMS.
| Поле | Опис |
|---|---|
apiVersionstring
|
apiVersion KeyManagementService |
name [Обовʼязково]string
|
name — це назва втулка KMS,який буде використовуватися. |
cachesizeint32
|
cachesize — це максимальна кількість секретів, які кешуються в памʼяті. Стандартне значення — 1000. Встановіть негативне значення, щоб вимкнути кешування. Це поле дозволено лише для провайдерів KMS v1. |
endpoint [Обовʼязково]string
|
endpoint — це адреса прослуховувння gRPC сервера, наприклад, "unix:///var/run/kms-provider.sock". |
timeoutmeta/v1.Duration
|
timeout для gRPC викликів до kms-втулка (наприклад, 5 секунд). Стандатне значення — 3 секунди. |
KeyЗʼявляється в:
Key містить імʼя та секрет наданого ключа для трансформера.
| Поле | Опис |
|---|---|
name [Обовʼязково]string
|
name — це імʼя ключа, який буде використовуватися при збереженні даних на диск. |
secret [Обовʼязково]string
|
secret — це фактичний ключ, закодований в base64. |
PrefixedClaimOrExpressionЗʼявляється в:
PrefixedClaimOrExpression забезпечує конфігурацію для одного префіксованого твердження або виразу.
| Поле | Опис |
|---|---|
claimstring |
claim — це JWT-вимога, яку слід використовувати. Взаємовиключна з expression. |
prefixstring |
prefix додається до значення claim, щоб запобігти конфліктам з наявними іменами. prefix потрібно встановити, якщо встановлено claim, і може бути порожнім рядком. Взаємовиключний з expression. |
expressionstring |
expression представляє вираз, який буде обчислюватися CEL. Вирази CEL мають доступ до вмісту вимог токенів, організованих у змінну CEL:
Документація CEL: https://kubernetes.io/docs/reference/using-api/cel/ Взаємовиключні з claim та prefix. |
ProviderConfigurationЗʼявляється в:
ProviderConfiguration зберігає надану конфігурацію для провайдера шифрування.
| Поле | Опис |
|---|---|
aesgcm [Обовʼязково]AESConfiguration
|
aesgcm — це конфігурація для трансформера AES-GCM. |
aescbc [Обовʼязково]AESConfiguration
|
aescbc — це конфігурація для трансформера AES-CBC. |
secretbox [Обовʼязково]SecretboxConfiguration
|
secretbox — це конфігурація для трансформера на основі Secretbox. |
identity [Обовʼязково]IdentityConfiguration
|
identity — це (порожня) конфігурація для трансформера ідентичності. |
kms [Обовʼязково]KMSConfiguration
|
kms містить назву, розмір кешу та шлях до конфігураційного файлу для трансформера конвертів на основі KMS. |
ResourceConfigurationЗʼявляється в:
ResourceConfiguration зберігає конфігурацію для кожного ресурсу.
| Поле | Опис |
|---|---|
resources [Обовʼязково][]string
|
resources — це список ресурсів Kubernetes, які мають бути зашифровані. Імена ресурсів походять від |
providers [Обовʼязково][]ProviderConfiguration
|
providers — це список трансформерів, які використовуються для читання та запису ресурсів на диск. Наприклад: aesgcm, aescbc, secretbox, identity, kms. |
SecretboxConfigurationЗʼявляється в:
SecretboxConfiguration містить API конфігурацію для трансформера Secretbox.
| Поле | Опис |
|---|---|
keys [Обовʼязково][]Key
|
keys — це список ключів, які використовуються для створення трансформера Secretbox. Кожен ключ повинен бути довжиною 32 байти. |
UserValidationRuleЗʼявляється в:
UserValidationRule забезпечує конфігурацію для окремого правила перевірки інформації про користувача.
| Поле | Опис |
|---|---|
expression [Обовʼязково]string |
expression представляє вираз, який буде оцінений CEL. Повинен повертати true, щоб перевірка пройшла успішно. Вирази CEL мають доступ до вмісту UserInfo, організованого у змінну CEL:
Документація CEL: https://kubernetes.io/docs/reference/using-api/cel/ |
messagestring |
message налаштовує повідомлення про помилку, яке повертається, коли правило повертає значення false. message є літеральним рядком.. |
WebhookConfigurationЗʼявляється в:
| Поле | Опис |
|---|---|
authorizedTTL [Обовʼязково]meta/v1.Duration
|
Тривалість кешування 'authorized' відповідей від авторизатора вебхуку. Теж, що й встановлення прапорця |
cacheAuthorizedRequestsbool |
CacheAuthorizedRequests визначає, чи слід кешувати авторизовані запити. Якщо встановлено значення true, TTL для кешованих рішень можна налаштувати за допомогою поля AuthorizedTTL. Стандартно: true |
unauthorizedTTL [Обовʼязково]meta/v1.Duration
|
Тривалість кешування 'unauthorized' відповідей від авторизатора вебхуку. Теж, що й встановлення прапорця |
cacheUnauthorizedRequestsbool |
CacheUnauthorizedRequests визначає, чи слід кешувати неавторизовані запити. Якщо встановлено значення true, TTL для кешованих рішень можна налаштувати за допомогою поля UnauthorizedTTL. Стандартно: true |
timeout [Обовʼязково]meta/v1.Duration
|
Таймаут для запиту веб-хука. Максимально допустиме значення — 30 секунд. Обовʼязкове, без стандартного значення. |
subjectAccessReviewVersion [Обовʼязково]string
|
Версія API authorization.k8s.io SubjectAccessReview, яку потрібно надсилати до веб-хука та очікувати від нього. Теж, що й встановлення прапорця |
matchConditionSubjectAccessReviewVersion [Обовʼязково]string
|
MatchConditionSubjectAccessReviewVersion specifies the SubjectAccessReview version the CEL expressions are evaluated against. Допустимі значення: v1. Обовʼязкове, без стандартного значення. |
failurePolicy [Обовʼязково]string
|
Керує рішенням про авторизацію, коли вебхук не може завершити запит або повертає неправильну відповідь чи помилки в оцінці matchConditions. Допустимі значення:
|
connectionInfo [Обовʼязково]WebhookConnectionInfo
|
ConnectionInfo визначає, як ми звʼязуємося з веб-хуком |
matchConditions [Обовʼязково][]WebhookMatchCondition
|
matchConditions — це список умов, яким повинен відповідати запит, щоб бути відправленим на цей вебхук. Порожній список matchConditions відповідає всім запитам. Допускається максимум 64 умови збігу. Логіка точного збігу така (по порядку):
|
WebhookConnectionInfoЗʼявляється в:
| Поле | Опис |
|---|---|
type [Обовʼязково]string
|
Керує тим, як веб-хук повинен взаємодіяти з сервером. Допустимі значення:
|
kubeConfigFile [Обовʼязково]string
|
Шлях до KubeConfigFile для інформації про зʼєднання. Обов'язковий, якщо connectionInfo. Має тип KubeConfig |
WebhookMatchConditionЗʼявляється в:
| Поле | Опис |
|---|---|
expression [Обовʼязково]string
|
expression представляє вираз, який буде обчислено CEL. Повинен мати тип bool. Вирази CEL мають доступ до вмісту SubjectAccessReview у версії v1. Якщо версія, вказана в subjectAccessReviewVersion у змінній запиту, має значення v1beta1, вміст буде перетворено у версію v1 перед обчисленням виразу CEL.
Документація CEL: https://kubernetes.io/docs/reference/using-api/cel/ |