Sto codificando un'applicazione di zend framework usando il paradigma standard del mvc con un livello di servizio aggiunto per occuparmi della logica dell'applicazione/business. Sembra abbastanza popolare mettere il controllo degli accessi nei tuoi servizi, piuttosto che i tuoi moduli/controllori/azioni, tuttavia, ho visto solo esempi semplici con ruoli e permessi statici per quei ruoli.Come si inserisce il controllo di accesso in un livello di servizio dell'applicazione mvc?
La mia applicazione userà un acl dinamico, consentendo all'amministratore di aggiungere ruoli e impostare permessi su quei ruoli. Ho due domande:
- Come si associano le autorizzazioni nel campo utente a quello dei servizi e dei metodi nei servizi? Non credo che dovrebbe essere una mappatura 1: 1. Se la tua applicazione è sufficientemente grande, avrai molti servizi con molti metodi e la struttura delle autorizzazioni diventerà rapidamente confusa per un utente finale che impone le autorizzazioni per un ruolo.
- I servizi sono globali per l'applicazione e non specifici per un modulo. Come impostare le autorizzazioni per tali servizi in base al modulo a cui si accede?
Qualsiasi aiuto sarebbe molto apprezzato.
Grande domanda! – tom
Bene, diversi mesi dopo, hai realizzato qualcosa? Al momento sto capendo lo stesso scenario. Se sei ancora interessato, forse posso postare qui quando lo finisco. –