> 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/de/automatisierung/connecting-azure-automation.md).

# Azure Automation verbinden

## Übersicht

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

Um RealmJoin Portal die Bereitstellung zu ermöglichen [Runbooks ](/de/automatisierung/runbooks.md)für die Automatisierung täglicher Aufgaben müssen Sie eine [Azure Automation](https://learn.microsoft.com/en-us/azure/automation/overview) -Konto verbinden. Dieses Automation-Konto dient als Host für Ihre Runbooks und stellt die [Berechtigungen](/de/automatisierung/connecting-azure-automation/azure-ad-roles-and-permissions.md) bereit, die erforderlich sind, damit die Runbooks in Ihrer Umgebung funktionieren.

## Überlegungen

Die [Managed Identity](https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview) des Automation-Kontos erfordert umfangreiche [Berechtigungen ](/de/automatisierung/connecting-azure-automation/azure-ad-roles-and-permissions.md)Berechtigungen in Ihrer Umgebung, z. B. die Möglichkeit, Gruppen- oder Benutzerobjekte in Entra ID zu ändern oder Postfächer in Exchange Online zu verwalten. Beschränken Sie den administrativen Zugriff auf dieses Konto, um Missbrauch dieser Berechtigungen zu verhindern.

Wenn Sie ein bestehendes Automation-Konto verwenden, beachten Sie, dass RealmJoin Portal Runbooks aus dem [gemeinsamen Online-Repository für Runbooks](https://github.com/realmjoin/realmjoin-runbooks) automatisch erstellt, aktualisiert und entfernt. Diese Funktion wird möglicherweise in einem bestehenden Automation-Konto nicht unterstützt. Wenn Sie unsicher sind, empfehlen wir, ein dediziertes Azure Automation-Konto für RealmJoin Runbooks zu erstellen.

## Voraussetzungen

* Berechtigungen des Globalen Administrators
* Zugriff auf PowerShell mit dem [Az](https://learn.microsoft.com/en-us/powershell/azure/?view=azps-15.3.0) -Modul oder [AZ CLI](https://learn.microsoft.com/en-us/cli/azure/?view=azure-cli-latest)
* Mitwirkender-Berechtigungen für ein Azure-Abonnement
* [Runbook-Anforderungen](/de/automatisierung/connecting-azure-automation/azure-ad-roles-and-permissions.md)

## Anweisungen

{% stepper %}
{% step %}

#### Erstellen Sie ein Azure Automation-Konto

1. Navigieren Sie zu Ihrem [Azure Portal > Automation Accounts](https://portal.azure.com/#create/Microsoft.AutomationAccount)
2. Erstellen Sie ein neues Automation-Konto
3. Wählen Sie auf der Registerkarte "Basics" das gewünschte Abonnement, die Ressourcengruppe, den Automation-Kontonamen und die Region aus<br>

   <figure><img src="/files/7fa615ec48d593e66c3f62a7e34fe22b1c30a234" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
Eine separate Ressourcengruppe für Ihr Automation-Konto wird empfohlen
{% endhint %}

4. Stellen Sie auf der Registerkarte "Advanced" sicher, dass die vom System zugewiesene Managed Identity aktiviert ist

   <figure><img src="/files/787d9da81f349e7ba424f7683cb9d18e758221de" alt=""><figcaption></figcaption></figure>
5. Wählen Sie "Review + Create" und erstellen Sie Ihr Automation-Konto
6. Navigieren Sie zur Ressourcengruppe, die Ihr Azure Automation-Konto enthält
7. Weisen Sie im IAM-Tab das Azure Automation-Konto als Mitwirkender zu
   {% endstep %}

{% step %}

#### Berechtigungen für Azure Automation-Konto zuweisen

Die gemeinsam genutzten Runbooks von RealmJoin verwenden die vom System zugewiesene Managed Identity des Azure Automation-Kontos, um mit Entra ID, Microsoft Graph API usw. zu interagieren.

Managed Identity-Berechtigungen können derzeit nicht über das Azure Portal erteilt werden. Verwenden Sie Microsoft Graph oder PowerShell, um diese Berechtigungen zuzuweisen.

1. Laden Sie die folgenden PowerShell-Skripte und JSON-Dateien in denselben Ordner herunter.\
   Das Skript weist den vollständigen Berechtigungssatz zu, der von RealmJoin benötigt wird. Rollen und Berechtigungen können in der [Anforderungen](/de/automatisierung/connecting-azure-automation/azure-ad-roles-and-permissions.md) Sektion überprüft und bei Bedarf in den JSON-Dateien angepasst werden.

{% 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. Notieren Sie sich die Objekt-ID der Managed Identity des Azure Automation-Kontos unter Kontoeinstellungen > Identität

   <figure><img src="/files/ab0d3b269251e12898067bec76f364f639a2c1a6" alt=""><figcaption></figcaption></figure>
3. Öffnen Sie ein PowerShell-Fenster.
4. Navigieren Sie zum Ordner, der die heruntergeladenen Dateien enthält

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

5. Skripte bei Bedarf entsperren\
   ![](/files/245b06e9e6887d737fc700202ae20fddf978c597)
6. Weisen Sie Ihrem Azure Automation-Konto MS-Graph-Berechtigungen mit GrantAppPermToEntApp.ps1 zu und ersetzen Sie xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx durch die Objekt-ID Ihres Automation-Kontos

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

7. Weisen Sie Ihrem Azure Automation-Konto Entra ID-Administratorrollen mit AssignAzureADRoleToEntApp.ps1 zu und ersetzen Sie xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx durch die Objekt-ID Ihres Automation-Kontos

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

8. Das Azure Automation-Konto sollte nun über die richtigen Berechtigungen verfügen, um Runbooks auszuführen<br>
   {% endstep %}

{% step %}

#### RealmJoin Runbook-Konfiguration - Teil 1

1. Gehen Sie im RealmJoin Portal zu '[Settings -> Runbooks](https://portal.realmjoin.com/settings/runbooks-configuration)'.<br>

   <figure><img src="/files/ef04ffce450727e2e89532e959262084f8a56b7a" alt=""><figcaption></figcaption></figure>
2. Füllen Sie die Tenant ID, Subscription ID und den Namen der Ressourcengruppe aus, die zum Azure Automation-Konto gehören\
   Die Tenant ID auf der [Entra ID Overview-Seite](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Overview)

   <figure><img src="/files/3e1d9a481998f93001db89a7425fcea92270e012" alt=""><figcaption></figcaption></figure>
3. Kopieren Sie das unten rot markierte Skript *ResourceGroup.*\
   Dieses Skript erstellt einen Service Principal in Entra ID mit Zugriff auf Ihr Automation-Konto und ermöglicht RealmJoin, Runbooks zu verwalten, auszuführen und zu überwachen.\
   Das Skript wird auf Grundlage der Eingaben für Tenant ID, Subscription ID und Ressourcengruppe aktualisiert.<br>

   <figure><img src="/files/225c2b87b54b98f5bde08a24df7983e3fa29b1b2" alt=""><figcaption></figcaption></figure>
4. Lassen Sie den Assistenten vorerst geöffnet. Wir kehren in Teil 2 gleich zurück.
   {% endstep %}

{% step %}

#### Zugriff für RealmJoin auf Azure Automation gewähren

{% hint style="info" %}
Sie können [Azure CloudShell](https://docs.microsoft.com/en-us/azure/cloud-shell/overview)verwenden, sodass Sie keine lokale Kopie der AZ CLI installieren und authentifizieren müssen.
{% endhint %}

1. Führen Sie das zuvor kopierte Skript in PowerShell aus.

   <figure><img src="/files/61aa7e04f1c55de5a0dfe7ee30d2b4462be2d659" alt=""><figcaption></figcaption></figure>
2. Notieren Sie sich die Werte für `appId` und `password`.\
   Die App-Registrierung "RealmJoin Runbook Management" wird erstellt.<br>

   ![App-Registrierungen im Azure Portal](/files/a26416720c2c923c8567183fb9b49b46d7b0874c)
   {% endstep %}

{% step %}

#### RealmJoin Runbook-Konfiguration - Teil 2

1. Gehen Sie im RealmJoin Portal zurück zum geöffneten Fenster/Assistenten für '[Settings -> Runbooks](https://portal.realmjoin.com/settings/runbooks-configuration)'
2. Füllen Sie die fehlenden Werte für `appId` und `password` im letzten Schritt erstellt
3. Füllen Sie den Namen des erstellten Automation-Kontos aus [zuvor](#create-an-azure-automation-account)
4. Wählen Sie den Branch des gemeinsamen Runbook-Repositorys, dem Sie folgen möchten.\
   Wenn Sie unsicher sind, wählen Sie bitte `production`\
   Alle Runbook-Branches können hier angezeigt werden: <https://github.com/realmjoin/realmjoin-runbooks>
5. Wählen Sie denselben Standort wie Ihr Azure Automation-Konto, um sicherzustellen, dass Ihre Runbooks in der richtigen [Azure-Region](https://docs.microsoft.com/en-us/azure/availability-zones/az-overview)

![Automation-Konto-Verbindung im RealmJoin Portal](/files/42d7c17a1899be6c7eb5ec06eb67b87646691c79)

6. Drücken Sie "Save", um den ersten Import der Runbooks zu starten. Bitte lassen Sie dieses Fenster geöffnet, bis Sie die Meldung "Sync completed" sehen.

![](/files/6e59fb3f84d6ca6fc25c8768e25d62c511e1740d)
{% 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:

```
GET https://docs.realmjoin.com/de/automatisierung/connecting-azure-automation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
