lezione 10

sicurezza e ruoli

permessi granulari e audit per database solidi.

livello: intermedio durata: 34 min output: security policy badge: security

ruoli

crea ruoli per separare permessi di lettura, scrittura, admin.

CREATE ROLE analyst;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO analyst;

permessi granulari

concedi il minimo necessario. evita accesso diretto a tabelle sensibili.

REVOKE ALL ON customers FROM public;
GRANT SELECT (id, name) ON customers TO analyst;

audit e monitoring

logga accessi e query critiche. integra audit con i log applicativi.

  • registra accessi admin
  • controlla query su dati sensibili
  • ruota le credenziali

esercizi

definisci ruoli reader, writer, admin per un db demo.

aggiungi audit su una tabella utenti.

checklist

  • principio del minimo privilegio
  • ruoli separati per team
  • audit periodico
  • documenta le policy

panoramica

In questo capitolo su sicurezza e ruoli, permessi granulari e audit per database solidi. L'obiettivo è trasformare i concetti in micro-pattern riutilizzabili con esempi piccoli e verificabili.

Lavora in sequenza: leggi, prova, modifica gli snippet e annota i trade-off principali (performance, leggibilità, manutenzione).

badge: security

obiettivi

  • capire e applicare ruoli in uno scenario reale
  • capire e applicare permessi in uno scenario reale
  • capire e applicare audit in uno scenario reale
  • capire e applicare esercizi in uno scenario reale

scheda rapida

SELECT categoria, COUNT(*) AS tot
FROM prodotti
WHERE attivo = TRUE
GROUP BY categoria
ORDER BY tot DESC
LIMIT 5;

Adatta questo scheletro agli esempi della lezione e sostituisci i dati con il tuo dominio.

tips

  • usa alias chiari
  • filtra presto con WHERE
  • controlla i piani di esecuzione
  • principio del minimo privilegio
  • usa ruoli per gruppi
  • revoca accessi inutili

tip: I permessi sono codice: versionali.

mini progetto

Definisci ruoli per app e analyst.

  • crea ruoli
  • assegna grant
  • testa accessi
  • documenta policy

output atteso: uno script o query ripetibile con risultati verificabili.

start a brief