Condividi tramite


Esercitazione: Aggiungere una condizione di assegnazione di ruolo per limitare l'accesso ai BLOB tramite il portale di Azure

Nella maggior parte dei casi, un'assegnazione di ruolo concede le autorizzazioni necessarie alle risorse di Azure. In alcuni casi, tuttavia, potrebbe essere necessario fornire un controllo di accesso più granulare aggiungendo una condizione di assegnazione di ruolo.

In questa esercitazione apprenderai a:

  • Aggiungere una condizione a un'assegnazione di ruolo
  • Limitare l'accesso ai BLOB in base a un tag indice BLOB

Importante

Il controllo degli accessi in base all'attributo di Azure è disponibile a livello generale per controllare l'accesso a Archiviazione BLOB di Azure, Azure Data Lake Archiviazione Gen2 e Code di Azure usando requestgli attributi , resourceenvironment, e principal nei livelli di prestazioni dell'account di archiviazione Standard e Premium. Attualmente, l'attributo della risorsa dei metadati del contenitore e l'attributo di richiesta di inclusione del BLOB di elenco sono disponibili in ANTEPRIMA. Per informazioni complete sullo stato della funzionalità di controllo degli accessi in base all'attributo (ABAC) per Archiviazione di Azure, vedere Stato delle funzionalità relative alle condizioni in Archiviazione di Azure.

Vedere le condizioni per l'utilizzo supplementari per le anteprime di Microsoft Azure per termini legali aggiuntivi che si applicano a funzionalità di Azure in versione beta, in anteprima o in altro modo non ancora disponibili a livello generale.

Prerequisiti

Per informazioni sui prerequisiti per l’aggiunta o la modifica di condizioni di assegnazione di ruolo, vedere Prerequisiti per le condizioni.

Condizione

In questa esercitazione si limita l'accesso ai BLOB con un tag specifico. Ad esempio, si aggiunge una condizione a un'assegnazione di ruolo in modo che Chandra possa leggere solo i file con il tag Project=Cascade.

Diagramma dell'assegnazione di ruolo con una condizione.

Se Chandra tenta di leggere un BLOB senza il tag Project=Cascade, l'accesso non è consentito.

Diagramma che mostra l'accesso in lettura ai BLOB con il tag Project=Cascade.

Di seguito è riportato l'aspetto della condizione nel codice:

(
    (
        !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'}
        AND NOT
        SubOperationMatches{'Blob.List'})
    )
    OR
    (
        @Resource[Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<$key_case_sensitive$>] StringEqualsIgnoreCase 'Cascade'
    )
)

Passaggio 1: Creare un utente

  1. Accedere al portale di Azure come proprietario di una sottoscrizione.

  2. Selezionare Microsoft Entra ID.

  3. Creare un utente o trovare un utente esistente. Questa esercitazione usa Chandra come esempio.

Passaggio 2: Configurare l'archiviazione

  1. Creare un account di archiviazione compatibile con la funzionalità dei tag di indice BLOB. Per altre informazioni, vedere Gestire e trovare i dati BLOB di Azure con tag indice BLOB.

  2. Creare un nuovo contenitore all'interno dell'account di archiviazione e impostare il livello di accesso anonimo su Privato (nessun accesso anonimo).

  3. Nel contenitore selezionare Carica per aprire il riquadro Carica BLOB.

  4. Trovare un file di testo da caricare.

  5. Selezionare Avanzate per espandere il riquadro.

  6. Nella sezione Blob index tags (Tag indice BLOB) aggiungere il tag di indice BLOB seguente al file di testo.

    Se non viene visualizzata la sezione Tag di indice BLOB e la sottoscrizione è stata appena registrata, potrebbe essere necessario attendere alcuni minuti per la propagazione delle modifiche. Per altre informazioni, vedere Usare i tag indice BLOB per gestire e trovare dati in Archiviazione BLOB di Azure.

    Nota

    I BLOB supportano anche la possibilità di archiviare metadati chiave-valore arbitrari definiti dall'utente. Anche se i metadati sono simili ai tag indice BLOB, è necessario usare tag indice BLOB con condizioni.

    Chiave valore
    Project Cascade

Screenshot che mostra la sezione Upload BLOB pane with Blog index tags (Carica riquadro BLOB con tag di indice blog).

  1. Selezionare il pulsante Carica per caricare il file.

  2. Caricare un secondo file di testo.

  3. Aggiungere il tag indice BLOB seguente al secondo file di testo.

    Chiave valore
    Project Baker

Passaggio 3: Assegnare un ruolo di dati BLOB di archiviazione

  1. Aprire il gruppo di risorse.

  2. Seleziona Controllo di accesso (IAM).

  3. Selezionare la scheda Assegnazioni di ruolo per visualizzare tutte le assegnazioni di ruolo in questo ambito.

  4. Selezionare Aggiungi>Aggiungi assegnazione di ruolo. Verrà visualizzata la pagina Aggiungi assegnazione di ruolo:

Screenshot del menu Aggiungi > assegnazione di ruolo.

  1. Nella scheda Ruoli selezionare il ruolo lettore dati BLOB Archiviazione.

Screenshot della pagina Aggiungi assegnazione di ruolo con la scheda Ruoli.

  1. Nella scheda Membri selezionare l'utente creato in precedenza.

Screenshot della pagina Aggiungi assegnazione di ruolo con la scheda Membri.

  1. (Facoltativo) Nella casella Descrizione immettere Accesso in lettura ai BLOB con il tag Project=Cascade.

  2. Selezionare Avanti.

Passaggio 4: Aggiungere una condizione

  1. Nella scheda Condizioni (facoltativo) selezionare Aggiungi condizione. Viene visualizzata la pagina Aggiungi condizione di assegnazione di ruolo:

Screenshot della pagina Aggiungi condizione di assegnazione di ruolo per una nuova condizione.

  1. Nella sezione Aggiungi azione selezionare Aggiungi azione.

    Viene visualizzato il riquadro Seleziona un'azione. Questo riquadro è un elenco filtrato di azioni di dati in base all'assegnazione di ruolo che sarà la destinazione della condizione. Selezionare la casella accanto a Leggere un BLOB e quindi selezionare Seleziona:

Screenshot del riquadro Selezionare un'azione con un'azione selezionata.

  1. Nella sezione Espressione di compilazione selezionare Aggiungi espressione.

    La sezione Espressione si espande.

  2. Specificare le impostazioni di espressione seguenti:

    Impostazione Valore
    Origine dell'attributo Conto risorse
    Attributo Tag indice BLOB [Valori nella chiave]
    Chiave Project
    Operatore StringEqualsIgnoreCase
    Valore Cascade

Screenshot della sezione Build expression (Espressione di compilazione) per i tag di indice BLOB.

  1. Scorrere verso l'alto fino al tipo di editor e selezionare Codice.

    La condizione viene visualizzata come codice. È possibile apportare modifiche alla condizione in questo editor di codice. Per tornare all'editor visivo, selezionare Oggetto visivo.

Screenshot della condizione visualizzata nell'editor di codice.

  1. Selezionare Salva per aggiungere la condizione e tornare alla pagina Aggiungi assegnazione di ruolo.

  2. Selezionare Avanti.

  3. Nella scheda Rivedi e assegna selezionare Rivedi e assegna per assegnare il ruolo con una condizione.

    Dopo qualche istante, all'entità di sicurezza verrà assegnato il ruolo per l'ambito selezionato.

Screenshot dell'elenco di assegnazioni di ruolo dopo l'assegnazione del ruolo.

Passaggio 5: Assegnare il ruolo lettore

  • Ripetere i passaggi precedenti per assegnare il ruolo Lettore all'utente creato in precedenza nell'ambito del gruppo di risorse.

    Nota

    In genere non è necessario assegnare il ruolo Lettore. Tuttavia, questa operazione viene eseguita in modo da poter testare la condizione usando il portale di Azure.

Passaggio 6: Testare la condizione

  1. In una nuova finestra accedere al portale di Azure.

  2. Accedere come utente creato in precedenza.

  3. Aprire l'account di archiviazione e il contenitore creati.

  4. Assicurarsi che il metodo di autenticazione sia impostato su Account utente Microsoft Entra e non sulla chiave di accesso.

Screenshot del contenitore di archiviazione con i file di test.

  1. Selezionare il file di testo Baker.

    Non dovrebbe essere possibile visualizzare o scaricare il BLOB e dovrebbe essere visualizzato un messaggio di autorizzazione non riuscito.

  2. Selezionare File di testo a catena.

    Dovrebbe essere possibile visualizzare e scaricare il BLOB.

Passaggio 7: Pulire le risorse

  1. Rimuovere l'assegnazione di ruolo aggiunta.

  2. Eliminare l'account di archiviazione di test creato.

  3. Eliminare l'utente creato.

Passaggi successivi