Как ограничить учетную запись службы по умолчанию от создания / удаления ресурсов kubernetes - PullRequest
0 голосов
/ 15 января 2019

Я использую GKE облака Google для своих операций в kubernetes.

Я пытаюсь ограничить доступ для пользователей, которые получают доступ к кластерам с помощью командной строки. Я применил роли IAM в облаке Google и предоставил роль просмотра учетным записям Сервиса и пользователям. Все работает нормально, если мы используем его через api или «--as» в командах kubectl, но когда кто-то пытается сделать kubectl, создайте объект без указания объекта «--as», который все еще создается с учетной записью службы «по умолчанию» для этого конкретного Пространство имен.

Чтобы преодолеть эту проблему, мы предоставили ограниченный доступ к учетной записи службы «по умолчанию», но все же мы смогли создавать объекты.

$ kubectl auth can-i create deploy --as default -n test-rbac
no

$ kubectl run nginx-test-24 -n test-rbac --image=nginx
deployment.apps "nginx-test-24" created

$ kubectl describe  rolebinding default-view -n test-rbac
Name:         default-view
Labels:       <none>
 Annotations:  <none>
Role:
  Kind:  ClusterRole
  Name:  view
Subjects:
  Kind            Name     Namespace
  ----            ----     ---------
  ServiceAccount  default  test-rbac

Я ожидаю, что пользователи, которые обращаются к кластеру через CLI, не должны иметь возможность создавать объекты, если у них нет разрешений, даже если они не используют флаг "--as", их следует ограничить.

Ответы [ 2 ]

0 голосов
/ 16 января 2019

Хотелось бы, чтобы все ненавистники этого вопроса попытались указать на это:

есть файл по адресу:

~ / .config / gcloud / конфигурации / config_default

здесь есть опция в разделе [container]: use_application_default_credentials

установлено в true

Вот, пожалуйста, вы узнали что-то новое .. наслаждайтесь. Хотелось бы, чтобы ты попытался помочь, вместо того, чтобы понижать голос.

0 голосов
/ 16 января 2019

Пожалуйста, примите во внимание, что сначала вам необходимо просмотреть предварительные условия для использования RBAC в GKE

Также обратите внимание, что роли IAM применяются ко всему проекту Google Cloud и ко всем кластерам в этом проекте, а RBAC обеспечивает детальную авторизацию на уровне пространства имен. Итак, с GKE эти подходы к авторизации работают параллельно.

Для получения дополнительной ссылки, пожалуйста, посмотрите на этот документ RBAC в GKE

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...