Я создал графики XACML с графическим интерфейсом Wso2.
Для этого я использовал редактор базовых политик. Я дал следующие параметры
Для политики (на первой вкладке я указал только имя ресурса, остальные поля оставил пустыми): Имена ресурсов: https://www.xyz.com/blabla/
(во второй вкладке) Эффект правила: Разрешить
Пользователь: Роль равна Архитектору
Название действия: равно Читать
Итак, политика создается с таким условием:
Архитектор
здесь идентификатор атрибута: AttributeId = "http://wso2.org/claims/role"
Теперь, когда я пытаюсь протестировать эту остроту с помощью инструмента Tryit, с передачей параметра в графическом интерфейсе, автоматический запрос генерируется из WSO2, который имеет следующий идентификатор атрибута для роли:
AttributeId = "urn: oasis: names: tc: xacml: 1.0: subject: subject-id"
И поскольку идентификатор атрибута политики не сопоставлен с идентификатором атрибута моего тестового запроса, он постоянно дает ответ Промежуточный.
Я прочитал несколько блогов и понял, что attributeId необходимо сопоставить при отправке запроса.
Я меняю запрос вручную, и он работает нормально.
Возникает вопрос, почему сервер идентификации WSO2 создает запрос с другим идентификатором атрибута, в то время как мы уже создали политику с того же сервера идентификации Wso2? Я думаю, что оба должны быть сопоставлены, пока вы используете один и тот же редактор для его создания и тестирования с одинаковыми параметрами.
Или мне что-то здесь не хватает ??