Rollbaserad åtkomstkontroll för Azure Batch-tjänsten
Azure Batch Service stöder en uppsättning inbyggda Azure-roller som ger olika behörighetsnivåer till Azure Batch-kontot. Genom att använda rollbaserad åtkomstkontroll i Azure (Azure RBAC), ett auktoriseringssystem för hantering av individuell åtkomst till Azure-resurser, kan du tilldela specifika behörigheter till användare, tjänsthuvudnamn eller andra identiteter som behöver interagera med ditt Batch-konto. Du kan också tilldela anpassade roller med anpassade, detaljerade behörigheter som anpassar ditt specifika användningsscenario.
Kommentar
Alla RBAC-roller (både inbyggda och anpassade) är för användare som autentiseras av Microsoft Entra-ID, inte för autentiseringsuppgifterna för delad Batch-nyckel. Autentiseringsuppgifterna för den delade batchnyckeln ger fullständig behörighet till Batch-kontot.
Tilldela Azure RBAC
Följ de här stegen för att tilldela en Azure RBAC-roll till en användare, grupp, tjänstens huvudnamn eller hanterade identitet. Detaljerade steg finns i Tilldela Azure-roller med hjälp av Azure Portal.
I Azure Portal går du till ditt specifika Batch-konto.
Dricks
Du kan också konfigurera Azure RBAC för hela resursgrupper, prenumerationer eller hanteringsgrupper. Gör detta genom att välja önskad omfångsnivå och sedan navigera till önskat objekt. Du kan till exempel välja Resursgrupper och sedan navigera till en specifik resursgrupp.
Välj Åtkomstkontroll (IAM) i det vänstra navigeringsfältet.
På sidan Åtkomstkontroll (IAM) väljer du Lägg till rolltilldelning.
På sidan Lägg till rolltilldelning väljer du fliken Roll och väljer sedan en av de inbyggda RBAC-rollerna i Azure Batch.
Välj fliken Medlemmar och välj Välj medlemmar under Medlemmar.
På skärmen Välj medlemmar söker du efter och väljer en användare, grupp, tjänstens huvudnamn eller hanterade identitet och väljer sedan Välj.
Kommentar
När du konfigurerar ett program för att autentisera Azure Batch-tjänster med tjänstens huvudnamn söker du efter och väljer ditt program här för att konfigurera dess åtkomst och behörigheter till Azure Batch-kontot.
Välj Granska + tilldela på sidan Lägg till rolltilldelning .
Målidentiteten bör nu visas på fliken Rolltilldelningar på sidan Åtkomstkontroll för Batch-kontot (IAM).
Inbyggda RBAC-roller i Azure Batch
Azure Batch har vissa fördefinierade roller för att hantera vanliga användarscenarier, vilket säkerställer att lämpliga åtkomstnivåer för Azure Batch-kontot effektivt kan tilldelas till en identitet för deras specifika plikt.
Inbyggd roll beskrivning ID Azure Batch-kontodeltagare Ger fullständig åtkomst för att hantera alla Batch-resurser, inklusive Batch-konton, pooler och jobb. 29fe4964-1e60-436b-bd3a-77fd4c178b3c Azure Batch-kontoläsare Gör att du kan visa alla resurser, inklusive pooler och jobb i Batch-kontot. 11076f67-66f6-4be0-8f6b-f0609fd05cc9 Azure Batch-datadeltagare Ger behörighet att hantera Batch-pooler och -jobb, men inte att ändra konton. 6aaa78f1-f7de-44ca-8722-c64a23943cae Skicka Azure Batch-jobb Gör att du kan skicka och hantera jobb i Batch-kontot. 48e5e92e-a480-4e71-aa9c-2778f4c13781
Behörigheter Azure Batch-kontodeltagare Azure Batch-kontoläsare Azure Batch-datadeltagare Skicka Azure Batch-jobb Lista Batch-konton eller visa egenskaper för ett Batch-konto ✓ ✓ ✓ Skapa, uppdatera eller ta bort ett Batch-konto ✓ Visa en lista över åtkomstnycklar för ett Batch-konto ✓ Återskapa åtkomstnycklar för ett Batch-konto ✓ Lista eller visa egenskaper för program och programpaket på ett Batch-konto ✓ ✓ ✓ ✓ Skapa, uppdatera eller ta bort program och programpaket på ett Batch-konto ✓ ✓ Lista eller visa egenskaper för certifikat på ett Batch-konto ✓ ✓ ✓ Skapa, uppdatera eller ta bort certifikat på ett Batch-konto ✓ ✓ Lista eller visa egenskaper för pooler på ett Batch-konto ✓ ✓ ✓ ✓ Skapa, uppdatera eller ta bort pooler på ett Batch-konto ✓ ✓ Lista eller visa egenskaper för jobb på ett Batch-konto ✓ ✓ ✓ ✓ Skapa, uppdatera eller ta bort jobb på ett Batch-konto ✓ ✓ ✓ Lista eller visa egenskaper för jobbscheman på ett Batch-konto ✓ ✓ ✓ ✓ Skapa, uppdatera eller ta bort jobbscheman för ett Batch-konto ✓ ✓ ✓
Azure Batch-kontodeltagare
Ger fullständig åtkomst för att hantera alla Batch-resurser, inklusive Batch-konton, pooler och jobb.
Åtgärder Beskrivning Microsoft.Authorization/*/read Läsa roller och rolltilldelningar. Microsoft.Insights/alertRules/* Skapa och hantera en klassisk måttavisering. Microsoft.Resources/deployments/* Skapa och hantera en distribution. Microsoft.Resources/subscriptions/resourceGroups/read Hämtar eller listar resursgrupper. Microsoft.Batch/batchAccounts/* NotActions ingen DataActions Microsoft.Batch/batchAccounts/* NotDataActions ingen
{
"assignableScopes": [
"/"
],
"description": "Grants full access to manage all Batch resources, including Batch accounts, pools and jobs.",
"id": "/providers/Microsoft.Authorization/roleDefinitions/29fe4964-1e60-436b-bd3a-77fd4c178b3c",
"permissions": [
{
"actions": [
"Microsoft.Authorization/*/read",
"Microsoft.Batch/batchAccounts/*",
"Microsoft.Insights/alertRules/*",
"Microsoft.Resources/deployments/*",
"Microsoft.Resources/subscriptions/resourceGroups/read"
],
"dataActions": [
"Microsoft.Batch/batchAccounts/*"
],
"notActions": [],
"notDataActions": []
}
],
"roleName": "Azure Batch Account Contributor",
"roleType": "BuiltInRole",
"type": "Microsoft.Authorization/roleDefinitions"
}
Azure Batch-kontoläsare
Gör att du kan visa alla resurser, inklusive pooler och jobb i Batch-kontot.
Åtgärder beskrivning Microsoft.Batch/batchAccounts/read Visar Batch-konton eller hämtar egenskaperna för ett Batch-konto. Microsoft.Batch/batchAccounts/*/read Visa alla resurser i Batch-kontot. Microsoft.Resources/subscriptions/resourceGroups/read Hämtar eller listar resursgrupper. NotActions ingen DataActions Microsoft.Batch/*/read Visa alla resurser i Batch-kontot. NotDataActions ingen
{
"assignableScopes": [
"/"
],
"description": "Lets you view all resources including pools and jobs in the Batch account.",
"id": "/providers/Microsoft.Authorization/roleDefinitions/11076f67-66f6-4be0-8f6b-f0609fd05cc9",
"permissions": [
{
"actions": [
"Microsoft.Batch/batchAccounts/read",
"Microsoft.Batch/batchAccounts/*/read",
"Microsoft.Resources/subscriptions/resourceGroups/read"
],
"dataActions": [
"Microsoft.Batch/batchAccounts/*/read"
],
"notActions": [],
"notDataActions": []
}
],
"roleName": "Azure Batch Account Reader",
"roleType": "BuiltInRole",
"type": "Microsoft.Authorization/roleDefinitions"
}
Azure Batch-datadeltagare
Ger behörighet att hantera Batch-pooler och -jobb, men inte att ändra konton.
Åtgärder Beskrivning Microsoft.Authorization/*/read Läsa roller och rolltilldelningar. Microsoft.Batch/batchAccounts/read Visar Batch-konton eller hämtar egenskaperna för ett Batch-konto. Microsoft.Batch/batchAccounts/applications/* Skapa och hantera program och programpaket på ett Batch-konto. Microsoft.Batch/batchAccounts/certificates/* Skapa och hantera certifikat på ett Batch-konto. Microsoft.Batch/batchAccounts/certificateOperationResults/* Hämtar resultatet av en tidskrävande certifikatåtgärd på ett Batch-konto. Microsoft.Batch/pools/* Skapa och hantera pooler på ett Batch-konto. Microsoft.Batch/poolOperationResults/* Hämtar resultatet av en tidskrävande poolåtgärd på ett Batch-konto. Microsoft.Batch/locations/*/read Hämta batchkontoåtgärdsresultat/Batch-kvot/vm-storlek som stöds på den angivna platsen. Microsoft.Insights/alertRules/* Skapa och hantera en klassisk måttavisering. Microsoft.Resources/deployments/* Skapa och hantera en distribution. Microsoft.Resources/subscriptions/resourceGroups/read Hämtar eller listar resursgrupper. NotActions ingen DataActions Microsoft.Batch/batchAccounts/jobSchedules/* Skapa och hantera jobbscheman på ett Batch-konto. Microsoft.Batch/batchAccounts/jobs/* Skapa och hantera jobb på ett Batch-konto. NotDataActions ingen
{
"assignableScopes": [
"/"
],
"description": "Grants permissions to manage Batch pools and jobs but not to modify accounts.",
"id": "/providers/Microsoft.Authorization/roleDefinitions/6aaa78f1-f7de-44ca-8722-c64a23943cae",
"permissions": [
{
"actions": [
"Microsoft.Authorization/*/read",
"Microsoft.Batch/batchAccounts/read",
"Microsoft.Batch/batchAccounts/applications/*",
"Microsoft.Batch/batchAccounts/certificates/*",
"Microsoft.Batch/batchAccounts/certificateOperationResults/*",
"Microsoft.Batch/batchAccounts/pools/*",
"Microsoft.Batch/batchAccounts/poolOperationResults/*",
"Microsoft.Batch/locations/*/read",
"Microsoft.Insights/alertRules/*",
"Microsoft.Resources/deployments/*",
"Microsoft.Resources/subscriptions/resourceGroups/read"
],
"dataActions": [
"Microsoft.Batch/batchAccounts/jobSchedules/*",
"Microsoft.Batch/batchAccounts/jobs/*"
],
"notActions": [],
"notDataActions": []
}
],
"roleName": "Azure Batch Data Contributor",
"roleType": "BuiltInRole",
"type": "Microsoft.Authorization/roleDefinitions"
}
Skicka Azure Batch-jobb
Gör att du kan skicka och hantera jobb i Batch-kontot.
Åtgärder beskrivning Microsoft.Batch/batchAccounts/applications/read Visar en lista över program eller hämtar egenskaperna för ett program. Microsoft.Batch/batchAccounts/applications/versions/read Hämtar egenskaperna för ett programpaket. Microsoft.Batch/pools/read Visar pooler på ett Batch-konto eller hämtar egenskaperna för en pool. Microsoft.Insights/alertRules/* Skapa och hantera en klassisk måttavisering. Microsoft.Resources/subscriptions/resourceGroups/read Hämtar eller listar resursgrupper. NotActions ingen DataActions Microsoft.Batch/batchAccounts/jobSchedules/* Skapa och hantera jobbscheman på ett Batch-konto. Microsoft.Batch/batchAccounts/jobs/* Skapa och hantera jobb på ett Batch-konto. NotDataActions ingen
{
"assignableScopes": [
"/"
],
"description": "Lets you submit and manage jobs in the Batch account.",
"id": "/providers/Microsoft.Authorization/roleDefinitions/48e5e92e-a480-4e71-aa9c-2778f4c13781",
"permissions": [
{
"actions": [
"Microsoft.Batch/batchAccounts/applications/read",
"Microsoft.Batch/batchAccounts/applications/versions/read",
"Microsoft.Batch/batchAccounts/pools/read",
"Microsoft.Insights/alertRules/*",
"Microsoft.Resources/subscriptions/resourceGroups/read"
],
"dataActions": [
"Microsoft.Batch/batchAccounts/jobSchedules/*",
"Microsoft.Batch/batchAccounts/jobs/*"
],
"notActions": [],
"notDataActions": []
}
],
"roleName": "Azure Batch Job Submitter",
"roleType": "BuiltInRole",
"type": "Microsoft.Authorization/roleDefinitions"
}
Tilldela en anpassad roll
Om inbyggda Azure Batch-roller inte uppfyller dina behov kan anpassade Azure-roller användas för att ge detaljerad behörighet till en användare för att skicka jobb, uppgifter med mera. Du kan använda en anpassad roll för att bevilja eller neka behörigheter till ett Microsoft Entra-ID för följande Azure Batch RBAC-åtgärder.
- Microsoft.Batch/batchAccounts/pools/write
- Microsoft.Batch/batchAccounts/pools/delete
- Microsoft.Batch/batchAccounts/pools/read
- Microsoft.Batch/batchAccounts/jobSchedules/write
- Microsoft.Batch/batchAccounts/jobSchedules/delete
- Microsoft.Batch/batchAccounts/jobSchedules/read
- Microsoft.Batch/batchAccounts/jobs/write
- Microsoft.Batch/batchAccounts/jobs/delete
- Microsoft.Batch/batchAccounts/jobs/read
- Microsoft.Batch/batchAccounts/certificates/write
- Microsoft.Batch/batchAccounts/certificates/delete
- Microsoft.Batch/batchAccounts/certificates/read
- Microsoft.Batch/batchAccounts/applications/write
- Microsoft.Batch/batchAccounts/applications/delete
- Microsoft.Batch/batchAccounts/applications/read
- Microsoft.Batch/batchAccounts/applications/versions/write
- Microsoft.Batch/batchAccounts/applications/versions/delete
- Microsoft.Batch/batchAccounts/applications/versions/read
- Microsoft.Batch/batchAccounts/read för alla läsåtgärder
- Microsoft.Batch/batchAccounts/listKeys/action, för alla åtgärder
Dricks
Jobb som använder automatisk pool kräver skrivbehörigheter på poolnivå.
Kommentar
Vissa rolltilldelningar måste anges i fältet actions
, medan andra måste anges i fältet dataActions
. Du måste undersöka båda actions
och dataActions
förstå den fullständiga omfattningen av funktioner som tilldelats till en roll. Mer information finns i Åtgärder för Azure-resursprovider.
I följande exempel visas en anpassad rolldefinition för Azure Batch:
{
"properties":{
"roleName":"Azure Batch Custom Job Submitter",
"type":"CustomRole",
"description":"Allows a user to submit autopool jobs to Azure Batch",
"assignableScopes":[
"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
],
"permissions":[
{
"actions":[
"Microsoft.Batch/*/read",
"Microsoft.Batch/batchAccounts/pools/write",
"Microsoft.Batch/batchAccounts/pools/delete",
"Microsoft.Authorization/*/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Support/*",
"Microsoft.Insights/alertRules/*"
],
"notActions":[
],
"dataActions":[
"Microsoft.Batch/batchAccounts/jobs/*",
"Microsoft.Batch/batchAccounts/jobSchedules/*"
],
"notDataActions":[
]
}
]
}
}