Стадия жизненного цикла модуля: Deprecated
Аутентификация
По умолчанию используется модуль user-authn. Также можно настроить аутентификацию через externalAuthentication.
Если ни один из этих способов не включен, модуль dashboard будет отключен.
Параметры auth.password и accessLevel больше не поддерживаются.
Настройки
У модуля нет обязательных настроек.
Требования
К версии Deckhouse: 1.72 и выше.
Параметры
Версия схемы: 1
-
-
объектsettings.authОпции, связанные с аутентификацией или авторизацией в приложении.
По умолчанию:
{}-
массив строкsettings.auth.allowedUserEmails
Массив адресов электронной почты, пользователям которых разрешен доступ к веб-интерфейсу.
Используется, если включен модуль
user-authnили задан параметрexternalAuthentication. -
массив строкsettings.auth.allowedUserGroups
Массив групп пользователей, которые могут иметь доступ к дашборду.
Этот параметр используется, если модуль
user-authnвключён или настроен параметрexternalAuthentication.Внимание. Если модуль используется вместе с user-authn, не забудьте добавить эти группы в соответствующее поле конфигурации DexProvider.
-
объектsettings.auth.externalAuthentication
Параметры для подключения внешней аутентификации (используется механизм Ingress NGINX external-auth, работающий на основе модуля Nginx auth_request.
Внешняя аутентификация включается автоматически, если включен модуль user-authn.
Внимание. Из соображений безопасности этот режим работает только при условии, что параметр
https.mode(глобальный или в модуле) не установлен в значениеDisabled.-
строкаsettings.auth.externalAuthentication.authSignInURLURL, куда будет перенаправлен пользователь для прохождения аутентификации (если сервис аутентификации вернул код ответа HTTP, отличный от
HTTP 200). -
строкаsettings.auth.externalAuthentication.authURLURL сервиса аутентификации. Если пользователь прошел аутентификацию, сервис должен возвращать код ответа
HTTP 200. -
булевыйsettings.auth.externalAuthentication.useBearerTokensТокены авторизации. Дашборд должен взаимодействовать с Kubernetes API от имени пользователя. Для этого сервис аутентификации обязан возвращать HTTP-заголовок
Authorizationв своих ответах, содержащий bearer-token. Этот токен будет использоваться дашбордом для выполнения запросов к API-серверу Kubernetes.По умолчанию:
false
-
-
массив строкsettings.auth.whitelistSourceRangesСписок адресов в формате CIDR, которым разрешено проходить аутентификацию для доступа в дашборд.
Пример:
whitelistSourceRanges: - 1.1.1.1/32
-
-
булевыйsettings.highAvailability
Ручное управление режимом отказоустойчивости.
По умолчанию режим отказоустойчивости определяется автоматически.
Пример:
highAvailability: true -
объектsettings.https
Тип сертификата, используемого для дашборда.
Этот параметр переопределяет глобальные настройки
global.modules.https.Примеры:
customCertificate: secretName: foobar mode: CustomCertificatecertManager: clusterIssuerName: letsencrypt mode: CertManager-
объектsettings.https.certManager
-
строкаsettings.https.certManager.clusterIssuerNameТип используемого ClusterIssuer. Доступны
letsencrypt,letsencrypt-staging,selfsigned, но вы можете определить свои значения.По умолчанию:
letsencrypt
-
-
объектsettings.https.customCertificate
-
строкаsettings.https.customCertificate.secretNameИмя секрета (Secret) в пространстве имен
d8-system, которое будет использоваться дашборд. Cекрет должен быть в формате tls).По умолчанию:
false
-
-
строкаsettings.https.mode
Режим работы HTTPS:
CertManager— дашборд работает по HTTPS и заказывать сертификат с помощью ClusterIssuer, заданного в параметреcertManager.clusterIssuerName;CustomCertificate— дашборд работает по HTTPS, используя сертификат из пространства именd8-system;Disabled— в данном режиме дашборд не будет работать;OnlyInURI— это режим, при котором дашборд работает через HTTP (с учетом того, что перед ним настроен внешний HTTPS-балансировщик, который завершает HTTPS-соединение). В этом случае все ссылки в user-authn будут генерироваться с использованием схемы HTTPS. Балансировщик должен обеспечивать автоматическое перенаправление с HTTP на HTTPS.
Допустимые значения:
Disabled,CertManager,CustomCertificate,OnlyInURI
-
-
строкаsettings.ingressClass
Класс Ingress-контроллера, который используется для дашборда.
Опциональный параметр, по умолчанию используется глобальное значение
modules.ingressClass.Шаблон:
^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ -
объектsettings.nodeSelector
Аналогично параметру Kubernetes
spec.nodeSelectorу подов.Если значение не указано или указано
false, то Deckhouse попытается вычислить значениеnodeSelectorавтоматически. -
массив объектовsettings.tolerations
Аналогично параметру Kubernetes
spec.tolerationsу подов.Если ничего не указано или указано
false, то Deckhouse попытается вычислить значениеtolerationsавтоматически.-
строкаsettings.tolerations.effect
-
строкаsettings.tolerations.key
-
строкаsettings.tolerations.operator
-
целочисленныйsettings.tolerations.tolerationSeconds
-
строкаsettings.tolerations.value
-
-