Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I de flesta fall ger en rolltilldelning de behörigheter du behöver för Azure-resurser. I vissa fall kanske du dock vill ge mer detaljerad åtkomstkontroll genom att lägga till ett rolltilldelningsvillkor.
I den här tutorialen lär du dig följande:
- Lägga till ett villkor i en rolltilldelning
- Begränsa åtkomsten till blobar baserat på en blob-indexetikett
Viktigt!
Azure-attributbaserad åtkomstkontroll (Azure ABAC) är allmänt tillgänglig (GA) för att styra åtkomsten till Azure Blob Storage, Azure Data Lake Storage Gen2 och Azure Queues med hjälp av request, resourceoch environmentprincipal attribut på prestandanivåerna för både standard- och Premium Storage-konton. Listbloben innehåller för närvarande begärandeattributet och attributet för ögonblicksbildsbegäran för hierarkiskt namnområde i FÖRHANDSVERSION. Fullständig information om funktionsstatus för ABAC för Azure Storage finns i Status för villkorsfunktioner i Azure Storage.
Se kompletterande användningsvillkor för Microsoft Azure Previews för juridiska villkor som gäller för Azure-funktioner som är i betaversion, förhandsversion eller på annat sätt ännu inte har släppts i allmän tillgänglighet.
Förutsättningar
Information om kraven för att lägga till eller redigera rolltilldelningsvillkor finns i Villkorskrav.
Tillstånd
I den här instruktionen begränsar du åtkomsten till blobbar med en specifik tagg. Du kan till exempel lägga till ett villkor i en rolltilldelning så att Chandra bara kan läsa filer med taggen Project=Cascade.
               
              
            
Om Chandra försöker läsa en blob utan taggen Project=Cascadetillåts inte åtkomst.
               
              
            
Så här ser villkoret ut i kod:
(
    (
        !(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'
    )
)
Steg 1: Skapa en användare
- Logga in på Azure-portalen som en Ägare för en prenumeration. 
- Välj Microsoft Entra ID. 
- Skapa en användare eller hitta en befintlig användare. I den här självstudien används Chandra som exempel. 
Steg 2: Konfigurera lagring
- Skapa ett lagringskonto som är kompatibelt med funktionen blobindextaggar. Mer information finns i Hantera och hitta Azure Blob-data med blobindextaggar. 
- Skapa en ny container i lagringskontot och ange den anonyma åtkomstnivån till Privat (ingen anonym åtkomst). 
- I containern väljer du Ladda upp för att öppna fönstret Ladda upp blob. 
- Hitta en textfil som ska laddas upp. 
- Välj Avancerat för att expandera fönstret. 
- I avsnittet Blob-indextaggar lägger du till följande blobindextagg i textfilen. - Om du inte ser avsnittet blobindextaggar och du precis har registrerat din prenumeration kan du behöva vänta några minuter på att ändringarna ska spridas. Mer information finns i Använda blobindextaggar för att hantera och hitta data i Azure Blob Storage. - Anmärkning - Blobar stöder också möjligheten att lagra godtyckliga användardefinierade nyckelvärdesmetadata. Även om metadata liknar blobindextaggar måste du använda blobindextaggar med villkor. - Nyckel - Värde - Projekt - Kaskad 
- Välj knappen Ladda upp för att ladda upp filen. 
- Ladda upp en andra textfil. 
- Lägg till följande blobindextagg i den andra textfilen. - Nyckel - Värde - Projekt - Bagare 
Steg 3: Tilldela en lagringsblob-data-roll
- Öppna resursgruppen. 
- Välj Åtkomstkontroll (IAM). 
- Välj fliken Rolltilldelningar om du vill visa rolltilldelningarna i det här omfånget. 
- Välj Lägg till>Lägg till rolltilldelning. Sidan Lägg till rolltilldelning öppnas: 
- På fliken Roller väljer du rollen Lagringsblobdataläsare .
- På fliken Medlemmar väljer du den användare som du skapade tidigare.
- (Valfritt) I rutan Beskrivning anger du Läsåtkomst till blobar med taggen Project=Cascade. 
- Välj Nästa. 
Steg 4: Lägg till ett villkor
- På fliken Villkor (valfritt) väljer du Lägg till villkor. Sidan Lägg till rolltilldelningsvillkor visas:
- I avsnittet Lägg till åtgärd väljer du Lägg till åtgärd. - Fönstret Välj en åtgärd visas. Det här fönstret är en filtrerad lista över dataåtgärder baserat på rolltilldelningen som ska vara målet för ditt villkor. Markera kryssrutan bredvid Läs en blob och välj sedan Välj: 
- I avsnittet Skapa uttryck väljer du Lägg till uttryck. - Avsnittet Expression utökas. 
- Ange följande uttrycksinställningar: - Inställning - Värde - Attributkälla - Resurs - Egenskap - Blobindextaggar [Värden i nyckel] - Nyckel - Projekt - Operatör - StringEqualsIgnoreCase - Värde - Kaskad 
- Rulla upp till Redigeringstyp och välj Kod. - Villkoret visas som kod. Du kan göra ändringar i villkoret i den här kodredigeraren. Om du vill gå tillbaka till den visuella redigeraren väljer du Visuell. 
- Välj Spara för att lägga till villkoret och återgå till sidan Lägg till rolltilldelning. 
- Välj Nästa. 
- På fliken Granska + tilldela väljer du Granska + tilldela för att tilldela rollen med ett villkor. - Efter en liten stund tilldelas säkerhetsprincipalen rollen i det valda omfånget. 
Steg 5: Tilldela rollen Läsare
- Upprepa föregående steg för att tilldela rollen Läsare till den användare som du skapade tidigare i resursgruppsomfånget. - Anmärkning - Du behöver vanligtvis inte tilldela rollen Läsare. Detta görs dock så att du kan testa villkoret med hjälp av Azure-portalen. 
Steg 6: Testa villkoret
- Logga in på Azure Portal i ett nytt fönster. 
- Logga in som den användare som du skapade tidigare. 
- Öppna lagringskontot och containern som du skapade. 
- Kontrollera att autentiseringsmetoden är inställd på Microsoft Entra-användarkonto och inte åtkomstnyckel. 
- Välj textfilen Baker. - Du bör INTE kunna visa eller ladda ned bloben och ett meddelande om att auktoriseringen misslyckades ska visas. 
- Välj Kaskadtextfil. - Du bör kunna visa och ladda ned bloben. 
Steg 7: Rensa resurser
- Ta bort rolltilldelningen som du lade till. 
- Ta bort testlagringskontot som du skapade. 
- Ta bort den användare som du skapade. 
 
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
              