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

# Verbinden von Azure Automation

Verbinden Sie ein Azure Automation-Konto mit dem RealmJoin-Portal über das RealmJoin-PowerShell-Modul, damit RealmJoin Runbooks in Ihrem Tenant bereitstellen, ausführen und überwachen kann.

## Übersicht

Damit RealmJoin Portal bereitstellen kann [Runbooks](/de/automatisierung/runbooks.md) für die Automatisierung täglicher Aufgaben müssen Sie ein [Azure Automation](https://learn.microsoft.com/en-us/azure/automation/overview) Konto verbinden. Es dient als Host für Ihre Runbooks und stellt die [Berechtigungen](/de/automatisierung/connecting-azure-automation/azure-ad-roles-and-permissions.md) die die Runbooks benötigen, um in Ihrer Umgebung zu funktionieren.

Das Automation Account wird mit dem [RealmJoin PowerShell-Modul](/de/bereitstellung/onboarding-realmjoin-portal/advanced-setup.md). Das Portal generiert einen sofort kopierbaren Befehl für Sie — es muss keine App-Registrierung erstellt und kein Client-Secret verwaltet werden.

{% hint style="info" %}
Sind Runbooks bereits für Ihren Tenant mit dem alten **RealmJoin Runbook Management** App-Registrierung konfiguriert? Dann siehe [Wechsel zur von RealmJoin verwalteten App](/de/automatisierung/connecting-azure-automation/managed-app-migration.md). Es behält Ihr Automation Account und Ihre Runbooks bei und entfernt das tenantbezogene Client-Secret.
{% endhint %}

## Hinweise

Die [Managed Identity](https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview) erfordert umfangreiche [Berechtigungen](/de/automatisierung/connecting-azure-automation/azure-ad-roles-and-permissions.md) 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 vorhandenes Automation Account verwenden, beachten Sie, dass das RealmJoin Portal Runbooks aus dem [gemeinsam genutzten Online-Repository der Runbooks](https://github.com/realmjoin/realmjoin-runbooks). Diese Funktion wird möglicherweise in einem vorhandenen Automation Account nicht unterstützt. Wenn Sie unsicher sind, empfehlen wir, ein dediziertes Azure Automation Account für RealmJoin Runbooks zu erstellen — das erledigt der Setup-Befehl für Sie.

## Was das Setup bereitstellt

Das Ausführen des Setup-Befehls erstellt:

* Die **RealmJoin Azure-Ressourcen** Service Principal in Ihrem Entra ID Tenant (falls er noch nicht existiert)
* Ein **Automation Account** mit einer systemzugewiesenen Managed Identity in der Region der Ressourcengruppe — oder Ihrem vorhandenen Automation Account, wenn Sie einen angeben
* **Contributor** für den RealmJoin Service Principal, auf dieses Automation Account beschränkt, damit RealmJoin Runbooks synchronisieren und starten kann
* Die **Anwendungsberechtigungen** für die Managed Identity, die das Modul bündelt — Microsoft Graph, Office 365 Exchange Online, Windows Defender ATP und SharePoint Online

RealmJoin authentifiziert sich gegen Azure mit seiner eigenen Multi-Tenant-App. In Ihrem Tenant werden keine App-Registrierung und kein Client-Secret erstellt, und RealmJoin erhält keine Berechtigung außerhalb dieses Automation Account.

{% hint style="warning" %}
Die **Entra ID-Verzeichnisrollen** — Intune Administrator, Exchange Administrator, User Administrator und so weiter — werden **nicht** durch den Setup-Befehl zugewiesen. Sie müssen weiterhin separat gewährt werden, siehe [Rollen und Berechtigungen zuweisen](/de/automatisierung/connecting-azure-automation/azure-ad-roles-and-permissions.md#granting-roles-and-permissions). Ohne sie wird ein großer Teil der gemeinsamen Runbooks nicht funktionieren.
{% endhint %}

## Voraussetzungen

### Im RealmJoin Portal

* Eine Rolle, die Zugriff auf den Bereich Einstellungen gewährt (`CanReadSettingsDetails`, siehe [Verfügbare Berechtigungen](/de/administration-and-einstellungen/permission/custom-roles/available-permissions.md)). Die Einstellungsseite generiert den Setup-Befehl einschließlich eines kurzlebigen Onboarding-Tokens.

### In Azure

* Ein Azure-Abonnement und ein **vorhandene Ressourcengruppe** zum Bereitstellen — das Modul erstellt die Ressourcengruppe nicht. Eine separate Ressourcengruppe für das Automation Account wird empfohlen.
* Optional ein vorhandenes Automation Account. Wenn Sie keines angeben, wird für Sie ein Konto erstellt.

### Auf dem Computer, auf dem PowerShell ausgeführt wird

* **PowerShell 5.1** oder höher (Windows PowerShell oder PowerShell 7)
* Zugriff auf die [PowerShell Gallery](https://www.powershellgallery.com/packages/RealmJoin) um das RealmJoin-Modul zu installieren
* Die `Az.Accounts`, `Az.Resources` und `Az.Automation` Module — das RealmJoin-Modul installiert sie für den aktuellen Benutzer automatisch in den festgelegten Versionen

### Berechtigungen des Kontos, mit dem Sie sich anmelden

* **Microsoft Entra ID:** Berechtigung zum Erstellen von Service Principals **und zum Gewähren von Anwendungsberechtigungen** — das Setup weist der Managed Identity Graph-, Exchange-, Defender- und SharePoint-App-Rollen zu. In der Praxis bedeutet das *Global Administrator* oder *Privileged Role Administrator*.
* **Azure-Abonnement:** Berechtigung, in die Ressourcengruppe bereitzustellen **und** um darin Rollenzuweisungen zu erstellen — zum Beispiel *Owner*, oder *Contributor* kombiniert mit *User Access Administrator* / *Role Based Access Control Administrator*.
* Die Anmeldung erfolgt über `Connect-AzAccount`, das die **Azure PowerShell** First-Party-Anwendung verwendet. Tenants, die die Benutzerzustimmung einschränken, müssen dieser Anwendung möglicherweise zuerst die Administratorzustimmung erteilen.

{% hint style="warning" %}
Führen Sie den Befehl in einer **frisch geöffneten, lokalen** PowerShell-Sitzung aus und vermeiden Sie **Azure Cloud Shell**. Das RealmJoin-Modul erfordert exakte Versionen der `Az.*` Module. Wenn in der Sitzung bereits eine andere Version geladen ist — was in Cloud Shell typischerweise der Fall ist — wird das Modul mit einem Versionskonflikt beendet, der nur durch das Öffnen einer neuen Sitzung behoben werden kann.
{% endhint %}

## Setup

{% stepper %}
{% step %}

#### Bereiten Sie die Ressourcengruppe vor

Erstellen Sie im Azure Portal die Ressourcengruppe, die das Automation Account enthalten soll, oder wählen Sie sie aus. Notieren Sie sich ihren Namen und die ID des Abonnements, in dem sie sich befindet.

Wenn Sie ein **vorhandenes** Automation Account verwenden möchten, notieren Sie sich auch dessen Namen.
{% endstep %}

{% step %}

#### Kopieren Sie den Befehl aus dem RealmJoin Portal

Gehen Sie im RealmJoin Portal zu **Einstellungen → Runbooks** (<https://portal.realmjoin.com/settings/runbooks-configuration>).

Die Seite weist darauf hin, dass die Runbook-Konfiguration über das RealmJoin PowerShell-Modul verwaltet wird, und zeigt einen Befehlsblock an. Verwenden Sie die **Kopieren** -Schaltfläche, um ihn zu kopieren.

```powershell
$latest = [version](Find-Module RealmJoin -Repository PSGallery -ErrorAction Stop).Version
if (-not (Get-Module -ListAvailable RealmJoin | Where-Object Version -ge $latest)) {
    Install-Module RealmJoin -Force -AllowClobber -ErrorAction Stop
}
Import-Module RealmJoin -Force
Set-RJAutomationAccount -Token "<Token>" 6>&1
```

{% hint style="info" %}
**Info `6>&1`:** diese Befehle ihren Fortschritt über den Informationsstream von PowerShell melden. Die `6>&1` Umleitung zeigt diese Ausgabe in der Konsole an — ohne sie sehen Sie keine Fortschrittsmeldungen.
{% endhint %}
{% endstep %}

{% step %}

#### Fügen Sie die Zielparameter hinzu

`Set-RJAutomationAccount` muss wissen, wohin bereitgestellt werden soll. Vervollständigen Sie die letzte Zeile, bevor Sie sie ausführen:

```powershell
Set-RJAutomationAccount -ResourceGroupName "rg-realmjoin" -SubscriptionId "<SubscriptionId>" -Token "<Token>" 6>&1
```

* `-ResourceGroupName` ist erforderlich. Wenn Sie es weglassen, fragt PowerShell Sie danach.
* `-SubscriptionId` ist optional — ohne ihn wird das Abonnement Ihres aktuellen Azure-Kontexts verwendet, und Sie werden aufgefordert, eines auszuwählen, wenn mehrere verfügbar sind.
* `-AutomationAccountName` ist optional. Geben Sie ihn an, um den Namen eines neuen Automation Account festzulegen oder ein **vorhandenes** Konto zu verwenden; andernfalls wird ein neues mit einem generierten Namen erstellt.

{% hint style="warning" %}
Wenn der Befehl auf ein vorhandenes Automation Account gerichtet wird, werden außerdem die Einstellungen vorausgesetzt, die RealmJoin dafür erwartet: eine systemzugewiesene Managed Identity, die Basic-SKU und öffentlicher Netzwerkzugriff. Prüfen Sie, ob dies Ihren Anforderungen entspricht, bevor Sie ein Konto wiederverwenden.
{% endhint %}
{% endstep %}

{% step %}

#### Führen Sie den Befehl aus

Fügen Sie den Block in eine neue PowerShell-Sitzung ein und führen Sie ihn aus. Das Token ist etwa eine Stunde lang gültig — wenn es abgelaufen ist, laden Sie die Einstellungsseite neu und kopieren Sie den Befehl erneut.

Sie werden aufgefordert, sich anzumelden mit `Connect-AzAccount`. Wenn Ihr Konto Zugriff auf mehrere Tenants oder Abonnements hat, fordert das Modul Sie auf, eines auszuwählen.

Die Bereitstellung läuft in drei Schritten ab — Service Principal, Automation Account, Berechtigungen — und meldet jede Ressource, sobald sie erstellt wird. Ein einzelner Durchlauf dauert in der Regel einige Minuten.

{% hint style="info" %}
Möchten Sie zuerst sehen, was passieren würde? Hängen Sie `-WhatIf` für eine Azure Resource Manager-What-If-Vorschau an. Beachten Sie, dass die Anmeldung und die Installation der `Az` Module dennoch erfolgen, da die Vorschau beides benötigt.
{% endhint %}

{% hint style="info" %}
**Abmeldung danach:** die Azure-Anmeldung nach Abschluss des Befehls aktiv bleibt. Wenn Sie fertig sind, führen Sie `Disconnect-AzAccount` aus, um sich von der bestehenden Sitzung abzumelden.
{% endhint %}
{% endstep %}

{% step %}

#### Weisen Sie der Managed Identity die Entra ID-Rollen zu

Das Setup gewährt der Managed Identity ihre Anwendungsberechtigungen, aber nicht ihre Entra ID-Verzeichnisrollen. Weisen Sie diese jetzt zu — siehe [Rollen und Berechtigungen zuweisen](/de/automatisierung/connecting-azure-automation/azure-ad-roles-and-permissions.md#granting-roles-and-permissions) für die aktuelle Liste und ein Skript, das dies erledigt.

Die Objekt-ID der Managed Identity wird im Azure Portal beim Automation Account unter Kontoeinstellungen > Identität angezeigt.

<figure><img src="https://2298793958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2F4ecZSM3NW9PWJJlaNmR4%2Fimage.png?alt=media&amp;token=e5d5b56b-50f3-4f35-a41b-7cb4230dd3f3" alt=""><figcaption><p>Managed Identity des Automation Account</p></figcaption></figure>
{% endstep %}

{% step %}

#### Im Portal überprüfen und die erste Synchronisierung starten

Kehren Sie **Einstellungen → Runbooks** und wählen Sie **Aktualisieren**. RealmJoin übernimmt die neue Konfiguration und startet den ersten Runbook-Import. Lassen Sie die Seite geöffnet, bis die Synchronisierung abgeschlossen ist.

Abonnement, Ressourcengruppe, Name des Automation Account und Standort werden jetzt schreibgeschützt unter **Azure-Verbindung** — sie werden von nun an vom PowerShell-Modul verwaltet.
{% endstep %}
{% endstepper %}

## Einstellungen, die Sie im Portal verwalten

Zwei Einstellungen bleiben in **Einstellungen → Runbooks** nach dem Setup bearbeitbar:

* **Branch** — der Branch des [gemeinsam genutzten Runbook-Repositorys](https://github.com/realmjoin/realmjoin-runbooks) dem Sie folgen möchten. Das Setup setzt dies auf `production`, was die richtige Wahl ist, sofern Sie keinen Grund haben, davon abzuweichen.
* **Hybrid Runbook Worker-Synchronisierung aktivieren** und die zu verwendende Worker-Gruppe, siehe [Hybrid Runbook Worker](/de/automatisierung/runbooks/hybrid-runbook-worker.md). Die Gruppe muss im Automation Account registriert sein, bevor sie hier ausgewählt werden kann.

Das Speichern einer der beiden Einstellungen löst eine Runbook-Synchronisierung aus.

Wenn später Konfigurations- oder Berechtigungsprobleme auftreten, bringt die **Cmdlet anzeigen** -Schaltfläche unter Azure-Verbindung den Befehl zurück — erneutes Ausführen ist sicher und wendet nur an, was fehlt.

## Alte Einrichtung (tenantbezogene App-Registrierung)

{% hint style="warning" %}
Das folgende Setup erstellt eine **RealmJoin Runbook Management** App-Registrierung mit einem Client-Secret in Ihrem Tenant. Es ist nur als Referenz für Tenants dokumentiert, die in der Vergangenheit auf diese Weise konfiguriert wurden. Verwenden Sie es nicht für neue Konfigurationen — folgen Sie dem [Setup](#setup) oben, oder [eine vorhandene Konfiguration auf die verwaltete App umstellen](/de/automatisierung/connecting-azure-automation/managed-app-migration.md).
{% endhint %}

<details>

<summary>Alte Einrichtung anzeigen</summary>

Auf diesem Weg wurde das Automation Account manuell im Azure Portal erstellt, seine Berechtigungen wurden mit zwei externen Skripten zugewiesen, und RealmJoin authentifizierte sich mit einer tenantbezogenen App-Registrierung und einem Client-Secret.

**Teil 1 — Erstellen Sie ein Azure Automation Account**

1. Navigieren Sie zu Ihrem [Azure Portal > Automation Accounts](https://portal.azure.com/#create/Microsoft.AutomationAccount) und erstellen Sie ein neues Automation Account.
2. Wählen Sie auf der Registerkarte Basics Ihr Abonnement, Ihre Ressourcengruppe, den Namen des Automation Account und die Region aus.
3. Stellen Sie auf der Registerkarte Advanced sicher, dass die systemzugewiesene Managed Identity aktiviert ist.
4. Wählen Sie Review + Create aus und erstellen Sie Ihr Automation Account.
5. Navigieren Sie zur Ressourcengruppe, die das Automation Account enthält, und weisen Sie im IAM-Tab das Automation Account als Contributor zu.

![Erstellen des Automation Account](https://2298793958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FqjBLc2zH3XCCqfAViEsU%2Fimage.png?alt=media\&token=257816e0-eb8a-478c-973f-fb288324d8c8)

![Aktivieren der systemzugewiesenen Managed Identity](https://2298793958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FM9N3OxNzrzQXFxSaKIpP%2Fimage.png?alt=media\&token=1e7c4d5b-d604-415b-89e0-4816a7f04a26)

**Teil 2 — Berechtigungen für das Automation Account zuweisen**

Berechtigungen für Managed Identity können nicht über das Azure Portal gewährt werden. Die [approle-and-directoryrole-granter](https://github.com/Workplace-Foundation/approle-and-directoryrole-granter) Skripte weisen sowohl die App-Berechtigungen als auch die Entra ID-Rollen aus den JSON-Dateien zu, die im [Runbooks-Repository veröffentlicht sind](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
```

**Teil 3 — Erstellen Sie den Service Principal für RealmJoin**

Im Portal unter Einstellungen > Runbooks wurden zunächst Tenant ID, Subscription ID und Resource Group eingegeben; die Seite zeigte dann einen auszuführenden Azure-CLI-Ausschnitt, der die **RealmJoin Runbook Management** App-Registrierung mit Contributor-Rechten für die Ressourcengruppe erstellte:

```
az provider register --namespace Microsoft.Automation
az ad sp create-for-rbac -n "RealmJoin Runbook Management" --role contributor --scopes /subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroup>
```

**Teil 4 — Schließen Sie den Assistenten ab**

Zurück im Portal wurden die `appId` und `password` aus dieser Ausgabe wurden zusammen mit dem Namen des Automation Account, dem Branch des gemeinsam genutzten Runbook-Repositorys (`production`) und dem Standort des Automation Account eingegeben. Das Speichern startete den initialen Runbook-Import.

![Verbindung zum Automation Account im RealmJoin Portal](https://2298793958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FA0X3M2c9d13pxVt87Pf8%2Fimage.png?alt=media\&token=8e2f2b18-c3b1-4704-8cc8-eb4d43297dd1)

</details>


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

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

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
