Ho la stessa esigenza e cercando un po' un'idea me la son fatta: il DB ha una tabella *_usertypes che definiscce il gruppo di appartenenza di un utente. Credo sia possibile crearne uno (o più) con i permessi ad hoc per suddividere gli utenti.
Però... beh, non so quale sia la tabella nella quale impostare i permessi del gruppo, né come posso automatizzare la promozione degli utenti da un gruppo all'altro e il ritiro dei permessi allo scadere di una determinata data.