Pattern di accesso ai dati multi-tenant e policy IAM
Utilizzare gli archivi dati in AWS
Dunieski Otano
AWS Solutions Architect
Violazione di sicurezza multi-tenant
App SaaS serve 1.000 aziende
Bug nel codice consente accessi cross-tenant
Un dipendente di A vede i dati di B
Risultato: clienti persi, cause legali, danni di reputazione
Cos'è il multi-tenant
Che cos'è il multi-tenant?
Più clienti condividono l'infrastruttura
Vantaggi
Efficienza dei costi, manutenzione più semplice
Sfida
Garantire isolamento completo dei dati
Pattern: partition key per tenant
Design
tenantId come partition key
Includi tenantId in ogni item
Vantaggi
Economico, scala a migliaia
Requisiti
Controlli di accesso rigorosi, policy IAM
Pattern: tabelle separate per tenant
Design
Tabella dedicata per ogni tenant
Vantaggi
Migliore isolamento, conformità più semplice
Svantaggi
Gestione della complessità, limiti di tabelle
Pattern: database separati per tenant
Design
Database dedicato per ogni tenant
Vantaggi
Isolamento completo, configurazioni personalizzate
Svantaggi
Costo più alto, onere operativo
Chiavi di condizione IAM per l'isolamento dei tenant
dynamodb:LeadingKeys
Limita l'accesso alla partition key
Esempio di policy
"Consenti se tenantId = tenant-123"
Applicazione
AWS applica a livello API
Difesa in profondità: implementazione
Livello 1: Applicazione
Verifica tenantId nel codice
Livello 2: Policy IAM
Le condition keys impongono l'isolamento
Livello 3: Design del database
Separazione fisica via partition key
Test e validazione
Test cross-tenant
Prova a leggere i dati di un altro tenant
Deve fallire con AccessDeniedException
Audit logging
CloudTrail registra tutti i tentativi
Revisioni periodiche
Rivedi policy IAM e pattern di accesso
Congratulazioni!
Archivi dati AWS
: DynamoDB, S3, ElastiCache, OpenSearch
Progetta e ottimizza
: design tabelle, ottimizzazione storage
Proteggi i dati
: cifratura, gestione secret, isolamento multi-tenant
Passiamo alla pratica !
Utilizzare gli archivi dati in AWS
Preparing Video For Download...