WSO2 Balana is the latest open source XACML implementation based on sun-xacml. Currently WSO2 Balana support XACML 3.0 specification with Multiple decision profile. You can find the Balana source from here.
When you just go through the source of Balana. It is just similar to sun-xacml source and XACML 3.0 specification has been implemented as extensions to existing model. I guess we could go through implementation details later…
Overall Balana project contains four modules.
- Balana core – This is the actual implementation
- Balana samples – This contains the samples
- Balana Utils – This contains some utility methods in Balana. Actually for now, it contains policy editor utility methods that can use to create XACML 3.0 policies easily. (This was added in Sep 2013)
- Balana documentations – This contains docs
- Balana distribution – This creates the zip file that contains runnable artifacts, samples and docs.
Some of the major things that can be seen with Balana when compare to sun-xacml.
1. XACML 3.0 support
2. Multiple decision profile support
3. File based policy finder module as default one
4. Proper logging with log4j
5. Maven support for compile with unit tests.
6. Samples
7. Utility methods to create XACML 3.0 policies and so on
Also there may be performance improvements with Balana. But still any performance comparison has not been done with Balana and sun-xacml.
More blog post on Balana is in the queue… ?