> 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/azure-ad-roles-and-permissions.md).

# Anforderungen für die Runbook-Ausführung

Diese Wiki-Seite behandelt die Anforderungen und (systemweiten) Berechtigungen, die erteilt werden müssen, damit Runbooks ausgeführt werden können.

## PowerShell-Module

{% hint style="info" %}
Der Abschnitt PowerShell-Module wird automatisch aktualisiert basierend auf dem [öffentlichen Repository](https://github.com/realmjoin/realmjoin-runbooks).
{% endhint %}

Die freigegebenen Runbooks, die auf [GitHub](https://github.com/realmjoin/realmjoin-runbooks) erwarten/verwenden die folgenden Windows PowerShell-Module:

| Modul                            | Mindestversion in Runbooks |
| -------------------------------- | -------------------------- |
| `Az.Accounts`                    | 5.5.2                      |
| `Az.Compute`                     | 11.8.0                     |
| `Az.DesktopVirtualization`       | 6.0.0                      |
| `Az.ManagementPartner`           | 0.8.0                      |
| `Az.Storage`                     | 9.7.2                      |
| `ExchangeOnlineManagement`       | 3.9.2                      |
| `Microsoft.Graph.Authentication` | 2.39.0                     |
| `MicrosoftTeams`                 | 7.9.0                      |
| `PnP.PowerShell`                 | 3.4.1                      |
| `RealmJoin.RunbookHelper`        | 0.8.9                      |

RealmJoin Portal importiert und installiert diese Module automatisch, wenn sie innerhalb eines Runbooks referenziert werden. Bei diesem Import werden auch die angegebenen Mindestversionen der Module berücksichtigt.

## Berechtigungen

{% hint style="info" %}
Der Abschnitt Berechtigungen wird automatisch aktualisiert basierend auf dem [öffentlichen Repository](https://github.com/realmjoin/realmjoin-runbooks).
{% endhint %}

Die freigegebenen Runbooks von RealmJoin verwenden die von Azure Automation [systemzugewiesene verwaltete Identität](https://learn.microsoft.com/en-us/azure/automation/enable-managed-identity-for-automation) um mit Entra ID, Microsoft Graph API usw. zu interagieren.

Die folgende Liste von Rollen und Berechtigungen ermöglicht Ihnen die Nutzung aller derzeit in unserem freigegebenen Repository verfügbaren Runbooks.

Es wird nicht empfohlen, diese Rollen/Berechtigungen zu reduzieren, da die Runbooks nur gegen diesen Berechtigungssatz getestet werden. Wenn Sie den Satz an Rollen/Berechtigungen reduzieren, funktionieren einige Runbooks nicht mehr.

### Entra ID-Rollen

Bitte weisen Sie der verwalteten Identität die folgenden Entra ID-Rollen zu

* Anwendungsentwickler
* Cloudgeräteadministrator
* Exchange-Administrator
* Intune-Administrator
* Teams-Administrator
* Benutzeradministrator

### Graph API-Berechtigungen

Bitte gewähren Sie der verwalteten Identität die folgenden Graph API-Berechtigungen

* `Application.ReadWrite.All`
* `Application.ReadWrite.OwnedBy`
* `AppRoleAssignment.ReadWrite.All`
* `AuditLog.Read.All`
* `BitlockerKey.Read.All`
* `Channel.ReadBasic.All`
* `ChannelMember.ReadWrite.All`
* `CloudPC.ReadWrite.All`
* `Device.ReadWrite.All`
* `DeviceLocalCredential.Read.All`
* `DeviceManagementApps.ReadWrite.All`
* `DeviceManagementConfiguration.ReadWrite.All`
* `DeviceManagementManagedDevices.PrivilegedOperations.All`
* `DeviceManagementManagedDevices.ReadWrite.All`
* `DeviceManagementServiceConfig.ReadWrite.All`
* `Directory.ReadWrite.All`
* `Group.Create`
* `Group.ReadWrite.All`
* `GroupMember.ReadWrite.All`
* `IdentityRiskyUser.ReadWrite.All`
* `InformationProtectionPolicy.Read.All`
* `Mail.Send`
* `Organization.Read.All`
* `Place.Read.All`
* `Policy.Read.All`
* `Reports.Read.All`
* `ReportSettings.ReadWrite.All`
* `RoleAssignmentSchedule.Read.Directory`
* `RoleManagement.Read.All`
* `RoleManagement.Read.Directory`
* `ServiceHealth.Read.All`
* `Team.Create`
* `TeamMember.ReadWrite.All`
* `TeamSettings.ReadWrite.All`
* `User.ReadWrite.All`
* `UserAuthenticationMethod.ReadWrite.All`
* `WindowsUpdates.ReadWrite.All`

### Weitere App-API-Berechtigungen

Bitte gewähren Sie der verwalteten Identität die folgenden Office 365 Exchange Online-API-Berechtigungen

* `Exchange.ManageAsApp`

Bitte gewähren Sie der verwalteten Identität die folgenden WindowsDefenderATP-API-Berechtigungen

* `Machine.Read.All`
* `Machine.Isolate`
* `Machine.RestrictExecution`
* `Ti.ReadWrite.All`

Bitte gewähren Sie der verwalteten Identität die folgenden SharePoint API-Berechtigungen

* `User.Read.All`
* `Sites.Read.All`
* `Sites.FullControl.All`

### Zuweisen von Rollen und Berechtigungen

Das Zuweisen von Berechtigungen zu Managed Identities kann derzeit nicht über das Azure Portal erfolgen. Wir empfehlen hierfür die Verwendung von Microsoft Graph / PowerShell-Skripting.

{% hint style="info" %}
`Set-RJAutomationAccount` aus dem RealmJoin PowerShell-Modul — siehe [Azure Automation verbinden](/de/automatisierung/connecting-azure-automation.md) — weist bereits die **API-Berechtigungen** die es für Microsoft Graph, Exchange Online, Defender und SharePoint bündelt, wenn es das Automation-Konto einrichtet oder aktualisiert.

Es **nicht** weist die **Entra ID-Rollen** oben aufgeführt sind, und sein gebündelter Berechtigungssatz wird separat von dieser Seite gepflegt, die aus dem [Runbooks-Repository](https://github.com/realmjoin/realmjoin-runbooks). Verwenden Sie die untenstehenden Skripte für die Entra ID-Rollen und um alle API-Berechtigungen hinzuzufügen, die ein Runbook benötigt und die das Modul nicht abdeckt.
{% endhint %}

Ein Beispiel für diesen Prozess finden Sie [hier](https://github.com/Workplace-Foundation/approle-and-directoryrole-granter). Die JSON-Dateien, die es erwartet, werden in der [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
```

Die Objekt-ID der verwalteten Identität wird im Azure Portal im Automation-Konto unter Kontoeinstellungen > Identität angezeigt.

### Azure-Ressourcenberechtigungen

Bitte gewähren Sie für das Azure Automation-Konto, das die Runbooks hostet, mindestens „Contributor“-Zugriff auf das Abonnement oder die Ressourcengruppe.

Einige Runbooks verwenden ein Azure Storage Account, um Berichte oder Backups zu speichern. Bitte gewähren Sie dem entsprechenden Abonnement oder der entsprechenden Ressourcengruppe mindestens „Contributor“-Zugriff. Die meisten Runbooks können dann die Ressourcen innerhalb der Ressourcengruppe selbst erstellen.

## Authentifizierungsmethoden

### Verwaltete Identitäten

Azure Automation unterstützt [Verwaltete Identitäten](https://docs.microsoft.com/en-us/azure/automation/enable-managed-identity-for-automation) (systemzugewiesen) als primäre Methode zur Authentifizierung. Dies ersetzt die veralteten RunAs-Konten.

Die RealmJoin Runbooks unterstützen derzeit RunAs-Konten, wenn keine verwaltete Identität konfiguriert ist.

{% hint style="warning" %}
Wenn eine Managed Identity und ein RunAs-Konto gleichzeitig konfiguriert sind, bevorzugen die Runbooks aus dem freigegebenen Repository von RealmJoin automatisch die Verwendung der Managed Identity, wenn neuere Versionen unseres unterstützenden `RealmJoin.RunbookHelper` Moduls ab v0.8.0.

Ältere Versionen des Moduls konnten Managed Identities nicht vollständig nutzen und bevorzugten das RunAs-Konto.

Bitte stellen Sie sicher, dass Sie der Managed Identity die benötigten Berechtigungen gewähren oder sie vollständig deaktivieren, um nur das RunAs-Konto zu verwenden.
{% endhint %}

### Clientgeheimnis

Einige private Runbooks benötigen möglicherweise eine Authentifizierung im ClientID/Secret-Stil. Derzeit gibt es keine freigegebenen Runbooks, die ClientID und Secret erfordern.

Falls erforderlich, können eine ClientID und ein Secret in den verwalteten Anmeldeinformationen mit dem Namen „realmjoin-automation-cred“ im Azure Automation-Konto gespeichert werden.

Derzeit wird „realmjoin-automation-cred“ im Automation-Konto standardmäßig vom RJ-Wizard erstellt, jedoch mit zufälligen Werten gefüllt – diese müssten mit korrekten Werten befüllt werden.


---

# 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/azure-ad-roles-and-permissions.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.
