Attualmente sto sviluppando un'applicazione web, che fornisce un po ' servizio ' all'utente. L'utente dovrà selezionare un ' piano ' in base al quale a lui / lei sarà permesso di eseguire azioni specifiche dell'applicazione ma fino a un limite definito dal piano.
Un piano limiterà inoltre l'accesso a determinate funzionalità, che non saranno disponibili per alcuni piani.
Come esempio : diciamo che ci sono 3 piani , 2 azioni in tutta l'applicazione
- gli utenti di plan-1 possono eseguire azioni-1 3 volte e non possono eseguire azione-2 affatto
- gli utenti di plan-2 possono eseguire azioni-1 10 volte, action-2 5 volte
- gli utenti di plan-3 possono eseguire azioni-1 20 volte, azione-2 10 volte
Quindi sto cercando il modo migliore per farlo, e le mie preoccupazioni principali oltre a implementarlo sono le seguenti (in nessun ordine particolare)
- manutenibilità / modificabilità : il numero di piani e il tipo di funzionalità / azioni cambierà nel prodotto finale
- standard del settore / best practice : per la prontezza futura
- efficienza : ovviamente, voglio codice veloce !!
Non ho mai fatto nulla di simile prima, quindi non ho nessun indizio su come implementare queste funzionalità. Qualche consiglio / guida / schema / risorse / esempi?
Ho letto un po 'di ACL, RBAC, sono gli schemi che devo seguire?
Davvero, qualsiasi tipo di feedback sarà d'aiuto.