Compartir a través de


Control de acceso basado en rol para el servicio Azure Batch

Azure Batch Service admite un conjunto de roles integrados de Azure que proporcionan distintos niveles de permisos a la cuenta de Azure Batch. Mediante el control de acceso basado en rol de Azure (Azure RBAC), un sistema de autorización para administrar el acceso individual a los recursos de Azure, podría asignar permisos específicos a usuarios, entidades de servicio u otras identidades que necesiten interactuar con su cuenta de Batch. También puede asignar roles personalizados con permisos personalizados y específicos que adapten su escenario de uso específico.

Nota:

Todos los roles RBAC (integrados y personalizados) son para los usuarios autenticados por Microsoft Entra ID, no para las credenciales de clave compartida de Batch. Las credenciales de clave compartida de Batch conceden permiso completo a la cuenta de Batch.

Asignación de RBAC de Azure

Siga estos pasos para asignar un rol de RBAC de Azure a un usuario, grupo, entidad de servicio o identidad administrada. Para obtener los pasos detallados, consulte Asignación de roles de Azure mediante Azure Portal.

  1. En Azure Portal, vaya a su cuenta específica de Batch.

    Sugerencia

    También puede configurar Azure RBAC para grupos de recursos completos, suscripciones o grupos de administración. Para ello, seleccione el nivel de ámbito deseado y, después, vaya al elemento deseado. Por ejemplo, seleccione Grupos de recursos y vaya a un grupo de recursos específico.

  2. Seleccione Control de acceso (IAM) en el panel de navegación izquierdo.

  3. En la página Control de acceso (IAM), seleccione Agregar asignación de roles.

  4. En la página Agregar asignación de roles, seleccione la pestaña Rol y, a continuación, seleccione uno de los roles RBAC integrados de Azure Batch.

  5. Seleccione la pestaña Miembros y seleccione Seleccionar miembros en Miembros.

  6. En la pantalla Seleccionar miembros, busque y seleccione un usuario, grupo, entidad de servicio o identidad administrada y, a continuación, seleccione Seleccionar.

    Nota:

    Al configurar una aplicación para autenticar los servicios de Azure Batch con la entidad de servicio, busque y seleccione la aplicación aquí para configurar su acceso y permisos en la cuenta de Azure Batch.

  7. Seleccione Revisar y asignar en la página Adición de asignación de roles.

La identidad de destino debería aparecer ahora en la pestaña Asignaciones de roles de la página Control de acceso (IAM) de la cuenta de Batch.

Roles RBAC integrados de Azure Batch

Azure Batch tiene algunos roles predefinidos para abordar escenarios de usuario comunes, lo que garantiza que los niveles de acceso adecuados en la cuenta de Azure Batch se puedan asignar de forma eficaz a una identidad para su deber específico.

Rol integrado Descripción ID
Colaborador de la cuenta de Azure Batch Concede acceso total para administrar todos los recursos de Batch, incluidas las cuentas, los grupos y los trabajos de Batch. 29fe4964-1e60-436b-bd3a-77fd4c178b3c
Lector de cuentas de Azure Batch Permite ver todos los recursos, incluidos los grupos y los trabajos de la cuenta de Batch. 11076f67-66f6-4be0-8f6b-f0609fd05cc9
Colaborador de datos de Azure Batch Concede permisos para administrar grupos y trabajos de Batch, pero no modificar cuentas. 6aaa78f1-f7de-44ca-8722-c64a23943cae
Remitente de trabajos de Azure Batch Permite enviar y administrar trabajos en la cuenta de Batch. 48e5e92e-a480-4e71-aa9c-2778f4c13781
Permisos Colaborador de la cuenta de Azure Batch Lector de cuentas de Azure Batch Colaborador de datos de Azure Batch Remitente de trabajos de Azure Batch
Enumerar las cuentas de Batch o ver las propiedades de una cuenta de Batch
Creación, actualización o eliminación de una cuenta de Batch
Enumeración de claves de acceso para una cuenta de Batch
Regeneración de claves de acceso para una cuenta de Batch
Enumerar o ver propiedades de aplicaciones y paquetes de aplicación en una cuenta de Batch
Creación, actualización o eliminación de aplicaciones y paquetes de aplicación en una cuenta de Batch
Enumerar o ver las propiedades de los certificados en una cuenta de Batch
Creación, actualización o eliminación de certificados en una cuenta de Batch
Enumerar o ver las propiedades de los grupos en una cuenta de Batch
Creación, actualización o eliminación de grupos en una cuenta de Batch
Enumerar o ver las propiedades de los trabajos en una cuenta de Batch
Creación, actualización o eliminación de trabajos en una cuenta de Batch
Enumerar o ver las propiedades de las programaciones de trabajo en una cuenta de Batch
Creación, actualización o eliminación de programaciones de trabajos en una cuenta de Batch

Advertencia

La característica de certificado de cuenta de Batch se ha retirado.

Colaborador de la cuenta de Azure Batch

Concede acceso total para administrar todos los recursos de Batch, incluidas las cuentas, los grupos y los trabajos de Batch.

Acciones Descripción
Microsoft.Authorization/*/read Roles de lectura y asignaciones de roles.
Microsoft.Insights/alertRules/* Cree y administre una alerta de métrica clásica.
Microsoft.Resources/deployments/* Permite crear y administrar una implementación.
Microsoft.Resources/subscriptions/resourceGroups/read Obtiene o enumera los grupos de recursos.
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"
}

Lector de cuentas de Azure Batch

Permite ver todos los recursos, incluidos los grupos y los trabajos de la cuenta de Batch.

Acciones Descripción
Microsoft.Batch/batchAccounts/read Enumera las cuentas de Batch u obtiene las propiedades de una cuenta de Batch.
Microsoft.Batch/batchAccounts/*/read Ver todos los recursos de la cuenta de Batch.
Microsoft.Resources/subscriptions/resourceGroups/read Obtiene o enumera los grupos de recursos.
NotActions
none
DataActions
Microsoft.Batch/*/read Ver todos los recursos de la cuenta de 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"
}

Colaborador de datos de Azure Batch

Concede permisos para administrar grupos y trabajos de Batch, pero no modificar cuentas.

Acciones Descripción
Microsoft.Authorization/*/read Roles de lectura y asignaciones de roles.
Microsoft.Batch/batchAccounts/read Enumera las cuentas de Batch u obtiene las propiedades de una cuenta de Batch.
Microsoft.Batch/batchAccounts/applications/* Cree y administre aplicaciones y paquetes de aplicación en una cuenta de Batch.
Microsoft.Batch/batchAccounts/certificates/* Cree y administre certificados en una cuenta de Batch.
Microsoft.Batch/batchAccounts/certificateOperationResults/* Obtiene los resultados de una operación de certificado de larga duración en una cuenta de Batch.
Microsoft.Batch/pools/* Cree y administre grupos en una cuenta de Batch.
Microsoft.Batch/poolOperationResults/* Obtiene los resultados de una operación de grupo de larga duración en una cuenta de Batch.
Microsoft.Batch/locations/*/read Obtenga el resultado de la operación de la cuenta de Batch, la cuota de Batch o el tamaño de máquina virtual admitido en la ubicación especificada.
Microsoft.Insights/alertRules/* Cree y administre una alerta de métrica clásica.
Microsoft.Resources/deployments/* Permite crear y administrar una implementación.
Microsoft.Resources/subscriptions/resourceGroups/read Obtiene o enumera los grupos de recursos.
NotActions
none
DataActions
Microsoft.Batch/batchAccounts/jobSchedules/* Cree y administre programaciones de trabajos en una cuenta de Batch.
Microsoft.Batch/batchAccounts/jobs/* Cree y administre trabajos en una cuenta de 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"
}

Remitente de trabajos de Azure Batch

Permite enviar y administrar trabajos en la cuenta de Batch.

Acciones Descripción
Microsoft.Batch/batchAccounts/applications/read Enumera las aplicaciones u obtiene las propiedades de una aplicación.
Microsoft.Batch/batchAccounts/applications/versions/read Obtiene las propiedades de un paquete de aplicación.
Microsoft.Batch/pools/read Enumera los grupos de una cuenta de Batch o obtiene las propiedades de un grupo.
Microsoft.Insights/alertRules/* Cree y administre una alerta de métrica clásica.
Microsoft.Resources/subscriptions/resourceGroups/read Obtiene o enumera los grupos de recursos.
NotActions
none
DataActions
Microsoft.Batch/batchAccounts/jobSchedules/* Cree y administre programaciones de trabajos en una cuenta de Batch.
Microsoft.Batch/batchAccounts/jobs/* Cree y administre trabajos en una cuenta de 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"
}

Asignación de un rol personalizado

Si los roles integrados de Azure Batch no satisfacen sus necesidades, roles personalizados de Azure se podría usar para conceder permisos pormenorizados a un usuario para enviar trabajos, tareas y mucho más. Puede usar un rol personalizado para conceder o denegar permisos a un Microsoft Entra ID para las siguientes operaciones de RBAC de Azure Batch.

  • 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, para cualquier operación de lectura
  • Microsoft.Batch/batchAccounts/listKeys/action, para cualquier operación

Sugerencia

Los trabajos que usan grupo automático requieren permisos de escritura de nivel de grupo.

Nota:

Ciertas asignaciones de roles deben especificarse en el campo actions, mientras que otras deben especificarse en el campo dataActions. Debe examinar tanto actions y dataActions para comprender el ámbito completo de las funcionalidades asignadas a un rol. Para más información, consulte Operaciones del proveedor de recursos de Azure.

En el ejemplo siguiente se muestra una definición de roles personalizados de 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":[

        ]
      }
    ]
  }
}

Pasos siguientes