Share via


Självstudie: Lägga till ett rolltilldelningsvillkor för att begränsa åtkomsten till blobar med hjälp av Azure-portalen

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 självstudien lär du dig att:

  • Lägga till ett villkor i en rolltilldelning
  • Begränsa åtkomsten till blobar baserat på en blobindextagg

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. För närvarande finns resursattributet för containermetadata och listbloben med begärandeattributet i FÖRHANDSVERSION. Fullständig information om funktionsstatus för ABAC för Azure Storage finns i Status för villkorsfunktioner i Azure Storage.

Juridiska villkor för Azure-funktioner i betaversion, förhandsversion eller som av någon annan anledning inte har gjorts allmänt tillgängliga ännu finns i kompletterande användningsvillkor för Microsoft Azure-förhandsversioner.

Förutsättningar

Information om kraven för att lägga till eller redigera rolltilldelningsvillkor finns i Villkorskrav.

Villkor

I den här självstudien begränsar du åtkomsten till blobar 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.

Diagram över rolltilldelning med ett villkor.

Om Chandra försöker läsa en blob utan taggen Project=Cascadetillåts inte åtkomst.

Diagram som visar läsåtkomst till blobar med Project=Cascade-tagg.

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

  1. Logga in på Azure-portalen som ägare av en prenumeration.

  2. Välj Microsoft Entra ID.

  3. 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

  1. Skapa ett lagringskonto som är kompatibelt med funktionen blobindextaggar. Mer information finns i Hantera och hitta Azure Blob-data med blobindextaggar.

  2. Skapa en ny container i lagringskontot och ange den anonyma åtkomstnivån till Privat (ingen anonym åtkomst).

  3. I containern väljer du Ladda upp för att öppna fönstret Ladda upp blob.

  4. Hitta en textfil som ska laddas upp.

  5. Välj Avancerat för att expandera fönstret.

  6. 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.

    Kommentar

    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.

    Tangent Värde
    Project Cascade

Skärmbild som visar avsnittet Ladda upp blobb med bloggindextaggar.

  1. Välj knappen Ladda upp för att ladda upp filen.

  2. Ladda upp en andra textfil.

  3. Lägg till följande blobindextagg i den andra textfilen.

    Tangent Värde
    Project Baker

Steg 3: Tilldela en lagringsblobdataroll

  1. Öppna resursgruppen.

  2. Välj Åtkomstkontroll (IAM) .

  3. Välj fliken Rolltilldelningar om du vill visa rolltilldelningarna i det här omfånget.

  4. Välj Lägg till>Lägg till rolltilldelning. Sidan Lägg till rolltilldelning öppnas:

Skärmbild av menyn Lägg till > rolltilldelning.

  1. På fliken Roller väljer du rollen Lagringsblobdataläsare .

Skärmbild av sidan Lägg till rolltilldelning med fliken Roller.

  1. På fliken Medlemmar väljer du den användare som du skapade tidigare.

Skärmbild av sidan Lägg till rolltilldelning med fliken Medlemmar.

  1. (Valfritt) I rutan Beskrivning anger du Läsåtkomst till blobar med taggen Project=Cascade.

  2. Välj Nästa.

Steg 4: Lägg till ett villkor

  1. På fliken Villkor (valfritt) väljer du Lägg till villkor. Sidan Lägg till rolltilldelningsvillkor visas:

Skärmbild av sidan Lägg till villkor för rolltilldelning för ett nytt villkor.

  1. 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:

Skärmbild av Fönstret Välj en åtgärd med en åtgärd markerad.

  1. I avsnittet Skapa uttryck väljer du Lägg till uttryck.

    Avsnittet Uttryck expanderas.

  2. Ange följande uttrycksinställningar:

    Inställning Värde
    Attributkälla Resurs
    Attribut Blobindextaggar [Värden i nyckel]
    Nyckel Project
    Operator StringEqualsIgnoreCase
    Värde Cascade

Skärmbild av avsnittet Skapa uttryck för blobindextaggar.

  1. 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 Visuellt objekt.

Skärmbild av villkor som visas i kodredigeraren.

  1. Välj Spara för att lägga till villkoret och återgå till sidan Lägg till rolltilldelning.

  2. Välj Nästa.

  3. På fliken Granska + tilldela väljer du Granska + tilldela för att tilldela rollen med ett villkor.

    Efter en liten stund tilldelas säkerhetsobjektet rollen i det omfång som valts.

Skärmbild av rolltilldelningslistan efter tilldelning av roll.

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.

    Kommentar

    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

  1. Logga in på Azure Portal i ett nytt fönster.

  2. Logga in som den användare som du skapade tidigare.

  3. Öppna lagringskontot och containern som du skapade.

  4. Kontrollera att autentiseringsmetoden är inställd på Microsoft Entra-användarkonto och inte åtkomstnyckel.

Skärmbild av lagringscontainer med testfiler.

  1. Välj textfilen Baker.

    Du bör INTE kunna visa eller ladda ned bloben och ett meddelande om att auktoriseringen misslyckades ska visas.

  2. Välj Kaskadtextfil.

    Du bör kunna visa och ladda ned bloben.

Steg 7: Rensa resurser

  1. Ta bort rolltilldelningen som du lade till.

  2. Ta bort testlagringskontot som du skapade.

  3. Ta bort den användare som du skapade.

Nästa steg