CredentialProviderRequestCredentialProviderRequest включає образ, для якого kubelet вимагає автентифікацію. Kubelet передасть цей обʼєкт запиту втулку через stdin. Загалом втулки повинні відповідати тією ж версією API, яку вони отримали.
| Поле | Опис |
|---|---|
apiVersionstring | credentialprovider.kubelet.k8s.io/v1 |
kindstring | CredentialProviderRequest |
image [Обовʼязкове]string
|
image — це образ контейнеа, який завантажується в рамках запиту втулка для автентифікатора. Втулки можуть за бажанням розпарсити образ для отримання будь-якої інформації, необхідної для отримання облікових даних. |
serviceAccountToken [Обовʼязково]string
|
serviceAccountToken - токен службового облікового запису, привʼязаного до пода, для якого витягується образ. Цей токен надсилається до втулка, лише якщо у конфігурації постачальника облікових даних kubelet'а вказано поле tokenAttributes.serviceAccountTokenAudience. |
serviceAccountAnnotations [Обовʼязково]map[string]string
|
serviceAccountAnnotations - мапа анотацій в службовому обліковому записі, привʼязаному до пода, для якого витягується образ. Список анотацій в обліковому записі сервісу, які потрібно передати втулку, налаштовується в конфігурації постачальника облікових даних kubelet. |
CredentialProviderResponseCredentialProviderResponse містить облікові дані, які kubelet повинен використовувати для зазначеного образу, наданого в оригінальному запиті. Kubelet буде читати відповідь з втулка через stdout. Ця відповідь повинна бути встановлена на ту ж версію API, що й CredentialProviderRequest.
| Поле | Опис |
|---|---|
apiVersionstring | credentialprovider.kubelet.k8s.io/v1 |
kindstring | CredentialProviderResponse |
cacheKeyType [Обовʼязкове]PluginCacheKeyType
|
cacheKeyType вказує тип ключа кешування для використання на основі образу, наданого в запиті. Є три дійсні значення для типу ключа кешування: Image, Registry і Global. Якщо вказано недійсне значення, kubelet не буде використовувати відповідь. |
cacheDurationmeta/v1.Duration
|
cacheDuration вказує тривалість, впродовж якої облікові дані повинні бути кешовані. Kubelet використовуватиме це поле для налаштування тривалості кешування в пам’яті для облікових даних в AuthConfig. Якщо null, kubelet використовуватиме defaultCacheDuration, надану в CredentialProviderConfig. Якщо встановлено 0, kubelet не буде кешувати наданий AuthConfig. |
authmap[string]AuthConfig
|
auth — це map, що містить інформацію для автентифікації, передану в kubelet. Кожен ключ є рядком для образу (детальніше про це нижче). Відповідний authConfig має бути дійсним для всіх образів, що відповідають цьому ключу. Втулок повинен встановити це поле в null, якщо не можна повернути дійсні облікові дані для запитаного образу. Кожен ключ у map є шаблоном, який може містити порт і шлях. Глоби можна використовувати в домені, але не в порті або шляху. Глоби підтримуються як піддомени, такі як '*.k8s.io' або 'k8s.*.io', і домени верхнього рівня, такі як 'k8s.*'. Часткові піддомени, такі як 'app*.k8s.io', також підтримуються. Кожен глоб може відповідати лише одному сегменту піддомена, тому '*.io' не відповідає '*.k8s.io'. Kubelet буде порівнювати образ з ключем, коли всі з наступного є істинними:
Коли повертається кілька ключів, kubelet проходитиме через усі ключі у зворотному порядку, щоб:
Для будь-якого відповідного образу kubelet спробує завантажити образ з наданими обліковими даними, зупиняючись після першого успішно автентифікованого завантаження. Приклади ключів:
|
AuthConfigЗустрічається в:
AuthConfig містить інформацію для автентифікації для реєстру контейнерів. Сьогодні підтримується тільки автентифікація на основі імені користувача та пароля, але в майбутньому можуть бути додані інші механізми автентифікації.
| Поле | Опис |
|---|---|
username [Обовʼязкове]string
|
username — це імʼя користувача, яке використовується для автентифікації в реєстрі контейнерів. Порожнє імʼя користувача є дійсним. |
password [Обовʼязкове]string
|
password — це пароль, який використовується для автентифікації в реєстрі контейнерів. Порожній пароль є дійсним. |
PluginCacheKeyType(Аліас string)
Зустрічається в: