Definire criteri di accesso archiviati

Un criterio di accesso archiviato fornisce un livello aggiuntivo di controllo sulle firme di accesso condiviso a livello di servizio sul lato server. La definizione di un criterio di accesso archiviato permette di raggruppare le firme di accesso condiviso e fornire limitazioni aggiuntive per le firme vincolate dal criterio.

È possibile usare un criterio di accesso archiviato per modificare l'ora di inizio, l'ora di scadenza o le autorizzazioni per una firma. È anche possibile usare un criterio di accesso archiviato per revocare una firma dopo l'emissione.

I criteri di accesso archiviati sono supportati dalle seguenti risorse di archiviazione:

  • Contenitori BLOB
  • Condivisioni file
  • Code
  • Tabelle

Nota

Un criterio di accesso archiviato in un contenitore può essere associato a una firma di accesso condiviso che concede autorizzazioni al contenitore stesso o ai BLOB che contiene. Analogamente, un criterio di accesso archiviato in una condivisione file può essere associato a una firma di accesso condiviso che concede le autorizzazioni alla condivisione stessa o ai file contenuti.

I criteri di accesso archiviati non sono supportati per la firma di accesso condiviso della delega utente o per la firma di accesso condiviso dell'account.

Creare o modificare criteri di accesso archiviati

I criteri di accesso per una firma di accesso condiviso contengono l'ora di inizio, l'ora di scadenza e le autorizzazioni relative alla firma. È possibile specificare una delle opzioni seguenti o combinarle:

  • Tutti questi parametri nell'URI della firma e nessuno nei criteri di accesso archiviati
  • Tutti questi parametri nei criteri di accesso archiviati e nessuno nell'URI

Tuttavia, non è possibile specificare un parametro sia sul token di firma di accesso condiviso che sui criteri di accesso archiviati.

Per creare o modificare un criterio di accesso archiviato, chiamare l'operazione Set ACL per la risorsa (vedere Set Container ACL, Set Queue ACL, Set Table ACL o Set Share ACL) con un corpo della richiesta che specifica i termini del criterio di accesso. Il corpo della richiesta include un identificatore univoco firmato della scelta, fino a 64 caratteri di lunghezza. Il corpo della richiesta include anche parametri facoltativi dei criteri di accesso, come indicato di seguito:

<?xml version="1.0" encoding="utf-8"?>  
<SignedIdentifiers>  
  <SignedIdentifier>
    <Id>unique-64-char-value</Id>  
    <AccessPolicy>  
      <Start>start-time</Start>  
      <Expiry>expiry-time</Expiry>  
      <Permission>abbreviated-permission-list</Permission>  
    </AccessPolicy>  
  </SignedIdentifier>  
</SignedIdentifiers>  

È possibile impostare un massimo di cinque criteri di accesso in un contenitore, una tabella, una coda o una condivisione alla volta. A ciascun SignedIdentifier, con il relativo campo Id univoco, corrisponde un criterio di accesso. Il tentativo di impostare più di cinque criteri di accesso alla volta causa la restituzione del codice di stato 400 (richiesta non valida).

Nota

Quando si crea o si aggiorna un criterio di accesso archiviato in un contenitore, una tabella, una coda o una condivisione, la modifica potrebbe richiedere fino a 30 secondi. Durante questo intervallo, le richieste rispetto a una firma di accesso condiviso associata ai criteri di accesso archiviati potrebbero non riuscire con il codice di stato 403 (Non consentito), fino a quando i criteri di accesso non diventano attivi.

Non è possibile specificare restrizioni di intervallo per le entità di tabella (startpk, , startrkendpke endrk) in un criterio di accesso archiviato.

Modificare o revocare un criterio di accesso archiviato

Per modificare i parametri di un criterio di accesso archiviato, è possibile chiamare l'operazione ACL (Access Control List) per il tipo di risorsa per sostituire i criteri esistenti. In tale operazione specificare una nuova ora di inizio, ora di scadenza o set di autorizzazioni.

Ad esempio, se i criteri esistenti concedono a una risorsa le autorizzazioni di lettura e di scrittura, è possibile modificarli per concedere solo le autorizzazioni di lettura per tutte le richieste successive. In questo caso, l'identificatore firmato del nuovo criterio, come specificato dal ID campo, sarebbe identico all'identificatore firmato del criterio che si sta sostituendo.

Per revocare un criterio di accesso archiviato, è possibile eliminarlo, rinominarlo modificando l'identificatore firmato o modificando il tempo di scadenza in un valore precedente. La modifica dell'identificatore firmato interrompe le associazioni tra le eventuali firme esistenti e i criteri di accesso archiviati. Se si modifica la scadenza usando un valore nel passato, tutte le firme associate scadranno. L'eliminazione o la modifica dei criteri di accesso archiviati influiscono immediatamente su tutte le firme di accesso condiviso associate.

Per rimuovere un singolo criterio di accesso, chiamare l'operazione della Set ACL risorsa. Passare il set di identificatori firmati che si desidera mantenere nel contenitore. Per rimuovere tutti i criteri di accesso dalla risorsa, chiamare l'operazione Set ACL lasciando vuoto il corpo della richiesta.

Vedi anche