> 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, debe conectar una [Azure Automation](https://learn.microsoft.com/en-us/azure/automation/overview) Account. Esta Automation Account actuará como el host de sus runbooks y proporcionará los [permisos](/es/automatizacion/connecting-azure-automation/azure-ad-roles-and-permissions.md) necesarios para que los runbooks funcionen dentro de su entorno.

## Consideraciones

La Automation Account de [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 su entorno, como la capacidad de modificar objetos de grupo o de usuario en Entra ID o administrar buzones en Exchange Online. Limite el acceso administrativo a esta cuenta para evitar el uso indebido de estos privilegios.

Al usar una Automation Account existente, tenga en cuenta que RealmJoin Portal crea, actualiza y elimina automáticamente runbooks provenientes del [repositorio compartido en línea de runbooks](https://github.com/realmjoin/realmjoin-runbooks). Es posible que esta funcionalidad no sea compatible en una Automation Account existente. Si no está 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 runbook](/es/automatizacion/connecting-azure-automation/azure-ad-roles-and-permissions.md)

## Instrucciones

{% stepper %}
{% step %}

#### Crear una Azure Automation Account

1. Vaya a su [Azure Portal > Automation Accounts](https://portal.azure.com/#create/Microsoft.AutomationAccount)
2. Cree una nueva Automation Account
3. En la pestaña Básico, elija la Suscripción, el Grupo de recursos, el nombre de la Automation Account y la Región deseados<br>

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

{% hint style="success" %}
Se recomienda un Grupo de recursos independiente para su Automation Account
{% endhint %}

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

   <figure><img src="/files/3723f8606e9ef4f5a604c8bdeace8b004445d646" alt=""><figcaption></figcaption></figure>
5. Seleccione Revisar + crear y cree su Automation Account
6. Vaya al Grupo de recursos que contiene su Azure Automation Account
7. En la pestaña IAM, asigne a la Azure Automation Account el rol de Colaborador
   {% endstep %}

{% step %}

#### Asignar permisos a Azure Automation Account

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

Actualmente no se pueden conceder permisos de Identidad administrada a través de Azure Portal. Use Microsoft Graph o PowerShell para asignar estos permisos.

1. Descargue 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 se pueden revisar 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="RJvNextPermissions.json" %}
{% @github-files/github-code-block url="<https://github.com/Workplace-Foundation/approle-and-directoryrole-granter/blob/main/RealmJoinVnext/RJvNextPermissions.json>" %}
{% endtab %}

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

2. Anote el Object ID 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. Abra una ventana de PowerShell.
4. Vaya a la carpeta que contiene los archivos descargados

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

5. Desbloquee los scripts si es necesario\
   ![](/files/6d47fa7288b78088056b45c803859cfe4dac88d4)
6. Asigne permisos de Microsoft Graph a su Azure Automation Account usando GrantAppPermToEntApp.ps1, reemplazando xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx por el Object ID de su Automation Account

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

7. Asigne roles de administrador de Entra ID a su Azure Automation Account usando AssignAzureADRoleToEntApp.ps1, reemplazando xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx por el Object ID de su Automation Account

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

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

{% step %}

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

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

   <figure><img src="/files/71b11b1c5a0a8b225eb8a1d58b24d6dd9eadcbcb" alt=""><figcaption></figcaption></figure>
2. Rellene el Tenant ID, el Subscription ID y el nombre del Grupo de recursos que pertenecen a la Azure Automation Account\
   El Tenant ID 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. Copie el script en rojo que aparece debajo *ResourceGroup.*\
   Este script crea un Service Principal en Entra ID con acceso a su Automation Account, lo que permite a RealmJoin administrar, ejecutar y supervisar runbooks.\
   El script se actualiza según los valores introducidos para Tenant ID, Subscription ID y Resource Group.<br>

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

{% step %}

#### Conceder acceso de RealmJoin a Azure Automation

{% hint style="info" %}
Puede usar [Azure CloudShell](https://docs.microsoft.com/en-us/azure/cloud-shell/overview), así que no necesita instalar ni autenticarse con una copia local de AZ CLI.
{% endhint %}

1. Ejecute en PowerShell el script copiado anteriormente.

   <figure><img src="/files/5cd8df91543bb40de85ee4811a0727938a8ff0b3" alt=""><figcaption></figcaption></figure>
2. Anote 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, regrese a la ventana/asistente abierto para '[Configuración -> Runbooks](https://portal.realmjoin.com/settings/runbooks-configuration)'
2. Rellene los valores faltantes de `appId` y `password` creado en el paso anterior
3. Rellene el nombre de la Automation Account creada [anteriormente](#create-an-azure-automation-account)
4. Elija la rama del repositorio compartido de runbooks que desea seguir.\
   Si no está seguro, elija `producción`\
   Todas las ramas de runbooks pueden verse aquí: <https://github.com/realmjoin/realmjoin-runbooks>
5. Elija la misma ubicación que su Azure Automation Account para asegurarse de que sus runbooks se ejecuten en la correcta [región de Azure](https://docs.microsoft.com/en-us/azure/availability-zones/az-overview)

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

6. Pulse "Guardar" para iniciar la importación inicial de runbooks. Deje esta ventana abierta hasta que vea 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.
