Contrôle d’accès en fonction du rôle pour le service Azure Batch
Le service Azure Batch prend en charge un ensemble de rôles Azure intégrés qui fournissent différents niveaux d’autorisations au compte Azure Batch. En utilisant le contrôle d’accès en fonction du rôle Azure (Azure RBAC), un système d’autorisation permettant de gérer l’accès individuel aux ressources Azure, vous pouvez attribuer des autorisations spécifiques aux utilisateurs, aux principaux de service ou à d’autres identités qui doivent interagir avec votre compte Batch. Vous pouvez également attribuer des rôles personnalisés avec des permissions affinées et personnalisées qui s’adaptent à votre scénario d’utilisation spécifique.
Remarque
Tous les rôles RBAC (intégrés et personnalisés) sont destinés aux utilisateurs authentifiés par Microsoft Entra ID, et non aux informations d’identification de la clé partagée Batch. Les informations d’identification de la clé partagée Batch donnent des autorisations complètes sur le compte Batch.
Attribuer un rôle RBAC Azure
Suivez ces étapes pour attribuer un rôle RBAC Azure à un utilisateur, un groupe, un principal de service ou une identité managée. Pour connaître la procédure détaillée, consultez Attribuer des rôles Azure à l’aide du portail Azure.
Dans le Portail Azure, accédez à votre compte Batch spécifique.
Conseil
Vous pouvez également configurer Azure RBAC pour des groupes de ressources, des abonnements ou des groupes d’administration complets. Pour ce faire, sélectionnez le niveau d’étendue souhaité, puis accédez à l’élément souhaité. Par exemple, en sélectionnant Groupes de ressources, puis en accédant à un groupe de ressources spécifique.
Dans le menu de navigation de gauche, sélectionnez Contrôle d’accès (IAM) .
Sur la page Contrôle d’accès (IAM), sélectionnez Ajout de l’attribution de rôle.
Dans la page Ajouter une attribution de rôle, sélectionnez l’onglet Rôle, puis sélectionnez l’un des Rôles RBAC intégrés à Azure Batch.
Sélectionnez l’onglet Membres, puis Sélectionner des membres sous Membres.
Dans l’écran Sélectionner les membres, recherchez et sélectionnez un utilisateur, un groupe, un principal de service ou une identité managée, puis choisissez Sélectionner.
Remarque
Lors de la configuration d’une application pour authentifier les services Azure Batch avec le principal de service, recherchez et sélectionnez votre application ici pour configurer son accès et ses autorisations sur le compte Azure Batch.
Sélectionnez Vérifier + attribuer dans la page Ajouter une attribution de rôle.
L’identité cible doit maintenant apparaître sous l’onglet Attributions de rôle de la page Contrôle d’accès (IAM) du compte Batch.
Rôles RBAC intégrés à Azure Batch
Azure Batch est fourni avec certains rôles prédéfinis pour répondre aux scénarios d’utilisateur courants, garantissant ainsi que les niveaux d’accès appropriés sur le compte Azure Batch peuvent être attribués efficacement à une identité compte tenu de ses responsabilités spécifiques.
Rôle intégré Description Identifiant Contributeur de compte Azure Batch Octroie un accès complet pour gérer toutes les ressources Batch, y compris les comptes, pools et travaux Batch. 29fe4964-1e60-436b-bd3a-77fd4c178b3c Lecteur de compte Azure Batch Vous permet d’afficher toutes les ressources, y compris les pools et les travaux dans le compte Batch. 11076f67-66f6-4be0-8f6b-f0609fd05cc9 Contributeur de données Azure Batch Octroie des autorisations pour gérer les pools et les travaux Batch, mais pas pour modifier des comptes. 6aaa78f1-f7de-44ca-8722-c64a23943cae Expéditeur de travaux Azure Batch Vous permet d’envoyer et de gérer des travaux dans le compte Batch. 48e5e92e-a480-4e71-aa9c-2778f4c13781
autorisations Contributeur de compte Azure Batch Lecteur de compte Azure Batch Contributeur de données Azure Batch Expéditeur de travaux Azure Batch Lister les comptes Batch ou afficher les propriétés d’un compte Batch ✓ ✓ ✓ Créer, mettre à jour ou supprimer un compte Batch ✓ Lister les clés d’accès d’un compte Batch ✓ Régénérer les clés d’accès d’un compte Batch ✓ Lister ou afficher les propriétés des applications et des packages d’application sur un compte Batch ✓ ✓ ✓ ✓ Créer, mettre à jour ou supprimer des applications et des packages d’application sur un compte Batch ✓ ✓ Lister ou afficher les propriétés des certificats sur un compte Batch ✓ ✓ ✓ Créer, mettre à jour ou supprimer des certificats sur un compte Batch ✓ ✓ Lister ou afficher les propriétés des pools sur un compte Batch ✓ ✓ ✓ ✓ Créer, mettre à jour ou supprimer des pools sur un compte Batch ✓ ✓ Lister ou afficher les propriétés des travaux sur un compte Batch ✓ ✓ ✓ ✓ Créer, mettre à jour ou supprimer des travaux sur un compte Batch ✓ ✓ ✓ Lister ou afficher les propriétés des planifications de travaux sur un compte Batch ✓ ✓ ✓ ✓ Créer, mettre à jour ou supprimer des planifications de travaux sur un compte Batch ✓ ✓ ✓
Avertissement
La fonctionnalité de certificat de compte Batch a été mise hors service.
Contributeur de compte Azure Batch
Octroie un accès complet pour gérer toutes les ressources Batch, y compris les comptes, pools et travaux Batch.
Actions Description Microsoft.Authorization/*/read Lire les rôles et les attributions de rôle. Microsoft.Insights/alertRules/* Créer et gérer une alerte de métrique classique. Microsoft.Resources/deployments/* Créer et gérer un déploiement. Microsoft.Resources/subscriptions/resourceGroups/read Obtient ou répertorie les groupes de ressources. Microsoft.Batch/batchAccounts/* NotActions aucune DataActions Microsoft.Batch/batchAccounts/* NotDataActions aucune
{
"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"
}
Lecteur de compte Azure Batch
Vous permet d’afficher toutes les ressources, y compris les pools et les travaux dans le compte Batch.
Actions Description Microsoft.Batch/batchAccounts/read Liste les comptes Batch ou obtient les propriétés d’un compte Batch. Microsoft.Batch/batchAccounts/*/read Affiche toutes les ressources dans le compte Batch. Microsoft.Resources/subscriptions/resourceGroups/read Obtient ou répertorie les groupes de ressources. NotActions aucune DataActions Microsoft.Batch/*/read Affiche toutes les ressources dans le compte Batch. NotDataActions aucune
{
"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"
}
Contributeur de données Azure Batch
Octroie des autorisations pour gérer les pools et les travaux Batch, mais pas pour modifier des comptes.
Actions Description Microsoft.Authorization/*/read Lire les rôles et les attributions de rôle. Microsoft.Batch/batchAccounts/read Liste les comptes Batch ou obtient les propriétés d’un compte Batch. Microsoft.Batch/batchAccounts/applications/* Créer et gérer des applications et des packages d’application sur un compte Batch. Microsoft.Batch/batchAccounts/certificates/* Créer et gérer des certificats sur un compte Batch. Microsoft.Batch/batchAccounts/certificateOperationResults/* Obtient les résultats d’une opération de certificat de longue durée sur un compte Batch. Microsoft.Batch/pools/* Créer et gérer des pools sur un compte Batch. Microsoft.Batch/poolOperationResults/* Obtient les résultats d’une opération de pool de longue durée sur un compte Batch. Microsoft.Batch/locations/*/read Obtenir le résultat de l’opération de compte Batch, le quota Batch ou la taille de machine virtuelle prise en charge à l’emplacement donné. Microsoft.Insights/alertRules/* Créer et gérer une alerte de métrique classique. Microsoft.Resources/deployments/* Créer et gérer un déploiement. Microsoft.Resources/subscriptions/resourceGroups/read Obtient ou répertorie les groupes de ressources. NotActions aucune DataActions Microsoft.Batch/batchAccounts/jobSchedules/* Créer et gérer des planifications de travaux dans Azure Batch. Microsoft.Batch/batchAccounts/jobs/* Créer et gérer des travaux sur un compte Batch. NotDataActions aucune
{
"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"
}
Expéditeur de travaux Azure Batch
Vous permet d’envoyer et de gérer des travaux dans le compte Batch.
Actions Description Microsoft.Batch/batchAccounts/applications/read Liste les applications ou obtient les propriétés d’une application. Microsoft.Batch/batchAccounts/applications/versions/read Obtient les propriétés d’un package d’application. Microsoft.Batch/pools/read Liste les pools sur un compte Batch ou obtient les propriétés d’un pool. Microsoft.Insights/alertRules/* Créer et gérer une alerte de métrique classique. Microsoft.Resources/subscriptions/resourceGroups/read Obtient ou répertorie les groupes de ressources. NotActions aucune DataActions Microsoft.Batch/batchAccounts/jobSchedules/* Créer et gérer des planifications de travaux dans Azure Batch. Microsoft.Batch/batchAccounts/jobs/* Créer et gérer des travaux sur un compte Batch. NotDataActions aucune
{
"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"
}
Attribuer un rôle personnalisé
Si les rôles intégrés à Azure Batch ne répondent pas à vos besoins, vous pouvez utiliser des rôles personnalisés Azure pour octroyer une autorisation granulaire à un utilisateur pour l’envoi de travaux, de tâches, etc. Vous pouvez utiliser un rôle personnalisé pour octroyer ou refuser des autorisations à une instance Microsoft Entra ID pour les opérations RBAC Azure Batch suivantes.
- 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, pour toutes les opérations de lecture
- Microsoft.Batch/batchAccounts/listKeys/action, pour toutes les opérations
Conseil
Les travaux qui utilisent un pool automatique nécessitent des autorisations au niveau du pool.
Remarque
Certaines attributions de rôle doivent être spécifiées dans le champ actions
, tandis que d’autres doivent être spécifiées dans le champ dataActions
. Vous devez examiner à la fois actions
et dataActions
pour comprendre l’étendue complète des fonctionnalités attribuées à un rôle. Pour plus d’informations, consultez Opérations du fournisseur de ressources Azure.
L’exemple suivant montre une définition de rôle personnalisée 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":[
]
}
]
}
}