netgescon-day0/docs/00-MASTER-DOCS-UNIFICATI/05-ACCESSO-ATOMIZZATO
2026-03-10 21:00:01 +00:00
..
README.md chore: NetGescon day-0 baseline 2026-03-10 2026-03-10 21:00:01 +00:00

👥 ACCESSO ATOMIZZATO - NetGescon

Sistema Ruoli, Permessi e Accesso Selettivo

📋 CONTENUTI CATEGORIA:

🔐 SISTEMA RUOLI E PERMESSI

  • Definizione ruoli utente
  • Matrice permessi granulari
  • Autenticazione multi-livello
  • Integrazione Laravel Sanctum

👤 GESTIONE UTENTI MULTI-LIVELLO

  • Super Admin
  • Amministratore Condominiale
  • Condomino Standard
  • Utente Read-Only

🎯 ACCESSO SELETTIVO MODULI

  • Permessi per singolo tab
  • Accesso contextual ai dati
  • Filtri basati su stabili
  • Audit trail completo

🛡️ AUDIT E SICUREZZA

  • Log accessi utenti
  • Tracciamento modifiche
  • Session management
  • Security best practices

🏗️ ARCHITETTURA RUOLI (PIANIFICATA)

🔹 SUPER ADMIN:

// Accesso completo sistema
-  Gestione tutti gli stabili
-  Configurazione sistema
-  Gestione utenti
-  Export/Import dati

🔸 AMMINISTRATORE CONDOMINIALE:

// Accesso limitato ai propri stabili
-  Gestione stabili assegnati
-  Tabelle millesimali
-  Gestione finanziaria
-  Configurazione sistema

🔹 CONDOMINO:

// Accesso solo propria unità
-  Visualizzazione dati personali
-  Estratti conto
-  Documenti unità
-  Modifica dati

🔸 READ-ONLY:

// Solo consultazione
-  Visualizzazione dati
-  Modifiche
-  Export
-  Configurazioni

🎯 IMPLEMENTAZIONE PIANIFICATA

1. Database Schema:

-- Tabella Ruoli
CREATE TABLE roles (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    permissions JSON
);

-- Tabella User-Role
CREATE TABLE user_roles (
    user_id INT,
    role_id INT,
    stabile_id INT NULL -- Per limitare l'accesso
);

2. Middleware Laravel:

// Route protection
Route::middleware(['auth', 'role:admin'])->group(function () {
    Route::get('/admin/stabili', [StabileController::class, 'index']);
});

3. Blade Directives:

@can('manage', $stabile)
    <!-- Mostra controlli admin -->
    <button>Modifica</button>
@endcan

@role('condomino')
    <!-- Mostra solo dati personali -->
@endrole

🔐 SECURITY FEATURES

Autenticazione:

  • Laravel Sanctum per API
  • Session-based per web
  • 2FA opzionale
  • Password policies

Autorizzazione:

  • Role-based access control
  • Resource-level permissions
  • Context-aware filtering
  • Audit logging

Data Protection:

  • GDPR compliance
  • Data encryption
  • Secure file uploads
  • Access logging

📊 ROADMAP IMPLEMENTAZIONE

🎯 FASE 1 - Base Sistema:

  • Setup Laravel Sanctum
  • Database schema ruoli
  • Basic authentication
  • Admin interface

🎯 FASE 2 - Permessi Granulari:

  • Role assignment
  • Permission matrix
  • Middleware protection
  • Blade directives

🎯 FASE 3 - UI Dinamica:

  • Context-sensitive menus
  • Filtered data views
  • User-specific dashboards
  • Audit interface

🎯 FASE 4 - Advanced:

  • 2FA integration
  • API access tokens
  • Mobile app support
  • SSO integration

📅 STATO: IN PIANIFICAZIONE
🎯 PRIORITÀ: ALTA - Implementazione prevista dopo completamento interfaccia