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 request
gli attributi , resource
environment
, 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
.
Se Chandra tenta di leggere un BLOB senza il tag Project=Cascade
, l'accesso non è consentito.
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
Accedere al portale di Azure come proprietario di una sottoscrizione.
Selezionare Microsoft Entra ID.
Creare un utente o trovare un utente esistente. Questa esercitazione usa Chandra come esempio.
Passaggio 2: Configurare l'archiviazione
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.
Creare un nuovo contenitore all'interno dell'account di archiviazione e impostare il livello di accesso anonimo su Privato (nessun accesso anonimo).
Nel contenitore selezionare Carica per aprire il riquadro Carica BLOB.
Trovare un file di testo da caricare.
Selezionare Avanzate per espandere il riquadro.
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
Selezionare il pulsante Carica per caricare il file.
Caricare un secondo file di testo.
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
Aprire il gruppo di risorse.
Seleziona Controllo di accesso (IAM).
Selezionare la scheda Assegnazioni di ruolo per visualizzare tutte le assegnazioni di ruolo in questo ambito.
Selezionare Aggiungi>Aggiungi assegnazione di ruolo. Verrà visualizzata la pagina Aggiungi assegnazione di ruolo:
- Nella scheda Ruoli selezionare il ruolo lettore dati BLOB Archiviazione.
- Nella scheda Membri selezionare l'utente creato in precedenza.
(Facoltativo) Nella casella Descrizione immettere Accesso in lettura ai BLOB con il tag Project=Cascade.
Selezionare Avanti.
Passaggio 4: Aggiungere una condizione
- Nella scheda Condizioni (facoltativo) selezionare Aggiungi condizione. Viene visualizzata la pagina Aggiungi condizione di assegnazione di ruolo:
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:
Nella sezione Espressione di compilazione selezionare Aggiungi espressione.
La sezione Espressione si espande.
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
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.
Selezionare Salva per aggiungere la condizione e tornare alla pagina Aggiungi assegnazione di ruolo.
Selezionare Avanti.
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.
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
In una nuova finestra accedere al portale di Azure.
Accedere come utente creato in precedenza.
Aprire l'account di archiviazione e il contenitore creati.
Assicurarsi che il metodo di autenticazione sia impostato su Account utente Microsoft Entra e non sulla chiave di accesso.
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.
Selezionare File di testo a catena.
Dovrebbe essere possibile visualizzare e scaricare il BLOB.
Passaggio 7: Pulire le risorse
Rimuovere l'assegnazione di ruolo aggiunta.
Eliminare l'account di archiviazione di test creato.
Eliminare l'utente creato.