> 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

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

## Überblick

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

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

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

## Hinweise

Die verwaltete Identität des Automation-Kontos [Verwaltete Identität](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 den Missbrauch dieser Berechtigungen zu verhindern.

Wenn Sie ein vorhandenes Automation-Konto verwenden, beachten Sie, dass RealmJoin Portal Runbooks, die aus dem [gemeinsam genutzten Online-Repository der Runbooks](https://github.com/realmjoin/realmjoin-runbooks). Diese Funktion wird in einem vorhandenen Automation-Konto möglicherweise nicht unterstützt. Wenn Sie unsicher sind, empfehlen wir, ein dediziertes Azure Automation-Konto für RealmJoin-Runbooks zu erstellen — genau das erledigt der Setup-Befehl für Sie.

## Was das Setup bereitstellt

Das Ausführen des Setup-Befehls erstellt:

* Das **RealmJoin Azure Resources** Dienstprinzipal in Ihrem Entra ID-Tenant (falls er noch nicht existiert)
* Ein **Automation-Konto** mit einer systemseitig zugewiesenen verwalteten Identität in der Region der Ressourcengruppe — oder Ihrem vorhandenen Automation-Konto, wenn Sie eines angeben
* **Contributor** für den RealmJoin-Dienstprinzipal, auf dieses Automation-Konto beschränkt, damit RealmJoin Runbooks synchronisieren und starten kann
* Das **Anwendungsberechtigungen** für die vom Modul mitgelieferte verwaltete Identität — Microsoft Graph, Office 365 Exchange Online, Windows Defender ATP und SharePoint Online

RealmJoin authentifiziert sich bei Azure mit seiner eigenen mandantenübergreifenden Anwendung. In Ihrem Tenant werden keine App-Registrierung und kein Client Secret erstellt, und RealmJoin erhält keine Berechtigungen außerhalb dieses Automation-Kontos.

{% hint style="warning" %}
Die verwaltete Identität des **Entra ID-Verzeichnisrollen** — Intune Administrator, Exchange Administrator, User Administrator und so weiter — werden **nicht** durch den Setup-Befehl zugewiesen. Sie müssen weiterhin separat vergeben 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 gemeinsam genutzten Runbooks nicht funktionieren.
{% endhint %}

## Voraussetzungen

### Im RealmJoin Portal

* Eine Rolle, die Zugriff auf den Bereich „Einstellungen“ gewährt (`CanReadSettingsDetails`, siehe [Verfügbare Berechtigungen](/de/verwaltung-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 eine **vorhandene Ressourcengruppe** in die bereitgestellt werden soll — das Modul erstellt die Ressourcengruppe nicht. Eine separate Ressourcengruppe für das Automation-Konto wird empfohlen.
* Optional ein vorhandenes Automation-Konto. Wenn Sie keines angeben, wird ein Konto für Sie 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) zur Installation des RealmJoin-Moduls
* Das `Az.Accounts`, `Az.Resources` und `Az.Automation` Module — das RealmJoin-Modul installiert sie automatisch in den festgelegten Versionen für den aktuellen Benutzer

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

* **Microsoft Entra ID:** Berechtigung zum Erstellen von Dienstprinzipalen **und zum Gewähren von Anwendungsberechtigungen** — das Setup weist der verwalteten Identität 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 dort 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** Erstanbieteranwendung verwendet. Tenants, die Benutzereinwilligungen einschränken, müssen dieser Anwendung möglicherweise zunächst die Administratoreinwilligung 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 benötigt exakte Versionen der `Az.*` Module. Wenn bereits eine andere Version in der Sitzung 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 %}

## Einrichtung

{% stepper %}
{% step %}

#### Ressourcengruppe vorbereiten

Erstellen Sie im Azure Portal die Ressourcengruppe, die das Automation-Konto 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-Konto 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" %}
**Hinweis `6>&1`:** Diese Befehle melden ihren Fortschritt über den Informationsstream von PowerShell. 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. Ergänzen Sie vor der Ausführung die letzte Zeile:

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

* `-ResourceGroupName` ist erforderlich. Wenn Sie ihn weglassen, fordert PowerShell Sie dazu auf.
* `-SubscriptionId` ist optional — andernfalls 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 ein **vorhandenes** Automation-Konto zu verwenden; andernfalls wird ein neues mit einem generierten Namen erstellt.

{% hint style="warning" %}
Wenn der Befehl auf ein vorhandenes Automation-Konto ausgerichtet wird, werden damit auch die Einstellungen erzwungen, die RealmJoin dafür erwartet: eine systemseitig zugewiesene verwaltete Identität, die Basic-SKU und öffentlicher Netzwerkzugriff. Prüfen Sie, ob dies Ihren Anforderungen entspricht, bevor Sie ein Konto erneut verwenden.
{% 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. Der Token ist etwa eine Stunde lang gültig — wenn er 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 — Dienstprinzipal, Automation-Konto, Berechtigungen — und meldet jede Ressource, sobald sie erstellt wird. Ein einzelner Durchlauf dauert normalerweise einige Minuten.

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

{% step %}

#### Weisen Sie der verwalteten Identität die Entra ID-Rollen zu

Das Setup gewährt der verwalteten Identität 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 verwalteten Identität wird im Azure Portal beim Automation-Konto 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>Verwaltete Identität des Automation-Kontos</p></figcaption></figure>
{% endstep %}

{% step %}

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

Kehren Sie zurück zu **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-Kontos und Standort werden jetzt schreibgeschützt unter **Azure-Verbindung** angezeigt — 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-Konto registriert sein, bevor sie hier ausgewählt werden kann.

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

Falls Sie später auf Konfigurations- oder Berechtigungsprobleme stoßen, bringt die **Cmdlet anzeigen** Schaltfläche unter „Azure-Verbindung“ den Befehl zurück — das erneute Ausführen ist sicher und wendet nur das an, was noch fehlt.

## Alte Einrichtung (mandantenbezogene App-Registrierung)

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

<details>

<summary>Alte Einrichtung anzeigen</summary>

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

**Teil 1 — Erstellen Sie ein Azure Automation-Konto**

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

![Erstellen des Automation-Kontos](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 systemseitig zugewiesenen verwalteten Identität](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 dem Automation-Konto zuweisen**

Berechtigungen für verwaltete Identitäten 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 Anwendungsberechtigungen als auch die Entra ID-Rollen aus den JSON-Dateien zu, die im [Runbooks-Repository](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 Dienstprinzipal für RealmJoin**

Im Portal unter Einstellungen > Runbooks wurden zuerst die Tenant-ID, die Abonnement-ID und die Ressourcengruppe eingegeben; die Seite zeigte dann einen auszuführenden Azure-CLI-Ausschnitt an, 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 das `appId` und `password` aus dieser Ausgabe zusammen mit dem Namen des Automation-Kontos, dem Branch des gemeinsam genutzten Runbook-Repositorys (`production`) und dem Speicherort des Automation-Kontos eingegeben. Durch das Speichern wurde der erste Runbook-Import gestartet.

![Verbindung des Automation-Kontos 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 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/de/automatisierung/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.
