Product SiteDocumentation Site

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

По умолчанию новые пользователи и API-токены не имеют никаких разрешений. Добавить разрешения можно, назначив роли пользователям/токенам для определенных объектов, таким как хранилища данных или удаленные устройства.
Роль — это список привилегий. В PBS предопределён ряд ролей:
  • NoAccess — нет привилегий (используется для запрета доступа);
  • Admin — все привилегии;
  • Audit — доступ только для чтения;
  • DatastoreAdmin — все привилегии для хранилищ данных;
  • DatastoreAudit — просмотр настроек хранилищ и их содержимых, без возможности чтения фактических данных;
  • DatastoreReader — просмотр содержимого хранилища, восстановление данных;
  • DatastoreBackup — создание и восстановление собственных резервных копий;
  • DatastorePowerUser — создание, восстановление и удаление собственных резервных копий;
  • RemoteAdmin — все привилегии для удалённых PBS;
  • RemoteAudit — просмотр настроек удалённых PBS;
  • RemoteSyncOperator — чтение данных с удалённых PBS.
PBS использует систему управления разрешениями на основе ролей и путей. Запись в таблице разрешений позволяет пользователю играть определенную роль при доступе к объекту или пути. Такое правило доступа может быть представлено как тройка (путь, пользователь, роль) или (путь, API-токен, роль), причем роль содержит набор разрешенных действий, а путь представляет цель этих действий.
Информация о правах доступа хранится в файле /etc/proxmox-backup/acl.cfg. Файл содержит 5 полей, разделенных двоеточием (':'):
acl:1:/datastore:backup_u@pbs!client1:DatastoreAdmin
В каждом поле представлены следующие данные:
  • идентификатор acl;
  • 1 или 0 — включено или отключено;
  • объект, на который установлено разрешение;
  • пользователи/токены, для которых установлено разрешение;
  • устанавливаемая роль.
Добавление разрешения в веб-интерфейсе (КонфигурацияAccess Control (Контроль доступа) вкладка Разрешения):
PBS. Добавление разрешения
Управление разрешениями в консоли:
  • добавить разрешение (добавить пользователя backup_u@pbs в качестве администратора хранилища данных для хранилища данных store1, расположенного в /mnt/backup/disk1/store1):
    # proxmox-backup-manager acl update /datastore/store1 DatastoreAdmin --auth-id backup_u@pbs
    
  • вывести список разрешений:
    # proxmox-backup-manager acl list
    
  • отобразить действующий набор разрешений пользователя или API-токена:
    # proxmox-backup-manager user permissions backup_u@pbs --path /datastore/store1
    Privileges with (*) have the propagate flag set
    
    Path: /datastore/store1
    - Datastore.Audit (*)
    - Datastore.Backup (*)
    - Datastore.Modify (*)
    - Datastore.Prune (*)
    - Datastore.Read (*)
    - Datastore.Verify (*)
    

Примечание

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