Ошибка соответствия запроса Balana с новым AttributeDesignator

У меня есть два магазина Policies. Одним из них является Простое хранилище политик (SPS), а другим - Административное хранилище политик (APS). Простой запрос доступа к политикам доступа работает должным образом. Однако, когда я оцениваю административный запрос по следующей политике (APS).... (я показал только одну политику компонента);

<Target>
<AnyOf>
<AllOf>
<Match MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">shibli</AttributeValue>
<AttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:subject:subject-id" Category="urn:oasis:names:tc:xacml:3.0:attribute-category:delegate" DataType="http://www.w3.org/2001/XMLSchema#string" MustBePresent="true"/>
</Match>
</AllOf>
</AnyOf>
</Target>

тогда это сгенерирует следующую ошибку;

<Response xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17"><Result><Decision>Indeterminate</Decision><Status><StatusCode Value="urn:oasis:names:tc:xacml:1.0:status:missing-attribute"/><StatusMessage>Couldn't find AttributeDesignator attribute</StatusMessage><StatusDetail>
<MissingAttributeDetail AttributeId="urn:oasis:names:tc:xacml:1.0:subject:subject-id" DataType="http://www.w3.org/2001/XMLSchema#string" Category="urn:oasis:names:tc:xacml:1.0:subject-category:access-subject" ></MissingAttributeDetail>
</StatusDetail></Status></Result></Response>.

ОБНОВЛЕНИЕ: И вот моя просьба;

"<Attributes Category=\"urn:oasis:names:tc:xacml:3.0:attribute-category:delegate\">\n"+
            "<Attribute AttributeId=\"urn:oasis:names:tc:xacml:1.0:subject:subject-id\" IncludeInResult=\"false\">\n"+
            "<AttributeValue DataType=\"http://www.w3.org/2001/XMLSchema#string\">"+issuer+"</AttributeValue>\n"+
            "</Attribute>\n"+
            "</Attributes>\n"+

Любой может направить меня!

заранее спасибо

С уважением,

2 ответа

Ошибка нормальная. Ваша политика ожидает следующий атрибут:

  • идентификатор атрибута: урна: оазис: имена:tc:xacml:1.0: тема: идентификатор темы
  • тип данных: http://www.w3.org/2001/XMLSchema
  • категория: урна: оазис: имена:tc:xacml:3.0: категория атрибута:делегат

Флаг MustBePresent установлен в true Это означает, что если атрибут отсутствует (т. е. нет значений), то Indeterminate будет возвращен.

Ответ на ваш запрос содержит:

  • идентификатор атрибута: урна: оазис: имена:tc:xacml:1.0: тема: идентификатор темы
  • тип данных: http://www.w3.org/2001/XMLSchema
  • категория: урна: оазис: имена:tc:xacml:1.0: тема-категория:тема доступа

Обратите внимание, как значения категорий отличаются. Это означает, что вы на самом деле не оцениваете политику, которую вы показали нам в первом фрагменте, или, если это так, он также содержит раздел с обязательным атрибутом субъектного идентификатора.

Для продолжения было бы полезно показать отправленный вами запрос. Также убедитесь, что у вас установлена ​​правильная политика.

Я решил это, поместив административные политики и политики доступа в две разные папки. Я думаю, что Балана не может читать различные типы политик, которые находятся в одних и тех же папках.

Другие вопросы по тегам