> 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/runbooks/runbook-report-settings.md).

# Runbook-Berichtseinstellungen

Konfigurieren Sie zentrale E-Mail- und Speicherauslieferungseinstellungen für Reporting-Runbooks.

## Überblick

Mehrere RealmJoin-Runbooks enthalten automatisierte Berichtsfunktionen, um Berichte, Benachrichtigungen und Warnungen direkt an Administratoren zu liefern. Je nach Konfiguration können Berichte:

* **per E-Mail gesendet** — unter Verwendung der Microsoft Graph API im Auftrag einer konfigurierten Absenderadresse
* **in einen Azure Storage Account hochgeladen** — und als zeitlich begrenzter SAS-Downloadlink bereitgestellt

Die Unterstützung beider Zustellkanäle ist künftig der angestrebte Standard für alle Reporting-Runbooks. Noch unterstützen möglicherweise nicht alle Reporting-Runbooks beide Kanäle, aber die Menge der unterstützten Runbooks wächst kontinuierlich. Beide Kanäle können unabhängig voneinander oder in Kombination aktiviert werden.

Alle gemeinsamen Einstellungen werden einmalig in der [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) konfiguriert und gelten automatisch für alle Runbooks, die die jeweilige Funktion nutzen. Einstellungen, die je Runbook unterschiedlich sind (z. B. der Name des Zielcontainers), sind nicht Teil dieser zentralen Konfiguration und werden direkt im jeweiligen Runbook festgelegt.

Die Funktionen, die diese Einstellungen verwenden — [`Send-RjRbReportEmail`](/de/dev-reference/report-functions/send-rjrbreportemail.md) und [`Publish-RjRbFilesToStorageContainer`](/de/dev-reference/report-functions/publish-rjrbfilestostoragecontainer.md) — werden bereitgestellt durch das **RealmJoin.RunbookHelper** PowerShell-Modul. Siehe [Report Functions](/de/dev-reference/report-functions.md) für eine detaillierte Nutzungsdokumentation.

## E-Mail-Zustellung

### Voraussetzungen

Wir empfehlen die Verwendung eines dedizierten freigegebenen Postfachs, z. B. `realmjoin-report@contoso.com`. Dieses Postfach wird als Absenderadresse für alle Berichte verwendet. Sie können eine No-Reply-Adresse verwenden, da von den Empfängern nicht erwartet wird, auf automatisierte Berichte zu antworten.

> **Hinweis:** Gruppenadressen als Berichts- **Empfänger** funktionieren technisch, werden aber nicht empfohlen: Ob Mitglieder die E-Mail tatsächlich erhalten, hängt von den Follow-/Abonnementeinstellungen der Gruppe ab, und Zustellfehler sind nur als Unzustellbarkeitsberichte im Postfach des Absenders sichtbar.

### Konfiguration

Wie in der [JSON Based Customizing](https://docs.realmjoin.com/automation/runbooks/runbook-customization#json-based-customizing) Dokumentation ausführlich beschrieben, navigieren Sie zu [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) im RealmJoin Portal (Settings > Runbook Customizations).

In der `Settings` Block, fügen Sie den oder ändern Sie den `RJReport` Abschnitt, um die `EmailSender` Eigenschaft mit Ihrer gewünschten Absender-E-Mail-Adresse aufzunehmen:

```json
{
    "Settings": {
        "RJReport": {
            "EmailSender": "realmjoin-report@contoso.com"
        }
    }
}
```

Ersetzen Sie dies `realmjoin-report@contoso.com` durch Ihre tatsächliche Adresse des freigegebenen Postfachs.

### Service-Desk-Kontaktinformationen (optional)

Diese zentrale Konfiguration stellt nur die einheitlichen Service-Desk-Werte für alle Runbooks bereit. Ob die Kontaktinformationen tatsächlich in einer Benachrichtigungs-E-Mail enthalten sind, wird vom jeweiligen Runbook selbst bestimmt — nur Runbooks, die die entsprechenden Service-Desk-Parameter implementieren (z. B. `ServiceDeskDisplayName`, `ServiceDeskPortalUrl`) lesen diese Werte aus und stellen sie in ihren E-Mails dar.

Um die Service-Desk-Kontaktinformationen für diese Runbooks bereitzustellen, fügen Sie die folgenden Eigenschaften zum `RJReport` Abschnitt hinzu:

```json
{
    "Settings": {
        "RJReport": {
            "EmailSender": "realmjoin-report@contoso.com",
            "ServiceDesk_DisplayName": "IT Service Desk",
            "ServiceDesk_EMail": "servicedesk@domain.com",
            "ServiceDesk_Phone": "+49123456789",
            "ServiceDesk_PortalUrl": "https://servicedesk.domain.com"
        }
    }
}
```

**Parameter:**

* `ServiceDesk_DisplayName` — Anzeigename Ihres Service Desk (z. B. "IT Support", "Help Desk")
* `ServiceDesk_EMail` — E-Mail-Adresse des Service Desk (wird als anklickbare `mailto:` Verknüpfung angezeigt)
* `ServiceDesk_Phone` — Telefonnummer des Service Desk im internationalen Format (wird als anklickbare `tel:` Verknüpfung angezeigt)
* `ServiceDesk_PortalUrl` — URL Ihres Service-Desk-Portals oder Ihrer Website (wird als anklickbarer Link angezeigt)

Alle Parameter sind optional. Wenn sie konfiguriert sind, werden sie in der Fußzeile der E-Mail als anklickbare Links angezeigt.

> **Hinweis:** Einige Runbooks akzeptieren zusätzlich einen Ticket-Link pro Lauf (z. B. `ServiceDeskTicketUrl`) zur Referenz auf das spezifische Ticket, das die Anforderung ausgelöst hat. Dies ist ein Runbook-Parameter und nicht Teil dieser zentralen Konfiguration.

### E-Mail-Branding (optional)

Berichts-E-Mails können mandantenspezifisches Branding tragen: Die standardmäßigen RealmJoin-Kopf- und Fußzeilengrafiken können durch eigene Bilder ersetzt werden, das Fußzeilenbild kann auf ein benutzerdefiniertes Ziel verlinken — zum Beispiel Ihr Intranet oder IT-Portal — und die Vorlagenfarben können an Ihr Corporate Design angepasst werden.

Um das Branding zu konfigurieren, fügen Sie einen `Branding` Unterabschnitt zum `RJReport` Block hinzu (verschachtelt wie `StorageAccount`):

```json
{
    "Settings": {
        "RJReport": {
            "Branding": {
                "HeaderImageUrl": "https://cdn.contoso.com/branding/email-header.png",
                "FooterImageUrl": "https://cdn.contoso.com/branding/email-footer.png",
                "FooterLink": "https://intranet.contoso.com",
                "AccentColor": "#0052cc",
                "TextColor": "#1a1a2e"
            }
        }
    }
}
```

**Parameter:**

| Einstellung      | Erforderlich | Standard                     | Beschreibung                                                                                                               |
| ---------------- | ------------ | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `HeaderImageUrl` | nein         | RealmJoin-Kopfzeilengrafik   | Öffentliche HTTPS-URL eines benutzerdefinierten Kopfzeilenbilds, das die standardmäßige RealmJoin-Kopfzeilengrafik ersetzt |
| `FooterImageUrl` | nein         | RealmJoin-Fußzeilengrafik    | Öffentliche HTTPS-URL eines benutzerdefinierten Fußzeilenbilds, das die standardmäßige RealmJoin-Fußzeilengrafik ersetzt   |
| `FooterLink`     | nein         | `https://www.realmjoin.com`  | URL, auf die das Fußzeilenbild verweist                                                                                    |
| `AccentColor`    | nein         | `#f8842c` (RealmJoin-Orange) | Akzentfarbe der E-Mail-Vorlage: Tabellenkopfzeilen, Aktionsschaltflächen, Akzentrahmen der Infofelder                      |
| `TextColor`      | nein         | `#011e33` (RealmJoin-Navy)   | Primäre Textfarbe der E-Mail-Vorlage: Fließtext, Überschriften, Listenelemente, Code                                       |

**Anforderungen an Bilder:**

* Das Bild muss über eine **öffentliche HTTPS-URL** erreichbar sein — zum Beispiel ein Azure Blob Storage-Container mit anonymem Lesezugriff, ein CDN oder die Unternehmenswebsite. Eine URL mit einem SAS-Token funktioniert ebenfalls und hält den Container privat.
* Unterstützte Formate: **PNG, JPEG oder GIF**. Das Format wird anhand der Dateisignatur und nicht anhand der Dateiendung erkannt.
* Bilder werden mit **750 px Breite**. Empfohlene Abmessungen sind **750×200 px** (entsprechend den Standard-Bannern) oder **1500×400 px** für High-DPI-Displays.
* Maximal **200 KB** pro Bild; **100 KB oder weniger** wird empfohlen. Die Branding-Bilder teilen sich das gesamte E-Mail-Größenlimit von ca. 4 MB mit den Berichtsanlagen (zum Vergleich: Die standardmäßigen RealmJoin-Grafiken sind 52 KB und 15 KB).

**Farbanforderungen:**

* Werte müssen 6-stellige hexadezimale Farben einschließlich des führenden `#` — zum Beispiel `#0052cc`. Kurzformen (`#05c`) und Farbnamen (`rot`) werden nicht unterstützt.
* Sowohl die E-Mails als auch ihre Anhänge werden im hellen **und** Dunkelmodus gelesen: Wählen Sie eine Textfarbe, die auf einer weißen Inhaltskarte lesbar bleibt, und eine Akzentfarbe mit genügend Kontrast zum weißen Schaltflächentext.
* Statusfarben (grün/rot/bernsteinfarben für Erfolgs-, Fehler- und Warnzustände) und die neutralen Grautöne sind absichtlich nicht konfigurierbar — sie tragen Bedeutung, die sich pro Tenant nicht ändern sollte.

Die Bilder werden bei jedem Lauf vom Runbook heruntergeladen und validiert. Wenn eine Einstellung leer gelassen wird, werden die standardmäßige RealmJoin-Grafik, Farbe und Fußzeilenverknüpfung verwendet. Wenn ein Download fehlschlägt, ein Bild ungültig ist oder eine Farbe kein gültiger Hexwert ist, wird eine Warnung protokolliert und stattdessen der entsprechende Standard verwendet — eine fehlerhafte Branding-Konfiguration verhindert niemals, dass eine Report-E-Mail gesendet wird.

Alle Einstellungen sind optional und gelten für alle Runbooks, die Report-E-Mails senden.

> **Hinweis:** Die Farbeinstellungen erfordern **RealmJoin.RunbookHelper 0.8.9** oder neuer im Automation Account. Bei älteren Modulversionen gelten die Bildeinstellungen weiterhin und die Farben werden ignoriert.

## Zustellung über Storage Account

Reporting-Runbooks, die diesen Zustellkanal unterstützen, können ihre Ausgabe in einen Azure Blob Storage-Container hochladen. Nach einem erfolgreichen Upload gibt das Runbook einen zeitlich begrenzten SAS-Link zurück, über den die Datei direkt heruntergeladen werden kann. Dieser Kanal kann unabhängig von der E-Mail-Zustellung oder zusätzlich dazu verwendet werden.

### Voraussetzungen

Ein vorhandenes Azure Storage Account ist erforderlich. Die verwaltete Identität des Automation Accounts (oder der von den Runbooks verwendete Service Principal) benötigt die integrierte Azure RBAC-Rolle **Reader and Data Access**, direkt dem Storage Account zugewiesen.

Der Upload ruft den Storage-Account-Schlüssel über `listKeys` ab und verwendet ihn, um den Container zu erstellen, die Dateien hochzuladen und die SAS-Downloadlinks zu signieren. **Reader and Data Access** ist die kleinste integrierte Rolle, die diese Aktion umfasst. **Storage Account Contributor** funktioniert ebenfalls, erlaubt aber zusätzlich die Verwaltung und das Löschen des Storage Account. **Storage Blob Data Contributor** ist nicht ausreichend, da sie `listKeys`.

> **Hinweis:** Der Kontoschlüssel gewährt Zugriff auf alle Daten im Storage Account. Verwenden Sie für Berichte einen dedizierten Storage Account und weisen Sie die Rolle auf dem Storage Account zu, nicht auf seiner Ressourcengruppe. Der Zugriff mit gemeinsam genutztem Schlüssel muss auf dem Storage Account erlaubt sein (`allowSharedKeyAccess` darf nicht `false`sein, zum Beispiel über die Azure Policy "Storage accounts should prevent shared key access"), andernfalls schlägt der Upload fehl.

### Konfiguration

Navigieren Sie zu [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) und fügen Sie einen `StorageAccount` Unterabschnitt zum `RJReport` Block hinzu:

```json
{
    "Settings": {
        "RJReport": {
            "StorageAccount": {
                "ResourceGroup": "rg-reports",
                "StorageAccountName": "stcontosoreports",
                "LinkExpiryDays": 6
            }
        }
    }
}
```

**Parameter:**

| Einstellung          | Erforderlich | Standard | Beschreibung                                                 |
| -------------------- | ------------ | -------- | ------------------------------------------------------------ |
| `ResourceGroup`      | ja           | —        | Ressourcengruppe, die das Storage Account enthält            |
| `StorageAccountName` | ja           | —        | Name des Azure Storage Account                               |
| `LinkExpiryDays`     | nein         | `6`      | Anzahl der Tage, bis der generierte SAS-Downloadlink abläuft |

> **Hinweis:** Einstellungen, die spezifisch für ein einzelnes Runbook sind — wie der Name des Zielcontainers oder ein benutzerdefinierter Blob-Name — werden direkt in diesem Runbook konfiguriert und sind absichtlich nicht Teil dieser zentralen Konfiguration. Dasselbe gilt für die Voranstellung eines Blob-Namens: Ob ein Zeitstempel-Präfix (`yyyyMMdd-HHmmss`) dem Blob-Namen vorangestellt wird, um Überschreibungen zu verhindern, wird gesteuert durch den `AddBlobNamePrefix` Parameter von [`Publish-RjRbFilesToStorageContainer`](/de/dev-reference/report-functions/publish-rjrbfilestostoragecontainer.md) (Standard `$false`), den jedes Runbook explizit übergibt.

## Kombiniertes Beispiel

Der folgende Ausschnitt zeigt eine vollständige `RJReport` Konfiguration mit allen aktivierten Funktionen:

```json
{
    "Settings": {
        "RJReport": {
            "EmailSender": "realmjoin-report@contoso.com",
            "ServiceDesk_DisplayName": "IT Service Desk",
            "ServiceDesk_EMail": "servicedesk@domain.com",
            "ServiceDesk_Phone": "+49123456789",
            "ServiceDesk_PortalUrl": "https://servicedesk.domain.com",
            "Branding": {
                "HeaderImageUrl": "https://cdn.contoso.com/branding/email-header.png",
                "FooterImageUrl": "https://cdn.contoso.com/branding/email-footer.png",
                "FooterLink": "https://intranet.contoso.com",
                "AccentColor": "#0052cc",
                "TextColor": "#1a1a2e"
            },
            "StorageAccount": {
                "ResourceGroup": "rg-reports",
                "StorageAccountName": "stcontosoreports",
                "LinkExpiryDays": 6
            }
        }
    }
}
```


---

# 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/runbooks/runbook-report-settings.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.
