XACML с сервером идентификации WSO2

Я только начал изучать xacml с wso2 и прошел через этот пример post, который работает нормально. У меня вопрос вместо wso2as, если я использую tomcat для развертывания моего файла войны, то как я могу защитить свои защищенные страницы.

Спасибо


person deen    schedule 18.05.2016    source источник


Ответы (2)


Начать нужно с основ. Вы знаете архитектуру XACML? Существует компонент PEP (точка применения политики), который отвечает за защиту ваших ресурсов.

PEP может быть разного форм-фактора. Это может быть шлюз API или, в вашем случае, фильтр сервлета. Вы можете написать свой фильтр сервлетов. Следуйте этим инструкции.

Чтобы узнать больше о XACML, посетите сайт Википедии. Я постоянно добавляю информацию. Также ознакомьтесь с ABAC и ALFA.

person David Brossard    schedule 18.05.2016
comment
вопрос заключается в том, как реализовать авторизацию для веб-приложения, развернутого в Tomcat, с использованием wso2 is. Я не уверен, как этот ответ решает эту проблему. - person farasath; 18.05.2016

Есть несколько способов сделать это, я объясню вам один из них.

Если вы развертываете свое веб-приложение на tomcat, вы можете написать фильтр tomcat [1] или клапан tomcat, который будет действовать как PEP (точка применения политики).

Вы можете настроить WSO2 Identity Server с помощью политик XACML. После этого вы можете вызвать службу Entitlement из фильтра / клапана tomcat, который вы реализовали с помощью клиента SOAP / thrift (см. [2])

Вы можете реализовать фильтр, аналогичный [3]. Вам необходимо настроить фильтр в файле web.xml вашего веб-приложения. Используйте [4] для настройки фильтра. Приложение WSO2 использует tomcat внутри для размещения веб-приложений, поэтому оно не сильно отличается от развертывания на tomcat

[1] https://tomcat.apache.org/tomcat-5.5-doc/servletapi/javax/servlet/Filter.html

[2] Интеграция Xacml с saml в wso2

[3] https://github.com/wso2-extensions/identity-agent-entitlement-filter/blob/master/components/org.wso2.carbon.identity.entitlement.filter/src/main/java/org/wso2/carbon/identity/entity/filter/EntitlementFilter.java

[4] https://docs.wso2.com/display/AS530/Enable+XACML+Fine+Grained+Authorization+for+Web+Apps.

person farasath    schedule 18.05.2016