Я пишу политику с заказами-разрешениями-переопределениями для правил.Тема правила XACML
Правило 1 разрешает доступ ко всему контенту для людей с соответствующим уровнем безопасности.
Правило 2 разрешает доступ к некоторому контенту (3 ресурса) любому, у кого есть альтернативные полномочия.
Правило 3 отрицает доступ ко всему остальному. Это отказоустойчиво, если у пользователя нет уровня безопасности или учетных данных.
Моя проблема в том, что я могу заставить свой сервер запускать программу, а правило 1 работает нормально. Для правила 2 единственным результатом, который я получаю, если я даю требуемые значения, является «отрицание», и если я оставлю пустое, это «неопределенно». Я думаю, что в политике не работает мое правило 2, несмотря на использование упорядоченных разрешений-переопределений.
Я попытался запустить скрипт с правилом 3 закомментирован, и результат будет только «неопределенным» или «неприменимым».
В правиле 1 я оставил цель пустой. Для правила 2 я определил ресурсы, но не темы. Нужно ли указывать темы, чтобы заставить это правило работать? Есть ли что-то еще, что может привести к тому, что мои первые и третьи правила будут действовать, но не моя вторая.
Я решил проблему. Я назвал тот же ресурс в политике и в правиле 1, поэтому я не мог повторить его. Ресурсы должны быть взаимоисключающими в XACML. Ресурсом был мой пакет, а вспомогательные ресурсы - страницы. – Nicholas
... Я решил это, объявив тему в Правиле 1 с высоким уровнем зазора и оставив условие пустым. Правило было правилом разрешения. – Nicholas