#kubernetes #rbac
#kubernetes #rbac
Вопрос:
Сейчас я изучаю Kubernetes, и у меня вопрос о пользователях Kubernetes. Я узнал, как создавать пользователей и как ограничить доступ по ролям, но когда я должен это использовать? Например, если злоумышленник (не пользователь k8s, а действующий пользователь) проникает на сервер k8s, он может легко сменить администратора (если он может видеть .kube/config
). В дополнение к этому, если пользователь переключает свою учетную запись пользователя и забывает переключиться обратно, то другой пользователь, который входит следующим, также может использовать учетную запись первого пользователя. Я сомневаюсь, что неправильно понимаю использование пользователей k8s, но, похоже, нет документов о том, почему k8s подготовил это. Я предполагаю, что пользователи используются только для выполнения чего-либо из модулей, но если да, то в чем разница между пользователями и учетными записями служб?
Ответ №1:
У Kubernetes очень расплывчатое представление о пользователе. Он знает, что аутентификация — это вещь, и что результатом этого является имя и, возможно, некоторые группы и теги. Но на самом деле все, что он делает, это передает эту информацию плагинам авторизации, чтобы решить, разрешен данный запрос или нет. ServiceAccounts — это определенный тип объекта, потому что они генерируют вам JWT, подписанный кластером, но не существует определенного типа пользователя, который существует только в контексте вашего плагина (ов) аутентификации.