# Anforderungen

## PowerShell-Module

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

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

| Modul                            | Mindestversion in Runbooks |
| -------------------------------- | -------------------------- |
| `Az.Accounts`                    | 5.3.4                      |
| `Az.Compute`                     | 5.1.1                      |
| `Az.DesktopVirtualization`       | 5.4.1                      |
| `Az.ManagementPartner`           | 0.7.5                      |
| `Az.Resources`                   | 9.0.1                      |
| `Az.Storage`                     | 9.6.0                      |
| `ExchangeOnlineManagement`       | 3.9.2                      |
| `Microsoft.Graph.Authentication` | 2.35.1                     |
| `MicrosoftTeams`                 | 7.6.0                      |
| `RealmJoin.RunbookHelper`        | 0.8.5                      |

RealmJoin Portal importiert und installiert diese Module automatisch, wenn sie innerhalb eines Runbooks referenziert werden. Dieser Import berücksichtigt auch angegebene Mindestversionen für Module.

## Berechtigungen

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

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

Die folgende Liste von Rollen und Berechtigungen ermöglicht es Ihnen, alle Runbooks zu verwenden, die derzeit in unserem gemeinsamen Repository verfügbar sind.

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

### Entra ID-Rollen

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

* Application Developer
* Cloud Device Administrator
* Exchange-Administrator
* Teams-Administrator
* Benutzeradministrator

### Graph API-Berechtigungen

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

* `Application.Read.All`
* `Application.ReadWrite.OwnedBy`
* `AuditLog.Read.All`
* `BitLockerKey.Read.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.Read.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`
* `Team.Create`
* `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 Gewähren von Berechtigungen für verwaltete Identitäten kann derzeit nicht über Azure Portal erfolgen. Wir empfehlen hierfür die Verwendung von MS Graph-/PowerShell-Skripting.

Sie finden ein Beispiel für diesen Vorgang [hier](https://github.com/Workplace-Foundation/approle-and-directoryrole-granter).

### Azure-Ressourcenberechtigungen

Bitte gewähren Sie dem Abonnement oder der Ressourcengruppe, die den Azure Automation Account für die Runbooks hostet, mindestens Zugriff vom Typ „Contributor“

Einige Runbooks verwenden einen Azure Storage Account, um Berichte oder Sicherungen zu speichern. Bitte gewähren Sie dem entsprechenden Abonnement oder der Ressourcengruppe mindestens Zugriff vom Typ „Contributor“. 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) (systemseitig zugewiesen) als primäre Art der Authentifizierung. Dadurch werden die veralteten RunAs-Konten ersetzt.

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

{% hint style="warning" %}
Wenn gleichzeitig eine verwaltete Identität und ein RunAs-Konto konfiguriert sind, bevorzugen die Runbooks aus dem gemeinsamen Repository von RealmJoin bei Verwendung neuerer Versionen unseres unterstützenden `RealmJoin.RunbookHelper` Moduls ab v0.8.0 automatisch die Verwendung der verwalteten Identität.

Ältere Versionen des Moduls konnten verwaltete Identitäten nicht vollständig nutzen und bevorzugten das RunAs-Konto.

Bitte stellen Sie sicher, dass Sie der verwalteten Identität die erforderlichen Berechtigungen erteilen oder sie vollständig deaktivieren, um nur das RunAs-Konto zu verwenden.
{% endhint %}

### Client Secret

Einige private Runbooks benötigen möglicherweise eine Authentifizierung nach dem ClientID/Secret-Prinzip. Derzeit gibt es keine gemeinsamen 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 Account gespeichert werden.

Derzeit wird die "realmjoin-automation-cred" im Automation-Konto standardmäßig vom RJ-Wizard erstellt, aber mit zufälligen Werten gefüllt - diese müssten mit korrekten Werten gefüllt werden.


---

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