Isolabile - Nozioni di base sull'architettura SaaS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Isolabile

Più sposti i clienti verso un modello multi-tenant, più saranno preoccupati della possibilità che un tenant acceda alle risorse di un altro tenant. I sistemi SaaS includono meccanismi espliciti che assicurano che le risorse di ciascun tenant, anche se eseguite su un'infrastruttura condivisa, siano isolate.

Questo è ciò che chiamiamo isolamento degli inquilini. L'idea alla base dell'isolamento dei tenant è che l'architettura SaaS introduce costrutti che controllano strettamente l'accesso alle risorse e bloccano qualsiasi tentativo di accedere alle risorse di un altro tenant.

Tieni presente che l'isolamento dei tenant è separato dai meccanismi di sicurezza generali. Il sistema supporterà l'autenticazione e l'autorizzazione; tuttavia, il fatto che un utente tenant sia autenticato non significa che il sistema abbia raggiunto l'isolamento. L'isolamento viene applicato separatamente dall'autenticazione e dall'autorizzazione di base che possono far parte dell'applicazione.

Per comprenderlo meglio, immagina di aver utilizzato un provider di identità per autenticare l'accesso al tuo sistema SaaS. Il token di questa esperienza di autenticazione può includere anche informazioni sul ruolo di un utente che potrebbero essere utilizzate per controllare l'accesso di quell'utente a una funzionalità specifica dell'applicazione. Questi costrutti forniscono sicurezza, ma non isolamento. In effetti, un utente potrebbe essere autenticato e autorizzato e accedere comunque alle risorse di un altro tenant. Niente riguardo all'autenticazione e all'autorizzazione bloccherà necessariamente questo accesso.

L'isolamento dei tenant si concentra esclusivamente sull'utilizzo del contesto dei tenant per limitare l'accesso alle risorse. Valuta il contesto del tenant corrente e utilizza tale contesto per determinare quali risorse sono accessibili per quel tenant. Applica questo isolamento a tutti gli utenti all'interno di quel tenant.

Ciò diventa più difficile se osserviamo come viene realizzato l'isolamento dei tenant in tutti i diversi modelli di architettura SaaS. In alcuni casi, l'isolamento può essere ottenuto dedicando intere pile di risorse a un tenant laddove politiche di rete (o più generiche) impediscono l'accesso tra tenant. In altri scenari, potresti avere risorse raggruppate (elementi in una tabella Amazon DynamoDB) che richiedono politiche più dettagliate per controllare l'accesso alle risorse.

Qualsiasi tentativo di accesso a una risorsa tenant deve essere limitato solo alle risorse che appartengono a quel tenant. È compito degli sviluppatori e degli architetti SaaS determinare quale combinazione di strumenti e tecnologie supporterà i requisiti di isolamento della specifica applicazione.