Scegliere quando usare le firme di accesso condiviso

Completato

Usare una firma di accesso condiviso se si vuole concedere l'accesso sicuro alle risorse nell'account di archiviazione a qualsiasi client che altrimenti non avrebbe le autorizzazioni necessarie per tali risorse.

Uno scenario comune in cui la firma di accesso condiviso risulta utile è costituito da un servizio in cui gli utenti leggono e scrivono i propri dati nell'account di archiviazione di un utente specifico. Uno scenario in cui i dati utente vengono archiviati nell'account di archiviazione è caratterizzato da due modelli di progettazione standard:

  • I client caricano e scaricano dati usando un servizio proxy front-end che esegue l'autenticazione. Tale servizio offre il vantaggio di consentire la convalida delle regole business, tuttavia per grandi quantità di dati o per transazioni con volumi elevati, la creazione di un servizio dimensionabile in base alla domanda può risultare oneroso o complesso.

    Scenario diagram: Front-end proxy service

  • Un servizio semplificato autentica il client in base alle necessità e quindi genera una firma di accesso condiviso. Dopo aver ricevuto la firma di accesso condiviso, l'applicazione client può quindi accedere alle risorse dell'account di archiviazione direttamente con le autorizzazioni definite dalla firma e per l'intervallo consentito dalla firma. La firma di accesso condiviso consente di ridurre la necessità di instradare tutti i dati attraverso il servizio proxy front-end.

    Scenario diagram: SAS provider service

Molti servizi reali potrebbero usare una combinazione di questi due approcci. Ad esempio, alcuni dati potrebbero essere elaborati e convalidati tramite il proxy front-end, mentre altri vengono salvati e/o letti direttamente tramite la firma di accesso condiviso.

Una firma di accesso condiviso è necessaria anche per autorizzare l'accesso all'oggetto di origine in un'operazione di copia in determinati scenari:

  • Quando si copia un BLOB in un altro BLOB che risiede in un account di archiviazione diverso, è necessario usare una firma di accesso condiviso per autorizzare l'accesso al BLOB di origine. Facoltativamente, è possibile usare una firma di accesso condiviso anche per autorizzare l'accesso al BLOB di destinazione.

  • Quando si copia un file in un altro file che risiede in un account di archiviazione diverso, è necessario usare una firma di accesso condiviso per autorizzare l'accesso al file di origine. Facoltativamente, è possibile usare una firma di accesso condiviso anche per autorizzare l'accesso al file di destinazione.

  • Quando si copia un BLOB in un file o un file in un BLOB, è necessario usare una firma di accesso condiviso per autorizzare l'accesso all'oggetto di origine, anche se gli oggetti di origine e di destinazione si trovano all'interno dello stesso account di archiviazione.