Condividi tramite


Controllo degli accessi in base al ruolo per il servizio Azure Batch

Il servizio Azure Batch supporta un set di ruoli predefiniti di Azure che forniscono diversi livelli di autorizzazioni per l'account Azure Batch. Usando il controllo degli accessi in base al ruolo di Azure, un sistema di autorizzazione per la gestione dell'accesso individuale alle risorse di Azure, è possibile assegnare autorizzazioni specifiche a utenti, entità servizio o altre identità che devono interagire con l'account Batch. È anche possibile assegnare ruoli personalizzati con autorizzazioni personalizzate con granularità fine che adattano lo scenario di utilizzo specifico.

Nota

Tutti i ruoli RBAC (predefiniti e personalizzati) sono destinati agli utenti autenticati da Microsoft Entra ID, non per le credenziali della chiave condivisa di Batch. Le credenziali della chiave condivisa batch forniscono l'autorizzazione completa per l'account Batch.

Assegnare il controllo degli accessi in base al ruolo di Azure

Seguire questa procedura per assegnare un ruolo controllo degli accessi in base al ruolo di Azure a un utente, un gruppo, un'entità servizio o un'identità gestita. Per la procedura dettagliata, vedere Assegnare ruoli di Azure usando il portale di Azure.

  1. Nella portale di Azure passare all'account Batch specifico.

    Suggerimento

    Puoi anche configurare il controllo degli accessi in base al ruolo (RBAC) di Azure per gruppi di risorse, sottoscrizioni o gruppi di gestione interi. A tale scopo, selezionare il livello di ambito desiderato e andare all'elemento desiderato. Ad esempio, selezionando Gruppi di risorse e andando a un gruppo di risorse specifico.

  2. Selezionare Controllo di accesso (IAM) nel riquadro di spostamento a sinistra.

  3. Nella pagina Controllo di accesso (IAM), selezionare Aggiungi assegnazione di ruolo.

  4. Nella pagina Aggiungi assegnazione di ruolo selezionare la scheda Ruolo e quindi selezionare uno dei ruoli controllo degli accessi in base al ruolo predefiniti di Azure Batch.

  5. Selezionare la scheda Membri e selezionare Seleziona membri in Membri.

  6. Nella schermata Seleziona membri cercare e selezionare un utente, un gruppo, un'entità servizio o un'identità gestita e quindi selezionare Seleziona.

    Nota

    Quando si configura un'applicazione per autenticare i servizi di Azure Batch con l'entità servizio, cercare e selezionare l'applicazione qui per configurare l'accesso e le autorizzazioni per l'account Azure Batch.

  7. Selezionare Rivedi e assegna nella pagina Aggiungi assegnazione di ruolo.

L'identità di destinazione dovrebbe ora essere visualizzata nella scheda Assegnazioni di ruolo della pagina Controllo di accesso (IAM) dell'account Batch.

Ruoli predefiniti controllo degli accessi in base al ruolo di Azure Batch

Azure Batch ha alcuni ruoli predefiniti per affrontare scenari utente comuni, assicurando che i livelli di accesso appropriati nell'account Azure Batch possano essere assegnati in modo efficiente a un'identità per il proprio compito specifico.

Ruolo predefinito Descrizione ID
Collaboratore account Azure Batch Concede l'accesso completo per gestire tutte le risorse di Batch, inclusi account Batch, pool e processi. 29fe4964-1e60-436b-bd3a-77fd4c178b3c
Lettore account Azure Batch Consente di visualizzare tutte le risorse, inclusi pool e processi nell'account Batch. 11076f67-66f6-4be0-8f6b-f0609fd05cc9
Collaboratore ai dati di Azure Batch Concede le autorizzazioni per gestire pool e processi di Batch, ma non per modificare gli account. 6aaa78f1-f7de-44ca-8722-c64a23943cae
Inviatore processi di Azure Batch Consente di inviare e gestire processi nell'account Batch. 48e5e92e-a480-4e71-aa9c-2778f4c13781
Autorizzazioni Collaboratore account Azure Batch Lettore account Azure Batch Collaboratore ai dati di Azure Batch Inviatore processi di Azure Batch
Elencare gli account Batch o visualizzare le proprietà di un account Batch
Creare, aggiornare o eliminare un account Batch
Elencare le chiavi di accesso per un account Batch
Rigenerare le chiavi di accesso per un account Batch
Elencare o visualizzare le proprietà delle applicazioni e dei pacchetti dell'applicazione in un account Batch
Creare, aggiornare o eliminare applicazioni e pacchetti di applicazioni in un account Batch
Elencare o visualizzare le proprietà dei certificati in un account Batch
Creare, aggiornare o eliminare certificati in un account Batch
Elencare o visualizzare le proprietà dei pool in un account Batch
Creare, aggiornare o eliminare pool in un account Batch
Elencare o visualizzare le proprietà dei processi in un account Batch
Creare, aggiornare o eliminare processi in un account Batch
Elencare o visualizzare le proprietà delle pianificazioni dei processi in un account Batch
Creare, aggiornare o eliminare pianificazioni dei processi in un account Batch

Avviso

La funzionalità del certificato dell'account Batch è stata ritirata.

Collaboratore account Azure Batch

Concede l'accesso completo per gestire tutte le risorse di Batch, inclusi account Batch, pool e processi.

Azioni Descrizione
Microsoft.Authorization/*/read Legge i ruoli e le assegnazioni di ruoli.
Microsoft.Insights/alertRules/* Creare e gestire un avviso di metrica classico.
Microsoft.Resources/deployments/* Creare e gestire una distribuzione.
Microsoft.Resources/subscriptions/resourceGroups/read Ottiene o elenca i gruppi di risorse.
Microsoft.Batch/batchAccounts/*
NotActions
none
DataActions
Microsoft.Batch/batchAccounts/*
NotDataActions
none
{
    "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"
}

Lettore account Azure Batch

Consente di visualizzare tutte le risorse, inclusi pool e processi nell'account Batch.

Azioni Descrizione
Microsoft.Batch/batchAccounts/read Elenca gli account Batch o ottiene le proprietà di un account Batch.
Microsoft.Batch/batchAccounts/*/read Visualizzare tutte le risorse nell'account Batch.
Microsoft.Resources/subscriptions/resourceGroups/read Ottiene o elenca i gruppi di risorse.
NotActions
none
DataActions
Microsoft.Batch/*/read Visualizzare tutte le risorse nell'account Batch.
NotDataActions
none
{
    "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"
}

Collaboratore ai dati di Azure Batch

Concede le autorizzazioni per gestire pool e processi di Batch, ma non per modificare gli account.

Azioni Descrizione
Microsoft.Authorization/*/read Legge i ruoli e le assegnazioni di ruoli.
Microsoft.Batch/batchAccounts/read Elenca gli account Batch o ottiene le proprietà di un account Batch.
Microsoft.Batch/batchAccounts/applications/* Creare e gestire applicazioni e pacchetti di applicazioni in un account Batch.
Microsoft.Batch/batchAccounts/certificates/* Creare e gestire i certificati in un account Batch.
Microsoft.Batch/batchAccounts/certificateOperationResults/* Ottiene i risultati di un'operazione di certificato a esecuzione prolungata in un account Batch.
Microsoft.Batch/pools/* Creare e gestire pool in un account Batch.
Microsoft.Batch/poolOperationResults/* Ottiene i risultati di un'operazione del pool a esecuzione prolungata in un account Batch.
Microsoft.Batch/locations/*/read Ottenere il risultato dell'operazione dell'account Batch, la quota batch o le dimensioni della macchina virtuale supportate nella posizione specificata.
Microsoft.Insights/alertRules/* Creare e gestire un avviso di metrica classico.
Microsoft.Resources/deployments/* Creare e gestire una distribuzione.
Microsoft.Resources/subscriptions/resourceGroups/read Ottiene o elenca i gruppi di risorse.
NotActions
none
DataActions
Microsoft.Batch/batchAccounts/jobSchedules/* Creare e gestire le pianificazioni dei processi in un account Batch.
Microsoft.Batch/batchAccounts/jobs/* Creare e gestire processi in un account Batch.
NotDataActions
none
{
    "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"
}

Inviatore processi di Azure Batch

Consente di inviare e gestire processi nell'account Batch.

Azioni Descrizione
Microsoft.Batch/batchAccounts/applications/read Elenca le applicazioni o ottiene le proprietà di un'applicazione.
Microsoft.Batch/batchAccounts/applications/versions/read Ottiene le proprietà di un pacchetto dell'applicazione.
Microsoft.Batch/pools/read Elenca i pool in un account Batch o ottiene le proprietà di un pool.
Microsoft.Insights/alertRules/* Creare e gestire un avviso di metrica classico.
Microsoft.Resources/subscriptions/resourceGroups/read Ottiene o elenca i gruppi di risorse.
NotActions
none
DataActions
Microsoft.Batch/batchAccounts/jobSchedules/* Creare e gestire le pianificazioni dei processi in un account Batch.
Microsoft.Batch/batchAccounts/jobs/* Creare e gestire processi in un account Batch.
NotDataActions
none
{
    "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"
}

Assegnare un ruolo personalizzato

Se i ruoli predefiniti di Azure Batch non soddisfano le proprie esigenze, è possibile usare i ruoli personalizzati di Azure per concedere autorizzazioni granulari a un utente per l'invio di processi, attività e altro ancora. È possibile usare un ruolo personalizzato per concedere o negare le autorizzazioni a un ID Microsoft Entra per le operazioni di controllo degli accessi in base al ruolo di Azure Batch seguenti.

  • 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, per qualsiasi operazione di lettura
  • Microsoft.Batch/batchAccounts/listKeys/action, per qualsiasi operazione

Suggerimento

I processi che usano il pool automatico richiedono autorizzazioni di scrittura a livello di pool.

Nota

Alcune assegnazioni di ruolo devono essere specificate nel campo actions, mentre altre devono essere specificate nel campo dataActions. È necessario esaminare sia actions che dataActions per comprendere l'ambito completo delle funzionalità assegnate a un ruolo. Per altre informazioni, vedere Operazioni del provider di risorse di Azure.

L'esempio seguente mostra una definizione di ruolo personalizzato di 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":[

        ]
      }
    ]
  }
}

Passaggi successivi