как сопоставить запрос XACML 3.0 с политикой, хранящейся в хранилище политик

Привет, я просто хочу знать, как я могу сопоставить запрос XACML 3.0 от PEP с политиками, хранящимися в хранилище политик, с помощью PDP. Как я буду оценивать конкретный запрос относительно нескольких политик, хранящихся в хранилище политик.


person Utsav    schedule 09.01.2014    source источник


Ответы (3)


Запрос XACML сопоставляется с элементом «Целевой» политик, которые хранятся в хранилище политик PDP. Как только целевой элемент сопоставлен с политиками, эти сопоставленные политики (применимые политики) оцениваются (правила политик) в соответствии с порядком политик, и результаты объединяются в соответствии с алгоритмом объединения политик хранилища политик. Если PEP хочет это знать; какие политики PEP соответствуют данному запросу XACML, PEP может отправить запрос XACML с атрибутом «ReturnPolicyIdList» как «истина».

<Request xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17" CombinedDecision="false" ReturnPolicyIdList="true">

Тогда ответ XACML вернет согласованные политики в ответе XACML.

person Asela    schedule 09.01.2014
comment
поэтому PDP отвечает за сопоставление с целевым элементом и объединение результатов сопоставленных политик. Но я не уверен, как у вас это получается в образце Баланы. Как вы загружаете политики в PDP для соответствия. Где реализация PIP в Balana XACML 3.0? - person Utsav; 10.01.2014
comment
Это точка расширения, которую можно реализовать. Balana имеет реализацию по умолчанию как хранилище политик на основе файлов. В этой реализации он будет сопоставлять все политики в файловом хранилище с запросом и возвращать применимые политики (как набор политик) в движок Balana. Пожалуйста, найдите код jave здесь svn.wso2.org/repos/wso2/trunk/commons/balana/modules/ - person Asela; 10.01.2014
comment
Таким образом, вы хотите сказать, что PIP является частью самого PDP в текущей реализации Balana. Итак, в текущих примерах, предоставленных вами, мы загружаем все политики прямо из папки ресурсов из файловой системы. - person Utsav; 10.01.2014
comment
Да .. PIP может быть частью PDP. Это точка расширения ... к PDP можно подключить несколько PIP. - person Asela; 10.01.2014
comment
То, как это будет работать, означает, как несколько PDP будут взаимодействовать с несколькими PIP. На данный момент в текущей реализации PIP является частью PDP, поэтому, когда я собираюсь разместить свой PDP как услугу, то как будет работать PIP, я не понимаю эту функциональность, не могли бы вы описать с точки зрения Balana XACML. Это их отдельный исходный код PIP, с помощью которого PDP может общаться, предоставленный вами, или я могу надеяться, что он появится в новой версии. - person Utsav; 10.01.2014
comment
По сути, PIP - это расширяемый java-класс. Скажем, ваш PIP - это пользовательское хранилище JDBC. Затем в своем классе Java PIP вы хотите написать код для вызова хранилища пользователей JDBC и получения атрибутов пользователя. Итак, если имеется несколько PDP, вы хотите поместить этот класс во все PDP. Вы можете увидеть соответствующий образец написания PIP отсюда .. xacmlinfo. org / 2011/12/18 / writing-jdbc-pip-module Но это для WSO2IS ... То же самое и с Баланой .... - person Asela; 10.01.2014

В дополнение к ответу Аселы я хотел бы добавить, что «хранилище политик» зависит от реализации.

То, как это описывает Асела, по существу означает, что хранилище политик действует как набор политик с алгоритмом комбинирования и без цели.

person David Brossard    schedule 09.01.2014
comment
Запрос XACML содержит только значения темы, ресурса и действий, а политика будет содержать целевой элемент, основанный на том, что PDP будет автоматически оценивать, но что произойдет, если у меня будет один и тот же целевой элемент, определенный в каждой политике. - person Utsav; 10.01.2014
comment
Если у вас один и тот же целевой элемент, то к запросу будут применимы все политики. Тогда все они будут оценены. Все политики в хранилище политик будут приняты как один набор политик. - person Asela; 10.01.2014
comment
поэтому, если все политики оцениваются, это очень сложно, потому что, если у меня есть сопоставление 100 или более политик, для сопоставления потребуется больше времени, и это создаст проблему с производительностью, не уверен, поправьте меня, если я ошибаюсь. - person Utsav; 13.01.2014

Добавление моего опыта использования WSO2 Identity Server в качестве PDP

Таким образом, вы можете добавить несколько файлов политик в IS. Но вы должны дать рейтинг каждому файлу политики.

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

person swapy    schedule 09.12.2015