Yandex.Cloud
  • Сервисы
  • Почему Yandex.Cloud
  • Сообщество
  • Решения
  • Тарифы
  • Документация
  • Связаться с нами
Подключиться
Yandex Managed Service for Kubernetes
  • Начало работы
  • Пошаговые инструкции
    • Все инструкции
    • Подключение к узлу по SSH
    • Создание файла конфигурации
    • Сетевые сценарии
      • Обеспечение доступа к приложению, запущенному в кластере Kubernetes
      • Работа с сетевыми политиками кластера Kubernetes
    • Шифрование секретов
    • Работа с постоянными томами
      • Динамическая подготовка тома
      • Статическая подготовка тома
      • Управление классами хранилищ
      • Увеличение размера тома
      • Подключение тома в блочном режиме
    • Управление кластером Kubernetes
      • Добавление учетных данных кластера Kubernetes в конфигурационный файл kubectl
      • Получение информации о кластере Kubernetes
      • Создание кластера Kubernetes
      • Изменение кластера Kubernetes
      • Удаление кластера Kubernetes
    • Управление группой узлов
      • Получение информации о группе узлов
      • Создание группы узлов
      • Изменение группы узлов
      • Удаление группы узлов
  • Сценарии использования
    • Интеграция с Container Registry
    • Запуск рабочих нагрузок с GPU
    • Резервное копирование в Object Storage
  • Концепции
    • Взаимосвязь ресурсов сервиса
    • Релизные каналы и обновления
    • Использование объектов API Kubernetes
      • Том
      • Сервис
    • Группа узлов
      • Автоматическое масштабирование группы узлов
      • Расселение подов с узла
      • Динамическое резервирование ресурсов для узла
      • Группы узлов с GPU
    • Сетевые политики кластера Kubernetes
    • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Справочник API
    • Аутентификация в API
    • gRPC
      • Обзор
      • ClusterService
      • NodeGroupService
      • VersionService
      • OperationService
    • REST
      • Обзор
      • Cluster
        • Обзор
        • create
        • delete
        • get
        • list
        • listNodeGroups
        • listOperations
        • update
      • NodeGroup
        • Обзор
        • create
        • delete
        • get
        • list
        • listOperations
        • update
      • Version
        • Обзор
        • list
  • Вопросы и ответы
  1. Управление доступом

Управление доступом

  • Об управлении доступом
  • На какие ресурсы можно назначить роль
  • Какие роли действуют в сервисе
    • Роли Managed Service for Kubernetes
    • Роли для доступа к Kubernetes API
    • Примитивные роли
  • Сервисные аккаунты кластера Managed Service for Kubernetes
  • Доступ к консоли управления Managed Service for Kubernetes

В этом разделе вы узнаете:

  • на какие ресурсы можно назначить роль;
  • какие роли действуют в сервисе;
  • какие роли необходимы сервисным аккаунтам кластера Managed Service for Kubernetes;
  • какие роли нужны для работы с Managed Service for Kubernetes через консоль управления Yandex.Cloud.

Об управлении доступом

Все операции в Yandex.Cloud проверяются в сервисе Identity and Access Management. Если у субъекта нет необходимых разрешений, сервис вернет ошибку.

Чтобы выдать разрешения к ресурсу, назначьте роли на этот ресурс субъекту, который будет выполнять операции. Роли можно назначить аккаунту на Яндексе, сервисному аккаунту или системной группе. Подробнее читайте в разделе Как устроено управление доступом в Yandex.Cloud.

Назначать роли на ресурс могут те, у кого есть роль admin или resource-manager.clouds.owner на этот ресурс.

На какие ресурсы можно назначить роль

Как и в других сервисах, роль можно назначить на облако, каталог или сервисный аккаунт. Роли, назначенные на облако или каталог, действуют и на вложенные ресурсы.

Какие роли действуют в сервисе

На диаграмме показано, какие роли есть в сервисе и как они наследуют разрешения друг друга. Например, в editor входят все разрешения viewer. После диаграммы дано описание каждой роли.

Роли Managed Service for Kubernetes

Описанные ниже роли позволяют управлять кластерами и группами узлов Managed Service for Kubernetes без публичного доступа через API Yandex.Cloud. Для управления ресурсами кластера эти роли необходимо компоновать с ролями для Kubernetes API. Чтобы создать кластер с публичным доступом к Kubernetes API или группу узлов Kubernetes с публичным IP-адресом, в дополнение к ролям k8s.admin, k8s.editor или k8s.clusters.agent также требуется роль vpc.publicAdmin.

Роль Разрешения
k8s.admin Дает права на создание, удаление, изменение, остановку и запуск кластеров и групп узлов. В дальнейшем позволит управлять гранулярным доступом к кластерам и группам.
k8s.editor Дает права на создание, удаление, изменение, остановку и запуск кластеров и групп узлов.
k8s.viewer Позволяет просматривать информацию о кластерах и группах узлов Managed Service for Kubernetes.
k8s.clusters.agent Специальная роль для сервисного аккаунта кластера. Дает право на создание групп узлов, дисков, внутренних балансировщиков, использование заранее созданных KMS-ключей для шифрования и расшифровки секретов, а также подключение заранее созданные группы безопасности.
В комбинации с ролью load-balancer.admin позволяет создать сетевой балансировщик нагрузки с публичным IP-адресом.
Включает роли compute.admin, vpc.privateAdmin, load-balancer.privateAdmin, kms.keys.encrypterDecrypter, iam.serviceAccounts.user.

Роли для доступа к Kubernetes API

Важно

Роли k8s.cluster-api.cluster-admin, k8s.cluster-api.editor и k8s.cluster-api.viewer доступны в Kubernetes начиная с версии 1.17.

Следующие роли дают права на управление ресурсами кластера через Kubernetes API. Для управления кластером эти роли необходимо компоновать с ролями для API Yandex.Cloud.

Роль Разрешения
k8s.cluster-api.cluster-admin Пользователь с этой ролью IAM получает группу yc:cluster-admin и роль cluster-admin для доступа к Kubernetes API.
k8s.cluster-api.editor Пользователь с этой ролью IAM получает группу yc:edit и роль edit для доступа к Kubernetes API.
k8s.cluster-api.viewer Пользователь с этой ролью IAM получает группу yc:view и роль view для доступа к Kubernetes API.

Подробнее о ролях для доступа к Kubernetes API читайте в руководстве.

Чтобы просмотреть права ролей на ресурсы кластера Kubernetes выполните команду:

kubectl describe clusterrole <роль для доступа к Kubernetes API>

Примитивные роли

Примитивные роли IAM содержат вышеописанные роли в следующих комбинациях:

Примитивная роль Комбинация ролей Managed Service for Kubernetes
admin k8s.cluster-api.cluster-admin, k8s.admin, vpc.publicAdmin.
editor k8s.cluster-api.cluster-editor, k8s.editor, vpc.publicAdmin.
viewer k8s.cluster-api.viewer, k8s.viewer.

Сервисные аккаунты кластера Managed Service for Kubernetes

При создании кластера в Managed Service for Kubernetes необходимо указать два сервисных аккаунта:

  • Сервисный аккаунт кластера — от этого имени кластер Managed Service for Kubernetes управляет узлами кластера, подсетями для подов и сервисов, дисками, балансировками нагрузки, а также шифрует и дешифрует секреты. Минимально рекомендуемая роль для такого аккаунта — k8s.clusters.agent.

  • Сервисный аккаунт группы узлов — от этого имени узел кластера аутентифицируется в Yandex Container Registry. Для использования реестров образов аккаунту нужно назначить какую-либо сервисную роль Container Registry. Если используется другой реестр, то роли этому сервисному аккаунту можно не назначать.

Доступ к консоли управления Managed Service for Kubernetes

Для доступа к Managed Service for Kubernetes через консоль управления Yandex.Cloud минимально необходимая роль k8s.viewer.

Чтобы получить подробную информацию о кластере и группе узлов понадобится дополнительная роль k8s.cluster-api.viewer. Поскольку роль k8s.cluster-api.viewer не предоставляет прав доступа ко всем объектам Kubernetes API, для использования всех возможностей консоли управления необходимы роли k8s.cluster-api.editor или k8s.cluster-api.cluster-admin.

В этой статье:
  • Об управлении доступом
  • На какие ресурсы можно назначить роль
  • Какие роли действуют в сервисе
  • Роли Managed Service for Kubernetes
  • Роли для доступа к Kubernetes API
  • Примитивные роли
  • Сервисные аккаунты кластера Managed Service for Kubernetes
  • Доступ к консоли управления Managed Service for Kubernetes
Language
Вакансии
Политика конфиденциальности
Условия использования
© 2021 ООО «Яндекс.Облако»