Настройка RBAC

Управление доступом на основе ролей (RBAC) для Grafana Enterprise и Grafana Cloud предоставляет стандартизированный способ предоставления, изменения и отзыва доступа, чтобы пользователи могли просматривать и изменять ресурсы Grafana.

Пользователь — это любой человек, который может войти в Grafana. Каждый пользователь имеет роль, включающую разрешения. Разрешения определяют задачи, которые пользователь может выполнять в системе.

Каждое разрешение содержит одно или несколько действий и область действия.

Note

Несколько устаревших действий разрешений для уведомлений были объявлены устаревшими и больше не предоставляются ролям Editor или Viewer. Если вы используете пользовательские роли или автоматизацию, которые полагаются на эти действия, см. Устаревшие разрешения для деталей и рекомендуемых замен.

Типы ролей

В Grafana есть три типа ролей для управления доступом:

  • Базовые роли: Admin, Editor, Viewer и No basic role. Они назначаются пользователям и предоставляют уровни доступа по умолчанию.
  • Фиксированные роли: предопределённые группы разрешений для конкретных сценариев использования. Базовые роли автоматически включают определённые фиксированные роли.
  • Пользовательские роли: определяемые пользователем роли, объединяющие конкретные разрешения для детального контроля доступа.

Разрешения базовых ролей

Следующая таблица суммирует разрешения оповещений по умолчанию для каждой базовой роли.

Возможность Admin Editor Viewer
Просмотр правил оповещений ✓ ✓ ✓
Создание, редактирование и удаление правил оповещений ✓ ✓
Просмотр silences ✓ ✓ ✓
Создание, редактирование и истечение silences ✓ ✓
Просмотр точек контакта и шаблонов ✓ ✓ ✓
Создание, редактирование и удаление точек контакта ✓ ✓
Просмотр политик уведомлений ✓ ✓ ✓
Создание, редактирование и удаление политик ✓ ✓
Просмотр mute timings ✓ ✓ ✓
Создание, редактирование и удаление временных интервалов ✓ ✓
Просмотр обогащений оповещений ✓ ✓ ✓
Создание, редактирование и удаление обогащений ✓ ✓
Доступ к API провижининга ✓ ✓
Экспорт с расшифрованными секретами ✓

Note

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

Разрешения

Grafana Alerting имеет следующие разрешения, организованные по типу ресурса.

Правила оповещений

Разрешения для управления Grafana-managed правилами оповещений.

Действие Применимая область действия Описание
alert.rules:create folders:*
folders:uid:*
Создание правил оповещений Grafana в папке и её подпапках. Объедините это разрешение с folders:read в области действия, включающей папку, и datasources:query в области действия источников данных, которые пользователь может запрашивать.
alert.rules:read folders:*
folders:uid:*
Чтение правил оповещений Grafana в папке и её подпапках. Объедините это разрешение с folders:read в области действия, включающей папку.
alert.rules:write folders:*
folders:uid:*
Обновление правил оповещений Grafana в папке и её подпапках. Объедините это разрешение с folders:read в области действия, включающей папку. Чтобы разрешить изменения запросов, добавьте datasources:query в области действия источников данных, которые пользователь может запрашивать.
alert.rules:delete folders:*
folders:uid:*
Удаление правил оповещений Grafana в папке и её подпапках. Объедините это разрешение с folders:read в области действия, включающей папку.

Внешние правила оповещений

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

Действие Применимая область действия Описание
alert.rules.external:read datasources:*
datasources:uid:*
Чтение правил оповещений в источниках данных, поддерживающих оповещения (Prometheus, Mimir и Loki).
alert.rules.external:write datasources:*
datasources:uid:*
Создание, обновление и удаление правил оповещений в источниках данных, поддерживающих оповещения (Mimir и Loki).

Экземпляры оповещений и silences

Разрешения для управления экземплярами оповещений и silences в Grafana.

Действие Применимая область действия Описание
alert.instances:read n/a Чтение оповещений и silences в текущей организации.
alert.instances:create n/a Создание silences в текущей организации.
alert.instances:write n/a Обновление и истечение silences в текущей организации.
alert.silences:read folders:*
folders:uid:*
Чтение всех общих silences и silences для конкретных правил в папке и её подпапках.
alert.silences:create folders:*
folders:uid:*
Создание silences для конкретных правил в папке и её подпапках.
alert.silences:write folders:*
folders:uid:*
Обновление и истечение silences для конкретных правил в папке и её подпапках.

Внешние экземпляры оповещений

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

Действие Применимая область действия Описание
alert.instances.external:read datasources:*
datasources:uid:*
Чтение оповещений и silences в источниках данных, поддерживающих оповещения.
alert.instances.external:write datasources:*
datasources:uid:*
Управление оповещениями и silences в источниках данных, поддерживающих оповещения.

Точки контакта

Разрешения для управления точками контакта (получателями уведомлений).

Действие Применимая область действия Описание
alert.notifications.receivers:list n/a Список точек контакта в текущей организации.
alert.notifications.receivers:read receivers:*
receivers:uid:*
Чтение точек контакта.
alert.notifications.receivers.secrets:read receivers:*
receivers:uid:*
Экспорт точек контакта с расшифрованными секретами.
alert.notifications.receivers:create n/a Создание новой точки контакта. Создателю автоматически предоставляется полный доступ к созданной точке контакта.
alert.notifications.receivers:write receivers:*
receivers:uid:*
Обновление существующих точек контакта.
alert.notifications.receivers:delete receivers:*
receivers:uid:*
Обновление и удаление существующих точек контакта.
alert.notifications.receivers.test:create receivers:*
receivers:uid:*
receivers:uid:-
Тестирование точек контакта для проверки их конфигурации. Используйте область действия receivers:uid:-, чтобы предоставить разрешение на тестирование новых интеграций
receivers.permissions:read receivers:*
receivers:uid:*
Чтение разрешений для точек контакта.
receivers.permissions:write receivers:*
receivers:uid:*
Управление разрешениями для точек контакта.

Временные интервалы

Разрешения для управления mute time intervals.

Действие Применимая область действия Описание
alert.notifications.time-intervals:read n/a Чтение mute time intervals.
alert.notifications.time-intervals:write n/a Создание новых или обновление существующих mute time intervals.
alert.notifications.time-intervals:delete n/a Удаление существующих временных интервалов.

Шаблоны

Разрешения для управления шаблонами уведомлений.

Действие Применимая область действия Описание
alert.notifications.templates:read n/a Чтение шаблонов.
alert.notifications.templates:write n/a Создание новых или обновление существующих шаблонов.
alert.notifications.templates:delete n/a Удаление существующих шаблонов.
alert.notifications.templates.test:write n/a Тестирование шаблонов с пользовательскими полезными нагрузками (функциональность предпросмотра и редактора полезной нагрузки).

Внешние уведомления

Разрешения для управления ресурсами уведомлений во внешних источниках данных.

Действие Применимая область действия Описание
alert.notifications.external:read datasources:*
datasources:uid:*
Чтение шаблонов, точек контакта, политик уведомлений и mute timings в источниках данных, поддерживающих оповещения.
alert.notifications.external:write datasources:*
datasources:uid:*
Управление шаблонами, точками контакта, политиками уведомлений и mute timings в источниках данных, поддерживающих оповещения.

Провижининг

Разрешения для управления ресурсами оповещений через API провижининга.

Действие Применимая область действия Описание
alert.provisioning:read n/a Чтение всех правил оповещений Grafana, политик уведомлений и т. д. через API провижининга. Разрешения на папки и источник данных не требуются.
alert.provisioning.secrets:read n/a То же, что и alert.provisioning:read, плюс возможность экспорта ресурсов с расшифрованными секретами.
alert.provisioning:write n/a Обновление всех правил оповещений Grafana, политик уведомлений и т. д. через API провижининга. Разрешения на папки и источник данных не требуются.
alert.rules.provisioning:read n/a Чтение правил оповещений Grafana через API провижининга. Более специфично, чем alert.provisioning:read.
alert.rules.provisioning:write n/a Создание, обновление и удаление правил оповещений Grafana через API провижининга. Более специфично, чем alert.provisioning:write.
alert.notifications.provisioning:read n/a Чтение ресурсов уведомлений (точки контакта, политики уведомлений, шаблоны, временные интервалы) через API провижининга. Более специфично, чем alert.provisioning:read.
alert.notifications.provisioning:write n/a Создание, обновление и удаление ресурсов уведомлений через API провижининга. Более специфично, чем alert.provisioning:write.
alert.provisioning.provenance:write n/a Установка статуса провижининга для ресурсов оповещений. Нельзя использовать отдельно. Требует, чтобы пользователь имел разрешения на доступ к ресурсам.

Обогащение оповещений

Разрешения для управления обогащением оповещений в Grafana Cloud.

Действие Применимая область действия Описание
alert.enrichments:read n/a Чтение конфигураций обогащения оповещений в текущей организации.
alert.enrichments:write n/a Создание, обновление и удаление конфигураций обогащения оповещений в текущей организации.

Эти разрешения применяются к обогащениям для конкретных правил, настраиваемым на вкладке Alert enrichment отдельного правила оповещения. Управление глобальными обогащениями из Alerting > Settings требует базовой роли Admin и не предоставляется разрешениями alert.enrichments или фиксированными ролями Enrichments.

Чтобы помочь спланировать вашу стратегию внедрения RBAC, см. Планирование стратегии внедрения RBAC.

Устаревшие разрешения

Следующие действия разрешений устарели и сохранены только для обратной совместимости. Они предоставляются исключительно Администраторам организации. Базовым ролям Editor и Viewer эти действия не предоставляются.

Используйте рекомендуемые замены, перечисленные ниже, для пользовательских ролей и автоматизации.

Общие уведомления (устарело)

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

Действие Применимая область действия Замена
alert.notifications:read n/a Используйте вместо этого alert.notifications.receivers:read, alert.notifications.templates:read, alert.notifications.time-intervals:read и notifications.alerting.grafana.app/routingtrees:get.
alert.notifications:write n/a Используйте вместо этого alert.notifications.receivers:write, alert.notifications.templates:write, alert.notifications.time-intervals:write и notifications.alerting.grafana.app/routingtrees:update.

Политики уведомлений (устарело)

Эти действия без области действия были заменены действиями с областью действия ресурса на ресурсе notifications.alerting.grafana.app/routingtrees.

Действие Применимая область действия Замена
alert.notifications.routes:read n/a Используйте вместо этого notifications.alerting.grafana.app/routingtrees:get с областью действия notifications.alerting.grafana.app/routingtrees:*.
alert.notifications.routes:write n/a Используйте вместо этого notifications.alerting.grafana.app/routingtrees:update и notifications.alerting.grafana.app/routingtrees:delete с подходящей областью действия ресурса.

Тестирование точек контакта (устарело)

Действие Применимая область действия Замена
alert.notifications.receivers:test n/a Используйте вместо этого alert.notifications.receivers.test:create с областью действия receivers:uid:- (новые интеграции) или receivers:* (существующие).