Извините за поздний повтор, но я не знал ответа до сих пор:)
У меня была такая же проблема, в моей настройке я использовал dex (quay.io/dexidp/dex:v2.16.0)
для использования MS AD.В своих тестах я использовал kubernetes 1.13 .
Для генерации kubeconfig я использовал heptiolabs/gangway (gcr.io/heptio-images/gangway:v3.0.0)
, а для входа на панель управления дескриптором я использовал pusher/oauth2_proxy (quay.io/pusher/oauth2_proxy)
.
Я потратил многовремя пробовал разные настройки ldap в dex, но не получал группы AD показываться в журнале dex или заставлять их работать в kubernetes, и каждый пример, который я читал, использовал только пользователей.
Проблема и решение для меня былоне в конфигурации dex, dex будет запрашивать группы у ldap, если вы скажете dex сделать это.Все в клиентах.У OIDC есть «концепция» областей действия, и я предполагаю, что большинство (все?) Клиенты oidc реализуют это, по крайней мере, и gangway, и oauth2-proxy.Поэтому решение для меня было настроить клиент (gangway и oauth2-proxy в моем случае), чтобы они также запрашивали dex для групп.
В проходе я использовал следующий конфиг (включая комментарии)
# Used to specify the scope of the requested Oauth authorization.
# scopes: ["openid", "profile", "email", "offline_access"]
scopes: ["openid", "profile", "email", "offline_access", "groups"]
Для oauth2-прокси я добавил это в развертывание args
- args:
- --scope=openid profile email groups
И тогда я мог бы использовать группы вместо пользователей в моих ролевых привязках, не забудьте также настроить api-сервер для использованияDex для его oidc.
Надеюсь, что помогает
-Robert