Открыть сервис

Policy Administration Point

Policy Administration Point (PAP) — это компонент архитектуры управления доступом, отвечающий за создание, хранение и управление политиками безопасности. В рамках модели управления доступом, такой как XACML (eXtensible Access Control Markup Language) или NIST, PAP выступает в роли центрального репозитория и инструмента администрирования, где формулируются правила и условия, определяющие, кто, когда и при каких обстоятельствах может получить доступ к определённым ресурсам. PAP не принимает решений о доступе и не выполняет их, а лишь обеспечивает их формализацию и поддержку в актуальном состоянии.

Функции и роль в архитектуре

В стандартной архитектуре управления доступом, описанной в спецификациях XACML и модели NIST, выделяют четыре ключевых компонента, образующих цикл обработки запросов на доступ:

  • Policy Administration Point (PAP) — точка управления политиками.
  • Policy Decision Point (PDP) — точка принятия решений.
  • Policy Enforcement Point (PEP) — точка исполнения решений.
  • Policy Information Point (PIP) — точка получения информации (атрибутов субъектов, ресурсов, окружения).

PAP выполняет следующие основные функции:

  • Создание политик: Администратор или автоматизированная система через PAP формулирует правила доступа на естественном или формальном языке (например, на языке XACML). Политики могут быть как простыми (например, «разрешить доступ сотруднику отдела кадров к файлам зарплат»), так и сложными, включающими множественные условия, временные ограничения, атрибуты и контекстные факторы.
  • Редактирование и обновление: PAP позволяет изменять существующие политики, добавлять новые условия, отзывать старые правила или корректировать их в ответ на изменения в организации, законодательстве или угрозах безопасности.
  • Хранение: PAP служит репозиторием для всех политик безопасности. Обычно политики хранятся в структурированном виде (например, в XML-формате XACML, в базе данных или в файловой системе) и могут быть организованы в иерархические наборы (policy sets).
  • Управление версиями: Многие реализации PAP поддерживают версионирование политик, что позволяет отслеживать изменения, откатываться к предыдущим версиям и анализировать историю модификаций.
  • Публикация и распространение: PAP передаёт готовые политики в PDP, который затем использует их для принятия решений. В некоторых архитектурах PDP может периодически запрашивать обновления из PAP, либо PAP сам инициирует отправку изменений.

Отличие от других компонентов

Важно понимать различие между PAP и другими точками архитектуры:

  • PAP vs PDP: PDP — это «мозг» системы, который на основе политик, полученных от PAP, и атрибутов, полученных от PIP, принимает решение (разрешить/запретить/неопределённо). PAP не принимает решений, а только управляет правилами.
  • PAP vs PEP: PEP — это «шлюз», который перехватывает запросы пользователя, отправляет их в PDP для оценки и затем исполняет решение (например, блокирует доступ или открывает файл). PAP не взаимодействует с пользователями напрямую.
  • PAP vs PIP: PIP — это источник данных об атрибутах (например, должность пользователя, время суток, уровень секретности документа). PAP не собирает такие данные, а лишь использует их в правилах.

Примеры реализации

PAP может быть реализован как:

  • Графический интерфейс администратора: Веб-консоль или десктопное приложение, где администратор визуально создаёт правила, выбирает условия из выпадающих списков и задаёт действия. Примеры: Axiomatics Policy Server, Oracle Entitlements Server, Microsoft Azure AD Conditional Access.
  • API или командная строка: В автоматизированных системах PAP может быть доступен через REST API или CLI, что позволяет интегрировать управление политиками в процессы DevOps или CI/CD.
  • Файловый репозиторий: В простых сценариях политики могут храниться в виде XML-файлов в определённой директории, а их редактирование осуществляется через текстовый редактор.

Применение в системах управления доступом

PAP используется в различных моделях и технологиях управления доступом:

  • XACML (eXtensible Access Control Markup Language): Стандарт OASIS, в котором PAP является обязательным компонентом. Политики XACML представляют собой XML-документы, содержащие правила, цели (targets) и условия (conditions).
  • ABAC (Attribute-Based Access Control): В модели управления доступом на основе атрибутов PAP позволяет задавать правила, которые учитывают множество атрибутов субъекта, ресурса, действия и окружения.
  • RBAC (Role-Based Access Control): В ролевой модели PAP управляет назначением ролей пользователям и определением прав для каждой роли.
  • PBAC (Policy-Based Access Control): Обобщённая модель, где PAP является центральным элементом для всех политик.
  • Системы управления идентификацией и доступом (IAM): В корпоративных решениях, таких как Okta, Ping Identity, Keycloak, PAP может быть встроен в консоль администратора для настройки политик аутентификации и авторизации.

Интересные факты

  • Термин «Policy Administration Point» впервые был формально определён в спецификации XACML 1.0 (2003 год), хотя концепция существовала и ранее в различных системах управления доступом.
  • В некоторых реализациях PAP может быть объединён с PDP в одном программном модуле, но архитектурно они остаются раздельными компонентами.
  • Современные системы управления политиками всё чаще используют декларативные языки (например, Rego в Open Policy Agent) вместо XML, что упрощает написание и понимание правил.
  • В облачных средах PAP часто предоставляется как сервис (PaaS), позволяя централизованно управлять политиками для множества приложений и микросервисов.

Источники

  • OASIS Standard: eXtensible Access Control Markup Language (XACML) Version 3.0, 2013.
  • NIST Special Publication 800-162: Guide to Attribute Based Access Control (ABAC) Definition and Considerations, 2014.
  • Hu, V. C., et al. «Guide to Attribute Based Access Control (ABAC) Definition and Considerations.» National Institute of Standards and Technology, 2013.
  • Axiomatics: «Policy Administration Point (PAP) — Definition and Role in Access Control.»
  • Open Policy Agent Documentation: «Policy Authoring.»

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →