Skip to main content

Ruoli - Gestione Ruoli e Permessi Amministratore Scuola

Che cos'è la Gestione Ruoli?

La Gestione Ruoli è il sistema di controllo accessi basato su ruoli (RBAC - Role-Based Access Control) integrato con Filament Shield. Permette agli amministratori scolastici di definire ruoli personalizzati, assegnare permessi granulari e gestire l'accesso alle funzionalità del sistema in modo sicuro e flessibile.

Che cosa fa?

Il sistema di gestione ruoli consente di:

  • Creare ruoli personalizzati con permessi specifici
  • Gestire permessi granulari per ogni risorsa del sistema
  • Assegnare ruoli agli utenti con controllo completo
  • Organizzare ruoli per tenant (scuola) con isolamento dati
  • Monitorare assegnazioni ruoli e statistiche utilizzo
  • Integrare con sistema Filament Shield per sicurezza avanzata

Come utilizzare la Gestione Ruoli

Accesso alla Gestione Ruoli

  1. Accedi alla piattaforma Scuola In Cloud come amministratore scolastico
  2. Naviga al menu "Gestione Sistema"
  3. Seleziona "Ruoli" dal menu laterale

Creazione di un Nuovo Ruolo

Accesso alla Creazione

  • Dalla pagina "Ruoli", clicca "Nuovo Ruolo"
  • Si apre il form di configurazione ruolo

Configurazione Base Ruolo

Informazioni Principali

  • Nome Ruolo: Campo obbligatorio, univoco
    • Identificativo del ruolo (es. "Segretario", "Coordinatore")
    • Headline automatico per display user-friendly
  • Guard: Protezione automatica impostata a "school"
    • Isolamento tenant per sicurezza multi-scuola
  • Team: Assegnazione automatica tenant corrente
    • Scope limitato alla scuola dell'amministratore

Selezione Permessi

  • Seleziona Tutto: Toggle globale permessi
    • Abilita/disabilita tutti i permessi con un click
    • Icone intuitive (scudo check/exclamation)
  • Componenti Shield: Pannello espandibile permessi
    • Organizzato per risorse sistema
    • Checkboxes granulari per ogni permesso

Permessi Disponibili

Permessi Standard per Risorsa

  • view: Visualizzazione lista/record
  • view_any: Accesso alla risorsa (menu/sidebar)
  • create: Creazione nuovi record
  • update: Modifica record esistenti
  • delete: Eliminazione record singoli
  • delete_any: Eliminazione multipla/bulk

Risorse Sistema Disponibili

  • Utenti, Bambini, Genitori, Docenti
  • Sezioni, Classi, Anni Scolastici
  • Presenze, Fatture, Pagamenti
  • Documenti, Notizie, Calendario
  • Impostazioni, Ruoli, Permessi

Gestione Ruoli Esistenti

Tabella Ruoli

La tabella mostra tutti i ruoli con:

  • Nome: Headline del ruolo con formattazione
  • Guard: Badge "Scuola" per identificazione
  • Team: "Global" o ID tenant specifico
  • Conteggio Permessi: Badge numerico con colore successo
  • Creato/Aggiornato: Date formattate e relative

Azioni Disponibili

  • Modifica: Editing completo ruolo e permessi
  • Elimina: Rimozione ruolo con conferma
  • Duplica: Creazione copia ruolo esistente

Ricerca e Filtri

  • Ricerca: Per nome ruolo
  • Ordinamento: Per nome, permessi, date
  • Filtri: Nessuno attivo (tutti ruoli visibili)

Operazioni Bulk

Eliminazione Multipla

  • Selezione multipla ruoli checkbox
  • Pulsante "Elimina Selezionati"
  • Conferma singola per tutte le eliminazioni

Assegnazione Ruoli a Utenti

Tramite Risorsa Utenti

  • Accesso risorsa "Utenti" nel menu
  • Form utente include campo "Ruoli"
  • Selezione multipla ruoli disponibili
  • Salvataggio automatico relazioni

Tramite API/Console

  • Comandi Artisan per assegnazioni bulk
  • Metodi programmatici per integrazioni

Sicurezza e Validazioni

Controlli Automatici

Validazioni Form

  • Nome ruolo obbligatorio e univoco
  • Guard automaticamente impostato a "school"
  • Almeno un permesso selezionato (consigliato)

Isolamento Tenant

  • Ruoli limitati al tenant corrente
  • Nessuna visibilità ruoli altre scuole
  • Protezione dati multi-tenant

Sistema Shield

  • Filament Shield Integration: Sicurezza avanzata framework
  • Permission Caching: Cache intelligente permessi
  • Audit Logging: Tracciamento modifiche ruoli

Caratteristiche Avanzate

Sistema Permessi Granulari

  • CRUD Completo: Create, Read, Update, Delete per risorsa
  • Permessi Custom: Estensioni per funzionalità specifiche
  • Negazione Permessi: Override selettivo permessi

Organizzazione Gerarchica

  • Ruoli Base: Permessi minimi per funzioni essenziali
  • Ruoli Avanzati: Accesso completo risorse specifiche
  • Ruoli Amministrativi: Controllo completo sistema

Statistiche e Monitoraggio

  • Badge Navigation: Conteggio totale ruoli
  • Metriche Utilizzo: Tracking assegnazioni ruoli
  • Report Sicurezza: Audit accessi e modifiche

Considerazioni Importanti

Architettura Sicurezza

Principio Minimo Privilegio

  • Assegnare solo permessi necessari
  • Revisione periodica ruoli assegnati
  • Rimozione permessi non utilizzati

Separazione Ruoli

  • Ruoli distinti per funzioni diverse
  • Evitare sovrapposizione permessi
  • Chiarezza responsabilità

Best Practices

Creazione Ruoli

  • Nomi descrittivi e consistenti
  • Permessi logici per workflow
  • Documentazione scopo ruolo

Assegnazione Utenti

  • Verifica necessità accesso
  • Training appropriato per ruolo
  • Monitoraggio utilizzo permessi

Manutenzione

  • Revisione periodica ruoli
  • Aggiornamento permessi nuove funzionalità
  • Pulizia ruoli non utilizzati

Performance

  • Caching Permessi: Riduzione query database
  • Lazy Loading: Caricamento su richiesta relazioni
  • Query Ottimizzate: Ricerca efficiente ruoli

Integrazione Sistema

  • Filament Shield: Framework sicurezza integrato
  • Multi-Tenant: Isolamento completo tenant
  • Audit System: Logging completo operazioni
  • Permission API: Accesso programmatico permessi

Sicurezza Avanzata

  • CSRF Protection: Protezione cross-site request
  • XSS Prevention: Sanitizzazione input automatica
  • SQL Injection: Prepared statements ORM
  • Session Security: Gestione sicura sessioni

Compliance

  • GDPR: Gestione dati personali ruoli
  • Audit Trail: Tracciamento modifiche permessi
  • Data Retention: Politiche conservazione dati
  • Access Logging: Monitoraggio accessi sensibili

Esempi Ruoli Comuni

Amministratore Scuola

  • Accesso completo tutte le risorse
  • Gestione utenti, ruoli, impostazioni
  • Creazione/modifica tutti i record
  • Report e esportazioni complete

Segretario

  • Gestione studenti e genitori
  • Registrazione presenze e fatturazione
  • Accesso documenti amministrativi
  • Report presenze e pagamenti

Coordinatore Didattico

  • Gestione docenti e classi
  • Accesso calendario scolastico
  • Visualizzazione presenze studenti
  • Report didattici e valutazioni

Insegnante

  • Accesso classe assegnata
  • Registrazione presenze propri studenti
  • Gestione materiali didattici
  • Comunicazione con genitori classe

Genitore

  • Accesso dati propri figli
  • Visualizzazione presenze e fatture
  • Comunicazione con insegnanti
  • Pagamenti e documenti personali