Spec-Zone.ru › Chef 17

Обзор IAM

[править на GitHub]

Примечание

Данная документация охватывает функцию IAM Chef Automate с версии 20200326170928 и более поздних.

Система управления идентификацией и доступом (IAM) Chef Automate позволяет напрямую управлять членами политики из Chef Automate в браузере. IAM поддерживает функцию проектов, которая позволяет фильтровать и сегрегировать ваши данные среди ваших пользователей. Политики IAM позволяют использовать несколько разрешений, различать членство в политике от определения политики для точного управления и включать роли для управления доступом на основе ролей.

Политика является основой системы IAM Chef Automate. Политика определяет разрешения для того, кто может выполнять какое действие с каким ресурсом и ограничивает эти разрешения по проектам. «Кто» может быть пользователем, командой или токеном API.

На следующей схеме показана новая структура политики. Подробное описание приведено в следующих разделах.

Определение политики

IAM использует политики с несколькими утверждениями, которые поддерживают сложные разрешения. Каждое утверждение в политике определяет одно разрешение. Chef Automate определяет общий эффект политики посредством оценки и комбинирования утверждений разрешений. Если хотя бы одно утверждение разрешает доступ, и ни одно не запрещает его, то политика разрешает доступ. В противном случае доступ запрещен.

Доступ предоставляется, если он явно разрешен в какой-либо политике и не явно запрещен в какой-либо политике. Порядок оценки политики IAM:

  1. По умолчанию все запросы отклоняются.
  2. Любое явное ALLOW переопределяет стандартное DENY.
  3. Любое явное DENY в любой политике переопределяет все ALLOW в любых политиках.

Примеры общего эффекта

Следующие примеры иллюстрируют общий эффект политики и то, как она предоставляет доступ пользователю:

  • Пользователь1, или любая команда, к которой принадлежит пользователь1, не включает политику с действием iam:users:list. Общий эффект: Доступ запрещен пользователю1 для просмотра списка пользователей. Этот пример иллюстрирует глобальное условие DENY по умолчанию.
  • Боб является членом команды alpha и команды omega. Команда alpha содержит широкий спектр разрешений, в то время как у команды omega очень ограниченные возможности доступа для ее членов. Политика «major teams» содержит утверждение, разрешающее команде alpha доступ к ресурсу compliance:reporting:nodes, и другое утверждение, запрещающее команде Omega доступ к тому же ресурсу. Общий эффект: Политика запрещает Бобу доступ, поскольку хотя бы одно утверждение запрещает доступ.
  • Мария является членом команды просмотра по умолчанию, которая разрешает чтение всего, благодаря политике просмотра по умолчанию. Мария также является членом команды развертывания, у которой есть разрешение на загрузку и скачивание профилей. Общий эффект: Политика предоставляет Марии доступ, поскольку членство в обеих командах фактически разрешает доступ.

Свойства политики

Политика IAM состоит из списка утверждений, где каждое утверждение описывает разрешение.

Свойства утверждения

Утверждение политики должно включать Role, или список встроенных Actions.

Свойство Описание
Роль именованный список действий
Эффект ALLOW или DENY
Проекты список идентификаторов проектов для ограничения роли

Свойства роли

Роль IAM состоит из списка действий. Некоторые примеры таких действий включают перечисление пользователей IAM, получение профилей соответствия или обновление статуса узла. Более подробную информацию о ролях см. в Управление доступом на основе ролей.

Члены и политики

Член может быть пользователем, командой или токеном API. Пользователи и команды могут быть локальными, то есть их определение существует только в Chef Automate, или управляться внешним поставщиком идентификации, в частности LDAP или SAML.

Членство в политике IAM v2 отделено и отлично от определения политики. (Обратите внимание, что члены не были включены в Определение политики.) Вы можете редактировать членство в политике для любой политики, но можете изменять только определение политики для пользовательских политик.

Типы политик

IAM различает два типа политик: управляемые Chef и пользовательские. Chef предоставляет управляемые Chef политики, которые являются неотъемлемой частью работы Chef Automate. Вы не можете изменить утверждения политики в управляемых Chef политиках. Пользовательские политики — это политики, которые вы создаете для своих потребностей. Вы можете добавлять, изменять и удалять утверждения политики в ваших пользовательских политиках.

Оба типа политик допускают изменение членства.

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

Роль — это именованный список действий. Этот список предоставляет преимущества инкапсуляции. Утверждение политики нуждается только в имени роли, и политика не перегружается всеми подробностями. Кроме того, список предлагает повторное использование, так как вы можете применять роль к любому утверждению, которому она нужна.

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

Chef Automate включает пять управляемых Chef ролей и две пользовательских роли по умолчанию. Вы можете редактировать эти пользовательские роли, Viewer соответствия и Editor соответствия. Чтобы увидеть действия, составляющие роли, см. Действия IAM.

Роль Тип Описание
Viewer управляемая Chef Просмотр всего в системе кроме IAM
Editor управляемая Chef Выполнение всех действий в системе кроме IAM и заявки на лицензию
Owner управляемая Chef Выполнение всех действий в системе, включая IAM
Project Owner управляемая Chef Editor + просмотр и назначение проектов
Ingest управляемая Chef Загрузка данных в систему
Compliance Viewer пользовательская Viewer для ресурсов соответствия
Compliance Editor пользовательская Editor для ресурсов соответствия

Вы можете использовать эти стандартные роли, созданные Chef, в своих политиках или создавать дополнительные пользовательские роли для более точного управления разрешениями. Вы можете позже отредактировать любые созданные вами роли.

Chef Automate также поставляется с политиками, использующими эти роли. Эти управляемые Chef политики — Viewers, Editors, Administrator и Ingest. Пользовательские политики — Compliance Viewers и Compliance Editors.

Работа с проектами

Проекты IAM — это коллекции ресурсов, созданных в Chef Automate или загруженных из внешних поставщиков данных, таких как Chef Infra и Chef InSpec. Проекты, используемые в политике, сужают область действия разрешений этой политики только на ресурсы, назначенные данным проектам.

Примечание

Chef Automate ограничивает вас 300 проектами. См. Настройка лимита проектов для инструкций по настройке.

Настройка проектов

Настройте проекты IAM, выполнив следующие шаги:

  1. Определите каждый проект с помощью браузера. Начните со страницы Список проектов для создания проектов.
  2. Создайте или отредактируйте утверждения политики IAM, чтобы ограничить разрешения на конкретные проекты по мере необходимости. Каждое утверждение должно либо назвать конкретные проекты, указать символ подстановки (*), обозначающий все проекты, или указать как (unassigned), что предоставляет разрешения на объекты без проектов. По умолчанию все политики, существовавшие до обновления, автоматически настраиваются с этим символом подстановки, поэтому они применяются ко всем проектам.
  3. Назначьте команды или токены проектам.
  4. Выберите проекты для фильтрации в интерфейсе пользователя. После создания проектов используйте глобальный фильтр проектов в верхнем меню навигации для выбора одного или нескольких проектов для просмотра. Отсутствие выбора отображает все ресурсы, на которые у вас есть разрешения.

По умолчанию Chef Automate включает роль владельца проекта, поэтому глобальный администратор может делегировать большую часть этих задач по управлению проектами другим и разделить часть бремени глобального администратора.

Назначение ресурсов проектам

Существуют две категории ресурсов для назначения проектам:

  • Загруженные узлы выполнения клиента и узлы соответствия
  • Команды, токены API, политики и роли, созданные в Automate

Любой из этих ресурсов, не назначенный явно ни одному проекту, является неназначенным. После обновления и до создания проектов все ваши ресурсы существуют как неназначенные.

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

После определения набора проектов с их содержащими правилами загрузки и условиями используйте кнопку Обновить проекты в нижней части любой страницы для применения этих определений.

Вы можете назначать команды и токены API проектам непосредственно в браузере. Вы можете назначать политики и роли только через командную строку. Эти ресурсы, созданные в Chef Automate, не используют и не требуют никаких правил загрузки проектов.

Некоторые ресурсы в Chef Automate учитывают проекты и будут фильтровать при использовании фильтра проекта. Ресурсы, которые не учитывают проекты, всегда отображаются и игнорируют любые примененные фильтры проектов.

Ресурсы, которые учитывают проекты

  • Токены API
  • Загруженные узлы выполнения клиента
  • Загруженные узлы соответствия (включая результаты задания сканирования)
  • Политики
  • Команды
  • Роли

Ресурсы, которые не учитывают проекты

  • Профили соответствия
  • Источники данных
  • Сервисы Habitat
  • Удостоверения узла
  • Узловые менеджеры (также называемые узловыми интеграциями)
  • Уведомления
  • Пользователи

Свойства проекта

Для назначения проекта набора загруженных узлов выполнения клиента и узлов соответствия проект требует список правил загрузки, где каждое правило описывает группу характеристик узла.

Правила загрузки проекта

Правило состоит из списка условий, где каждое условие описывает одну характеристику. Оно также содержит тип: узел или событие. Узел соответствует обработанным клиентом узлам выполнения и соблюдения соответствия, а событие соответствует обработанным событиям на странице Лента событий.

Свойство Описание
Тип узел или событие
Условия список характеристик узла

Условия правила загрузки проекта

Условие состоит из следующих свойств:

Свойство Описание
Атрибут события Организация Chef или Сервер Chef Infra
Атрибут узла Организация Chef, Сервер Chef Infra, Окружение, Роль Chef, Тег Chef, Название политики Chef или Группа политик Chef
Оператор равно или член
Значения список одного или нескольких значений для сопоставления по указанному атрибуту

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/automate/iam_v2_overview/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API