Opzioni di autorizzazione per archiviazione di Azure
Prima di migliorare l'app Web per le immagini di diagnostica dei pazienti della società, è importante conoscere tutte le opzioni per un accesso sicuro, Una firma di accesso condiviso offre un modo sicuro per concedere l'accesso alle risorse per i client, ma non è l'unico modo per concedere l'accesso. In alcune situazioni, altre opzioni potrebbero offrire una scelta migliore per l'organizzazione.
L'azienda potrebbe usare altre opzioni oltre al metodo di autenticazione con firma di accesso condiviso.
In questa unità vengono esaminati i diversi modi disponibili per autenticare l'accesso ai file archiviati in Archiviazione di Azure.
Accesso ad Archiviazione di Azure
I client accedono ai file archiviati in Archiviazione di Azure tramite HTTP/HTTPS. Azure controlla ogni richiesta client per verificare l'autorizzazione per accedere ai dati archiviati. Sono disponibili quattro opzioni per accedere all'archiviazione BLOB:
- Accesso pubblico
- Microsoft Entra ID
- Chiave condivisa
- Firma di accesso condiviso
Accesso pubblico
L'accesso pubblico è noto anche come accesso pubblico anonimo in lettura per contenitori e BLOB.
Esistono due impostazioni separate che influiscono sull'accesso pubblico:
L'account di archiviazione. Configurare l'account di archiviazione per consentire l'accesso pubblico impostando la proprietà AllowBlobPublicAccess. Se impostato su True, i dati BLOB sono disponibili per l'accesso pubblico solo se è configurata anche l'impostazione di accesso pubblico del contenitore.
Il contenitore. È possibile abilitare l'accesso anonimo solo se è stato consentito l'accesso anonimo per l'account di archiviazione. Un contenitore ha due possibili impostazioni per l'accesso pubblico: Accesso pubblico in lettura per i BLOB o Accesso pubblico in lettura per un contenitore e i relativi BLOB. L'accesso anonimo è controllato a livello di contenitore, non per i singoli BLOB. Perciò, se si vuole proteggere alcuni file, è necessario inserirli in un contenitore separato che non consenta l'accesso pubblico in lettura.
Le impostazioni dell'account di archiviazione e del contenitore sono necessarie per abilitare l'accesso pubblico anonimo. Questo approccio presenta il vantaggio di non dover condividere le chiavi con i client che richiedono l'accesso ai file. Non è inoltre necessario gestire una firma di accesso condiviso.
Microsoft Entra ID
Usare l'opzione Microsoft Entra per accedere in modo sicuro all'archiviazione di Azure senza archiviare credenziali nel codice. L'autorizzazione AD accetta un approccio in due passaggi. Prima di tutto, si autentica un'entità di sicurezza che restituisce un token OAuth 2.0 se l'operazione ha esito positivo. Questo token viene poi passato ad Archiviazione di Azure per abilitare l'autorizzazione per la risorsa richiesta.
Questa modalità di autenticazione viene usata se si esegue un'app con identità gestite o se si usano entità di sicurezza.
Chiave condivisa
Archiviazione di Azure crea due chiavi di accesso a 512 bit per ogni account di archiviazione creato. Queste chiavi vengono condivise per concedere ai client l'accesso all'account di archiviazione. Queste chiavi consentono a chiunque abbia accesso l'equivalente dell'accesso radice alla risorsa di archiviazione.
È consigliabile gestire le chiavi di archiviazione con Azure Key Vault perché è facile ruotare le chiavi in base a una pianificazione regolare per proteggere l'account di archiviazione.
Firma di accesso condiviso
La firma di accesso condiviso consente di concedere l'accesso granulare ai file in Archiviazione di Azure, ad esempio l'accesso in sola lettura o in lettura/scrittura con ora di scadenza, dopo la quale la firma di accesso condiviso non consente più al client di accedere alle risorse scelte. Una firma di accesso condiviso è una chiave che concede l'autorizzazione a una risorsa di archiviazione e deve essere protetta allo stesso modo di una chiave dell'account.
Archiviazione di Azure supporta tre tipi di firme di accesso condiviso:
- Firma di accesso condiviso di delega utente: Una firma di accesso condiviso della delega utente è protetta con le credenziali di Microsoft Entra, perché il token OAuth 2.0 usato per firmare la firma di accesso condiviso viene richiesto per conto dell'utente. Può essere usata solo per l'archiviazione BLOB.
- Firma di accesso condiviso del servizio: una firma di accesso condiviso del servizio viene protetta usando una chiave dell'account di archiviazione. Una firma di accesso condiviso del servizio delega l'accesso a una risorsa in uno solo dei servizi di archiviazione (servizio BLOB, code, tabelle o file).
- Firma di accesso condiviso dell'account: una firma di accesso condiviso dell'account è protetta con una chiave dell'account di archiviazione. La firma di accesso condiviso dell'account offre gli stessi controlli della firma di accesso condiviso del servizio, ma può anche controllare l'accesso a operazioni a livello di servizio, ad esempio il recupero delle statistiche del servizio.
È possibile creare una firma di accesso condiviso ad hoc specificando tutte le opzioni che è necessario controllare, tra cui ora di inizio, ora di scadenza e autorizzazioni.
Se si intende creare una firma di accesso condiviso del servizio, è anche possibile associarvi un criterio di accesso archiviato. Un criterio di accesso archiviato può essere associato a un massimo di cinque firme di accesso condiviso attive. È possibile controllare l'accesso e la scadenza a livello del criterio di accesso archiviato. Si tratta di un approccio valido se è necessario avere un controllo granulare per modificare la scadenza o per revocare una firma di accesso condiviso. L'unico modo per revocare o modificare una firma di accesso condiviso ad hoc consiste nel modificare le chiavi dell'account di archiviazione.