> For the complete documentation index, see [llms.txt](https://docs.realmjoin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.realmjoin.com/es/automatizacion/connecting-azure-automation/azure-ad-roles-and-permissions.md).

# Requisitos de ejecución de runbooks

Esta página de la wiki aborda qué requisitos y permisos (a nivel de sistema) deben concederse para que se puedan ejecutar runbooks.

## Módulos de PowerShell

{% hint style="info" %}
La sección PowerShell Modules se actualiza automáticamente en función de [repositorio público](https://github.com/realmjoin/realmjoin-runbooks).
{% endhint %}

Los runbooks compartidos disponibles en [GitHub](https://github.com/realmjoin/realmjoin-runbooks) esperan/usan los siguientes módulos de Windows PowerShell:

| Módulo                           | Versión mínima en runbooks |
| -------------------------------- | -------------------------- |
| `Az.Accounts`                    | 5.5.2                      |
| `Az.Compute`                     | 11.8.0                     |
| `Az.DesktopVirtualization`       | 6.0.0                      |
| `Az.ManagementPartner`           | 0.8.0                      |
| `Az.Storage`                     | 9.7.2                      |
| `ExchangeOnlineManagement`       | 3.9.2                      |
| `Microsoft.Graph.Authentication` | 2.39.0                     |
| `MicrosoftTeams`                 | 7.9.0                      |
| `PnP.PowerShell`                 | 3.4.1                      |
| `RealmJoin.RunbookHelper`        | 0.8.9                      |

RealmJoin Portal importará e instalará automáticamente estos módulos si se hace referencia a ellos desde dentro de un runbook. Esta importación también respetará las versiones mínimas especificadas para los módulos.

## Permisos

{% hint style="info" %}
La sección Permissions se actualiza automáticamente en función de [repositorio público](https://github.com/realmjoin/realmjoin-runbooks).
{% endhint %}

Los runbooks compartidos de RealmJoin usan la identidad administrada de Azure Automation [asignada por el sistema](https://learn.microsoft.com/en-us/azure/automation/enable-managed-identity-for-automation) para interactuar con Entra ID, la API de Microsoft Graph, etc.

La siguiente lista de roles y permisos le permitirá usar todos los runbooks actualmente disponibles en nuestro repositorio compartido.

No se recomienda reducir estos roles/permisos, ya que los runbooks solo se prueban con este conjunto de permisos. Si reduce el conjunto de roles/permisos, algunos runbooks dejarán de funcionar.

### Roles de Entra ID

Asigne los siguientes roles de Entra ID a la identidad administrada

* Desarrollador de aplicaciones
* Administrador de dispositivos en la nube
* Administrador de Exchange
* Administrador de Intune
* Administrador de Teams
* Administrador de usuarios

### Permisos de la API de Graph

Conceda a la identidad administrada los siguientes permisos de API de Graph

* `Application.ReadWrite.All`
* `Application.ReadWrite.OwnedBy`
* `AppRoleAssignment.ReadWrite.All`
* `AuditLog.Read.All`
* `BitlockerKey.Read.All`
* `Channel.ReadBasic.All`
* `ChannelMember.ReadWrite.All`
* `CloudPC.ReadWrite.All`
* `Device.ReadWrite.All`
* `DeviceLocalCredential.Read.All`
* `DeviceManagementApps.ReadWrite.All`
* `DeviceManagementConfiguration.ReadWrite.All`
* `DeviceManagementManagedDevices.PrivilegedOperations.All`
* `DeviceManagementManagedDevices.ReadWrite.All`
* `DeviceManagementServiceConfig.ReadWrite.All`
* `Directory.ReadWrite.All`
* `Group.Create`
* `Group.ReadWrite.All`
* `GroupMember.ReadWrite.All`
* `IdentityRiskyUser.ReadWrite.All`
* `InformationProtectionPolicy.Read.All`
* `Mail.Send`
* `Organization.Read.All`
* `Place.Read.All`
* `Policy.Read.All`
* `Reports.Read.All`
* `ReportSettings.ReadWrite.All`
* `RoleAssignmentSchedule.Read.Directory`
* `RoleManagement.Read.All`
* `RoleManagement.Read.Directory`
* `ServiceHealth.Read.All`
* `Team.Create`
* `TeamMember.ReadWrite.All`
* `TeamSettings.ReadWrite.All`
* `User.ReadWrite.All`
* `UserAuthenticationMethod.ReadWrite.All`
* `WindowsUpdates.ReadWrite.All`

### Otros permisos de API de aplicaciones

Conceda a la identidad administrada los siguientes permisos de API de Office 365 Exchange Online

* `Exchange.ManageAsApp`

Conceda a la identidad administrada los siguientes permisos de API de WindowsDefenderATP

* `Machine.Read.All`
* `Machine.Isolate`
* `Machine.RestrictExecution`
* `Ti.ReadWrite.All`

Conceda a la identidad administrada los siguientes permisos de API de SharePoint

* `User.Read.All`
* `Sites.Read.All`
* `Sites.FullControl.All`

### Asignación de roles y permisos

Actualmente no se pueden conceder permisos a identidades administradas usando Azure Portal. Recomendamos usar scripting de Microsoft Graph / PowerShell para ello.

{% hint style="info" %}
`Set-RJAutomationAccount` del módulo RealmJoin PowerShell — consulte [Conexión con Azure Automation](/es/automatizacion/connecting-azure-automation.md) — ya asigna los **permisos de API** que incluye para Microsoft Graph, Exchange Online, Defender y SharePoint cuando configura o actualiza la Automation Account.

No **no** asigna los **roles de Entra ID** indicados arriba, y su conjunto de permisos incluido se mantiene por separado de esta página, que se genera a partir del [repositorio de runbooks](https://github.com/realmjoin/realmjoin-runbooks). Use los scripts siguientes para los roles de Entra ID y para agregar cualquier permiso de API que necesite un runbook y que el módulo no cubra.
{% endhint %}

Puede encontrar un ejemplo de este proceso [aquí](https://github.com/Workplace-Foundation/approle-and-directoryrole-granter). Los archivos JSON que espera se publican en [repositorio de runbooks](https://github.com/realmjoin/realmjoin-runbooks/tree/production/docs/other/json):

```powershell
. .\GrantAppPermToEntApp.ps1 -enterpriseAppObjId "<ManagedIdentityObjectId>" -permissionsTemplate .\AllRealmJoinRunbooks_collected_permissions.json
. .\AssignAzureADRoleToEntApp.ps1 -objectId "<ManagedIdentityObjectId>" -rolesTemplate .\AllRealmJoinRunbooks_collected_rbacroles.json
```

El ID de objeto de la identidad administrada se muestra en Azure Portal, en la Automation Account, en Account Settings > Identity.

### Permisos de recursos de Azure

Conceda al menos acceso de "Contributor" a la suscripción o grupo de recursos que hospeda la cuenta de Azure Automation para los runbooks

Algunos runbooks usarán un Storage Account de Azure para almacenar informes o copias de seguridad. Conceda al menos acceso de "Contributor" a la suscripción o grupo de recursos correspondiente. La mayoría de los runbooks podrá entonces crear por sí mismos los recursos dentro del grupo de recursos.

## Métodos de autenticación

### Identidades administradas

Azure Automation admite [Identidades administradas](https://docs.microsoft.com/en-us/azure/automation/enable-managed-identity-for-automation) (asignada por el sistema) como la forma principal de autenticación. Esto reemplaza las cuentas RunAs obsoletas.

Actualmente, los RealmJoin Runbooks admiten cuentas RunAs si no hay configurada una identidad administrada.

{% hint style="warning" %}
Si una identidad administrada y una cuenta RunAs están configuradas al mismo tiempo, los runbooks del repositorio compartido de RealmJoin preferirán automáticamente usar la identidad administrada al usar versiones más recientes de nuestro `RealmJoin.RunbookHelper` Módulo a partir de v0.8.0.

Las versiones anteriores del módulo no podían aprovechar por completo las identidades administradas y preferían la cuenta RunAs.

Asegúrese de conceder los permisos necesarios a la identidad administrada o deshabilitarla por completo para usar solo la cuenta RunAs.
{% endhint %}

### Secreto de cliente

Algunos runbooks privados pueden necesitar una autenticación de tipo ClientID/Secret. Actualmente no hay runbooks compartidos que requieran ClientID y Secret.

Si es necesario, se puede almacenar un ClientID y un Secret en las credenciales administradas llamadas "realmjoin-automation-cred" en la Azure Automation Account.

Actualmente, el "realmjoin-automation-cred" en la cuenta de automatización lo crea RJ-Wizard de forma predeterminada, pero se rellena con valores aleatorios; habría que reemplazarlos por valores correctos.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.realmjoin.com/es/automatizacion/connecting-azure-automation/azure-ad-roles-and-permissions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
