Disclaimer: I am a developer for IBM, and I am working on our product that makes extensive use of XACML (Tivoli Security Policy Manager). I am a bit prone to XACML.
I think XACML is a great alternative, mainly because it can support almost any security model. I would suggest simulating an existing RBAC solution in XACML (see profile ), and then expand it to include finer access control where your business requirements ask for it.
The appearance of your authorization code in the policy has the additional advantage of being able to change the security model of the application without recompiling.
Are there any exisitng applications that have switched to XACML from an RBAC source?
Unfortunately, I do not know any specific examples, at least those that I can speak about publicly. There is an internal IBM project that allocated a month to implement its authorization module, but received it a week later, implementing it using our XACML implementation. This obviously differs from your example, as it was a green field development project, but emphasizes that there are advantages that the general approach you are considering may have.
craigforster
source share