Dela via


Anpassade roller för Azure Container Registry

Azure Container Registry (ACR) stöder rollbaserad åtkomstkontroll i Azure (RBAC) för att hantera åtkomst till registret. Om ingen av de inbyggda rollerna i Azure Container Registry passar dina behov kan du skapa anpassade roller med detaljerade behörigheter som är skräddarsydda för ditt scenario. I den här artikeln beskrivs stegen för att definiera, skapa och tilldela anpassade roller för Azure Container Registry.

Anpassade rollbehörigheter

En uppsättning behörigheter (åtgärder och dataåtgärder) definierar en anpassad roll. De behörigheter som definieras i den anpassade rollen avgör vilka åtgärder användarna kan utföra på registerresurser.

För att avgöra vilka behörigheter (åtgärder och dataåtgärder) som ska definieras i en anpassad roll kan du:

Om du vill visa en programmässig lista över alla tillgängliga behörigheter (åtgärder och dataåtgärder) för Microsoft.ContainerRegistry resursprovidern kan du använda följande Azure CLI- eller Azure PowerShell-kommandon.

az provider operation show --namespace Microsoft.ContainerRegistry
Get-AzProviderOperation -OperationSearchString Microsoft.ContainerRegistry/*

Exempel: Anpassad roll för att hantera webhooks

Följande JSON definierar till exempel minsta behörigheter (åtgärder och dataåtgärder) för en anpassad roll som tillåter hantering av ACR-webhooks.

{
   "assignableScopes": [
     "/subscriptions/<optional, but you can limit the visibility to one or more subscriptions>"
   ],
   "description": "Manage Azure Container Registry webhooks.",
   "Name": "Container Registry Webhook Contributor",
   "permissions": [
     {
       "actions": [
         "Microsoft.ContainerRegistry/registries/webhooks/read",
         "Microsoft.ContainerRegistry/registries/webhooks/write",
         "Microsoft.ContainerRegistry/registries/webhooks/delete"
       ],
       "dataActions": [],
       "notActions": [],
       "notDataActions": []
     }
   ],
   "roleType": "CustomRole"
 }

Skapa eller uppdatera en anpassad roll

Information om hur du definierar en anpassad roll med en JSON-definition finns i steg för att skapa en anpassad roll. Du kan skapa den anpassade rollen med hjälp av Azure CLI, Azure Resource Manager-mallen eller Azure PowerShell.

Anmärkning

I klientorganisationer som har konfigurerats med en privat länk för Azure Resource Manager stöder Azure Container Registry wildcard-åtgärder, till exempel eller Microsoft.ContainerRegistry/*/read i anpassade roller, vilket ger åtkomst till alla matchande åtgärder. I en klientorganisation utan en privat ARM-länk ska du inte använda jokertecken och ange alla nödvändiga registeråtgärder individuellt i en anpassad roll.

Tilldela en anpassad roll

Lägg till eller ta bort rolltilldelningar för en anpassad roll på samma sätt som du hanterar rolltilldelningar för inbyggda roller. Läs mer om att tilldela Azure-roller till en Azure-identitet med hjälp av Azure Portal, Azure CLI, Azure PowerShell eller andra Azure-verktyg.

Nästa steg