идентификатор ресурса в xacml для REST API


person transient_loop    schedule 30.04.2014    source источник


Ответы (1)


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

P1, который обрабатывает доступ к ресурсу https://api.example.org/api/v1/resources/:1 и P2, который обрабатывает доступ к ресурсу https://api.example.org/api/v1/resources/:2 и т. д.

Если это так, идея состоит в том, чтобы использовать идентификатор атрибута, скажем, атрибут resource-id, для захвата значения id в URL-адресе на стороне PEP и передачи его на PDP, а также для написания политик, в которых цель указана как string-equals(resource-id,1) для P1 и string-equals(resource-id,2) для P2 и т. д.

(изменить) На основании предоставленного разъяснения вы можете сделать это следующим образом:

Рассуждения в таком случае будут аналогичными. Вы пишете политику, которая обрабатывает все правила для ресурсов, и указываете ее цель как string-equals(resource-type,"resources"), и в этой политике задаете правила для каждого идентификатора ресурса. На уровне правила целью будет string-equals(resource-id,"1"), string-equals(resource-id,"2") и т. д.

person Srijith Nair    schedule 30.04.2014
comment
на самом деле не совсем, мне нужно написать политику, которая обрабатывает api.example.org/api /v1/resources и тот, который обрабатывает api.example.org/api /v1/resources/:id :) Надеюсь, на этот раз я был понятен :) Спасибо за ваш ответ, который может дать подсказку о том, как это сделать - person transient_loop; 03.05.2014