Sono finalmente stanco di gestire via console command i permessi rbac.
cioè, mi va benissimo dover fare un nuovo rilascio se cambiano i permessi, perchè questo ovviamente avrà comportato del nuovo codice o comunque delle modifiche
Però vorrei poter gestire via UI l’associazione tra i permessi e gli utenti.
Cosa mi consigliate? E’ da molto che sento parlare di Users e Rights, che immagino siano due estensioni, ma cosa fanno ?
Io uso Rights e devo dire che è veramente semplice creare ruoli e gestire i permessi. Senza neppure scrivere del codice, apparte la regola di verifica alla creazione del permesso.
Nel caso del permesso admin (Yii::app()->user->checkAccess("admin")); (in questo caso)
Infatti dopo aver creato il ruolo ed avergli assegnato il permesso desiderato, Rights mette a disposizione uno strumento attraverso il quale puoi scegliere le viste e i controller da assegnare a quel permesso.
Nel controller setti l’ accesso tramite roles, in questo caso roles’=>array(‘admin’) e sei apposto.
Users non la uso, mi sono creato io la mia bella tabellina user, controller, model e viste.
Ho installato solo Rights e procedo come ti ho detto in maniera molto semplice.
A quanto scritto da Giannix (che quoto in pieno) aggiungo che la Users ti permette naturalmente il CRUD degli utenti; gestisce anche la creazione di tutti i campi aggiuntivi che ti possano servire oltre a username, password ed email che esistono di default.
Rights nasce per gestire l’Rbac di Yii tramite gui. Non so dirti se, avendo già tutto fatto, l’installazione di Rights è indolore. Potresti provare a installarlo saltando la parte di creazione delle tabelle e vedere se ti torna tutto
Puoi fare un backup delle tabelle utenti, ruoli, permessi e task che usi con rbac.
Prepari l’ installazione di Rights modificando nel main (cartella config)i nomi delle tabelle alle quali vuoi che RIghts si agganci. Installi Rights e poi fai l’ upload delle tabelle di cui hai il backup.
Credo potresti risolvere in questa maniera. Fatti un backup dell’ app e prova il tutto in locale. Poi prova a crearti qualche ruolo aggiuntivo per vedere se rights puo andare bene per fare ciò che desideri.