> 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.md).

# Conexión con Azure Automation

## Descripción general

{% embed url="<https://www.youtube.com/watch?v=Ijp9XnE8UuA>" %}

Para permitir que RealmJoin Portal entregue [runbooks ](/es/automatizacion/runbooks.md)para automatizar tareas diarias, debes conectar una [Azure Automation](https://learn.microsoft.com/en-us/azure/automation/overview) cuenta. Esta Automation Account actuará como el host de tus runbooks y proporcionará los [permisos](/es/automatizacion/connecting-azure-automation/azure-ad-roles-and-permissions.md) necesarios para que los runbooks funcionen dentro de tu entorno.

## Consideraciones

La [Identidad administrada](https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview) requiere amplios [permisos ](/es/automatizacion/connecting-azure-automation/azure-ad-roles-and-permissions.md)en tu entorno, como la capacidad de modificar objetos de grupo o de usuario en Entra ID o administrar buzones en Exchange Online. Limita el acceso administrativo a esta cuenta para evitar el uso indebido de estos privilegios.

Al usar una Automation Account existente, ten en cuenta que RealmJoin Portal crea, actualiza y elimina automáticamente los runbooks procedentes del [repositorio compartido en línea de runbooks](https://github.com/realmjoin/realmjoin-runbooks). Esta funcionalidad puede no ser compatible en una Automation Account existente. Si no estás seguro, recomendamos crear una Azure Automation Account dedicada para RealmJoin Runbooks.

## Requisitos previos

* privilegios de Administrador global
* Acceso a PowerShell con el [Az](https://learn.microsoft.com/en-us/powershell/azure/?view=azps-15.3.0) módulo o [AZ CLI](https://learn.microsoft.com/en-us/cli/azure/?view=azure-cli-latest)
* permisos de Colaborador en una suscripción de Azure
* [Requisitos de los runbooks](/es/automatizacion/connecting-azure-automation/azure-ad-roles-and-permissions.md)

## Instrucciones

{% stepper %}
{% step %}

#### Crea una cuenta de Azure Automation

1. Ve a tu [Azure Portal > Automation Accounts](https://portal.azure.com/#create/Microsoft.AutomationAccount)
2. Crea una nueva Automation Account
3. En la pestaña Conceptos básicos, elige la suscripción, el grupo de recursos, el nombre de la Automation Account y la región que desees<br>

   <figure><img src="/files/2379bc745456e9be05366e24c000466523dd01ba" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
Se recomienda un grupo de recursos separado para tu Automation Account
{% endhint %}

4. En la pestaña Avanzado, asegúrate de que la Identidad administrada asignada por el sistema esté habilitada

   <figure><img src="/files/3723f8606e9ef4f5a604c8bdeace8b004445d646" alt=""><figcaption></figcaption></figure>
5. Selecciona Revisar + crear y crea tu Automation Account
6. Ve al grupo de recursos que contiene tu Azure Automation Account
7. En la pestaña IAM, asigna a la Azure Automation Account como Colaborador
   {% endstep %}

{% step %}

#### Asignar permisos a Azure Automation Account

Los runbooks compartidos de RealmJoin usan la identidad administrada asignada por el sistema de Azure Automation para interactuar con Entra ID, MS Graph API, etc.

Los permisos de la identidad administrada no se pueden conceder actualmente a través de Azure Portal. Usa Microsoft Graph o PowerShell para asignar estos permisos.

1. Descarga los siguientes scripts de PowerShell y archivos JSON en la misma carpeta.\
   El script asignará el conjunto completo de permisos requerido por RealmJoin. Los roles y permisos pueden revisarse en la [Requisitos](/es/automatizacion/connecting-azure-automation/azure-ad-roles-and-permissions.md) sección y ajustarse según sea necesario en los archivos JSON.

{% tabs %}
{% tab title="GrantAppPermToEntApp.ps1" %}
{% @github-files/github-code-block url="<https://github.com/Workplace-Foundation/approle-and-directoryrole-granter/blob/main/GrantAppPermToEntApp.ps1>" %}
{% endtab %}

{% tab title="AssignAzureADRoleToEntApp.ps1" %}
{% @github-files/github-code-block url="<https://github.com/Workplace-Foundation/approle-and-directoryrole-granter/blob/main/AssignAzureADRoleToEntApp.ps1>" %}
{% endtab %}

{% tab title="AllRealmJoinRunbooks\_collected\_permissions.json" %}
{% @github-files/github-code-block url="<https://github.com/realmjoin/realmjoin-runbooks/blob/production/docs/other/json/AllRealmJoinRunbooks_collected_permissions.json>" %}
{% endtab %}

{% tab title="AllRealmJoinRunbooks\_collected\_rbacroles.json" %}
{% @github-files/github-code-block url="<https://github.com/realmjoin/realmjoin-runbooks/blob/production/docs/other/json/AllRealmJoinRunbooks_collected_rbacroles.json>" %}
{% endtab %}
{% endtabs %}

2. Anota el ID de objeto de la Identidad administrada de la Azure Automation Account en Configuración de la cuenta > Identidad

   <figure><img src="/files/368ee3cb83ccd1f8af0db6b5141cb0d758040578" alt=""><figcaption></figcaption></figure>
3. Abre una ventana de PowerShell.
4. Ve a la carpeta que contiene los archivos descargados

```
cd c:\temp\myfolder
```

5. Desbloquea los scripts si es necesario\
   ![](/files/6d47fa7288b78088056b45c803859cfe4dac88d4)
6. Asigna permisos de MS Graph a tu Azure Automation Account usando GrantAppPermToEntApp.ps1, reemplazando xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx con el ID de objeto de tu Automation Account

```
. .\GrantAppPermToEntApp.ps1 -enterpriseAppObjId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -permissionsTemplate .\AllRealmJoinRunbooks_collected_permissions.json
```

7. Asigna roles de administrador de Entra ID a tu Azure Automation Account usando AssignAzureADRoleToEntApp.ps1, reemplazando xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx con el ID de objeto de tu Automation Account

```
. .\AssignAzureADRoleToEntApp.ps1 -objectId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -rolesTemplate .\AllRealmJoinRunbooks_collected_rbacroles.json
```

8. La Azure Automation Account debería tener ahora los permisos correctos para ejecutar runbooks<br>
   {% endstep %}

{% step %}

#### Configuración de RealmJoin Runbook - Parte 1

1. En RealmJoin Portal ve a '[Configuración -> Runbooks](https://portal.realmjoin.com/settings/runbooks-configuration)'.<br>

   <figure><img src="/files/71b11b1c5a0a8b225eb8a1d58b24d6dd9eadcbcb" alt=""><figcaption></figcaption></figure>
2. Rellena el ID del Tenant, el ID de suscripción y el nombre del grupo de recursos que pertenecen a la Azure Automation Account\
   El ID del Tenant en la [página de resumen de Entra ID](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Overview)

   <figure><img src="/files/ba0073312ed38097cccbf897199556f979b1e8b5" alt=""><figcaption></figcaption></figure>
3. Copia el script en rojo de abajo *ResourceGroup.*\
   Este script crea un Service Principal en Entra ID con acceso a tu Automation Account, permitiendo que RealmJoin gestione, ejecute y supervise los runbooks.\
   El script se actualiza en función de los valores de Tenant ID, Subscription ID y Resource Group.<br>

   <figure><img src="/files/a829691efc3ff045136e949be1851f04ab475fd7" alt=""><figcaption></figcaption></figure>
4. Deja abierto el asistente por ahora. Volveremos enseguida en la parte 2.
   {% endstep %}

{% step %}

#### Concesión de acceso de RealmJoin a Azure Automation

{% hint style="info" %}
Puedes usar [Azure CloudShell](https://docs.microsoft.com/en-us/azure/cloud-shell/overview), por lo que no necesitas instalar ni autenticar una copia local de AZ CLI.
{% endhint %}

1. Ejecuta en PowerShell el script copiado anteriormente.

   <figure><img src="/files/5cd8df91543bb40de85ee4811a0727938a8ff0b3" alt=""><figcaption></figcaption></figure>
2. Anota los valores de `appId` y `password`.\
   Se creará el registro de aplicación "RealmJoin Runbook Management".<br>

   ![Registros de aplicaciones en Azure Portal](/files/eae319d2908155f469ef1ab4502d97fb68ff6fd5)
   {% endstep %}

{% step %}

#### Configuración de RealmJoin Runbook - Parte 2

1. En RealmJoin Portal vuelve a la ventana/asistente abierto para '[Configuración -> Runbooks](https://portal.realmjoin.com/settings/runbooks-configuration)'
2. Rellena los valores que faltan de `appId` y `password` creados en el paso anterior
3. Rellena el nombre de la Automation Account creada [anteriormente](#create-an-azure-automation-account)
4. Elige la rama del repositorio compartido de runbooks que quieres seguir.\
   Si no estás seguro, elige `producción`\
   Todas las ramas de runbooks pueden verse aquí: <https://github.com/realmjoin/realmjoin-runbooks>
5. Elige la misma ubicación que tu Azure Automation Account para asegurarte de que tus runbooks se ejecuten en la correcta [región de Azure](https://docs.microsoft.com/en-us/azure/availability-zones/az-overview)

![Conexión de Automation Account en RealmJoin Portal](/files/ceff55c63d7689290186ac105a435096ab4aff75)

6. Pulsa "Guardar" para iniciar la importación inicial de runbooks. Por favor, deja esta ventana abierta hasta que veas el mensaje "Sincronización completada".

![](/files/c331000b2d8a08574fe3e370a52d84852e0bff3c)
{% endstep %}
{% endstepper %}


---

# 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.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.
