Политика XACML на основе ресурсов и дочерних ресурсов

Привет мне нужна политика, где я могу иметь несколько дочерних ресурсов. Политика основана на Ресурсе, где Ресурс верхнего уровня - это Клиент, а дочерние ресурсы, соответствующие этому: 1. Имя, 2. Фамилия

Customer -- -- 1. firstname -- 2. lastname

Как выполнить эту Политику, используя идентификационный сервер WSO2 и плагин Axiomatics Alfa, или есть ли другой способ добиться этой политики. Мне нужна структура политики и запрос на ту же политику.

1 ответ

Решение

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

То, что я иногда делаю, имеет тип ресурса == запись клиента (в вашем случае), а затем идентификатор поля == имя.

То, что я делаю, представляет 2 атрибута для моделирования иерархии ресурсов:

  • Ресурс типа
  • Поле Идентификатор

Это один простой способ заставить все работать.

РЕДАКТИРОВАТЬ - образец политики:

policy documentAccess{
    target clause resourceType=="document" and actionId=="view"
    apply firstApplicable
    rule viewSSN{
        target clause fieldId=="ssn"
        condition subjectId==assignedPerson
        permit
    }
    rule viewBalance{
        target clause fieldId=="balance"
        condition subjectId==assignedPerson
        permit
    }
    rule viewOtherFields{
        target clause fieldSensitive == false
        permit
    }
}
Другие вопросы по тегам