Disclaimer: Sono uno sviluppatore per IBM e lavoro sul nostro prodotto che utilizza ampiamente XACML (Tivoli Security Policy Manager). Sono un po 'prevenuto nei confronti di XACML.
Penso che XACML sia un'ottima alternativa, principalmente perché supporta quasi tutti i modelli di sicurezza. Ti suggerirei di modellare la tua soluzione RBAC esistente in XACML (vedi the profile), quindi estenderla per includere un controllo degli accessi più fine dove richiesto dai tuoi requisiti aziendali.
L'esternalizzazione del codice di autorizzazione in politica ha il vantaggio di essere in grado di modificare il modello di sicurezza dell'applicazione senza ricompilarlo.
Ci sono delle applicazioni exisitng che sono passati ad XACML da un'origine RBAC?
Purtroppo io non sono a conoscenza di esempi particolari, a quelli meno che io possa parlare pubblicamente. C'è un progetto IBM interno che ha assegnato un mese per implementare il loro modulo di autorizzazione, ma lo ha fatto in una settimana esternalizzandolo usando la nostra implementazione XACML. Questo è ovviamente diverso dal tuo esempio in quanto si trattava di un progetto di sviluppo "campi verdi", ma sottolinea che ci sono benefici nell'approccio generale che stai considerando.
Grazie per i suggerimenti! – spa