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

# Paramètres des rapports runbook

Configurez les paramètres centralisés de livraison par e-mail et de stockage pour les runbooks de reporting.

## Aperçu

Plusieurs runbooks RealmJoin incluent des fonctionnalités automatisées de reporting pour fournir des rapports, des notifications et des alertes directement aux administrateurs. Selon la configuration, les rapports peuvent être :

* **envoyés par e-mail** — en utilisant l'API Microsoft Graph au nom d'une adresse d'expéditeur configurée
* **téléversés vers un Azure Storage Account** — et rendus disponibles sous forme de lien de téléchargement SAS à durée limitée

La prise en charge des deux canaux de distribution est la norme prévue pour tous les runbooks de reporting à l'avenir. Tous les runbooks de reporting ne prennent pas encore en charge les deux canaux, mais la liste des runbooks pris en charge s'élargit continuellement. Les deux canaux peuvent être activés indépendamment ou en combinaison.

Tous les paramètres partagés sont configurés une seule fois dans le [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) et s'appliquent automatiquement à tous les runbooks qui utilisent la fonctionnalité correspondante. Les paramètres qui diffèrent selon le runbook (comme le nom du conteneur cible) ne font pas partie de cette configuration centrale et sont définis directement dans le runbook concerné.

Les fonctions qui utilisent ces paramètres — [`Send-RjRbReportEmail`](/fr/dev-reference/report-functions/send-rjrbreportemail.md) et [`Publish-RjRbFilesToStorageContainer`](/fr/dev-reference/report-functions/publish-rjrbfilestostoragecontainer.md) — sont fournies par le **RealmJoin.RunbookHelper** module PowerShell. Voir [Fonctions de rapport](/fr/dev-reference/report-functions.md) pour la documentation détaillée d'utilisation.

## Distribution par e-mail

### Prérequis

Nous recommandons d'utiliser une boîte aux lettres partagée dédiée, telle que `realmjoin-report@contoso.com`. Cette boîte aux lettres sera utilisée comme adresse d'expéditeur pour tous les rapports. Vous pouvez utiliser une adresse no-reply, car les destinataires ne sont pas censés répondre aux rapports automatiques.

> **Remarque :** L'adresse d'expéditeur doit être une boîte aux lettres utilisateur ou partagée — un groupe Microsoft 365 ne peut pas envoyer de messages via l'API Graph. Les adresses de groupe comme destinataires de rapport **destinataires** fonctionnent techniquement, mais ne sont pas recommandées : le fait que les membres reçoivent réellement l'e-mail dépend des paramètres de suivi/abonnement du groupe, et les échecs de livraison ne sont visibles que sous forme de rapports de non-distribution dans la boîte aux lettres de l'expéditeur.

### Configuration

Comme décrit en détail dans la [Personnalisation basée sur JSON](https://docs.realmjoin.com/automation/runbooks/runbook-customization#json-based-customizing) documentation, accédez à [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) dans le portail RealmJoin (Settings > Runbook Customizations).

Dans le `Settings` bloc, ajoutez ou modifiez la `RJReport` section pour inclure la `EmailSender` propriété avec l'adresse e-mail d'expéditeur souhaitée :

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

Remplacez `realmjoin-report@contoso.com` par l'adresse réelle de votre boîte aux lettres partagée.

### Informations de contact du Service Desk (facultatif)

Cette configuration centrale fournit uniquement les valeurs unifiées du Service Desk pour tous les runbooks. Le fait que les informations de contact soient effectivement incluses dans un e-mail de notification est déterminé par le runbook concerné lui-même — seuls les runbooks qui implémentent les paramètres correspondants du Service Desk (par ex. `ServiceDeskDisplayName`, `ServiceDeskPortalUrl`) lisent ces valeurs et les affichent dans leurs e-mails.

Pour fournir les informations de contact du Service Desk pour ces runbooks, ajoutez les propriétés suivantes à la `RJReport` section :

```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"
        }
    }
}
```

**Paramètres :**

* `ServiceDesk_DisplayName` — Nom affiché de votre Service Desk (par ex., "IT Support", "Help Desk")
* `ServiceDesk_EMail` — Adresse e-mail du Service Desk (affichée sous forme de `mailto:` lien)
* `ServiceDesk_Phone` — Numéro de téléphone du Service Desk au format international (affiché sous forme de `tel:` lien)
* `ServiceDesk_PortalUrl` — URL de votre portail ou site web du Service Desk (affichée sous forme de lien cliquable)

Tous les paramètres sont facultatifs. S'ils sont configurés, ils apparaîtront dans le pied de page de l'e-mail sous forme de liens cliquables.

> **Remarque :** Certains runbooks acceptent en outre un lien de ticket par exécution (par ex. `ServiceDeskTicketUrl`) afin de faire référence au ticket spécifique qui a déclenché la demande. Il s'agit d'un paramètre de runbook, et non d'une partie de cette configuration centrale.

### Branding des e-mails (facultatif)

Les e-mails de rapport peuvent intégrer une identité visuelle spécifique au tenant : les graphiques d'en-tête et de pied de page par défaut de RealmJoin peuvent être remplacés par vos propres images, l'image du pied de page peut pointer vers une cible personnalisée — par exemple votre intranet ou portail informatique — et les couleurs du modèle peuvent être adaptées à votre charte graphique.

Pour configurer l'identité visuelle, ajoutez une `Branding` sous-section au `RJReport` bloc (imbriquée comme `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"
            }
        }
    }
}
```

**Paramètres :**

| Paramètre        | Requis | Par défaut                          | Description                                                                                                                         |
| ---------------- | ------ | ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `HeaderImageUrl` | non    | graphique d'en-tête RealmJoin       | URL HTTPS publique d'une image d'en-tête personnalisée qui remplace le graphique d'en-tête RealmJoin par défaut                     |
| `FooterImageUrl` | non    | graphique de pied de page RealmJoin | URL HTTPS publique d'une image de pied de page personnalisée qui remplace le graphique de pied de page RealmJoin par défaut         |
| `FooterLink`     | non    | `https://www.realmjoin.com`         | URL vers laquelle l'image de pied de page pointe                                                                                    |
| `AccentColor`    | non    | `#f8842c` (orange RealmJoin)        | Couleur d'accent du modèle d'e-mail : lignes d'en-tête des tableaux, boutons d'action, bordures d'accent des encadrés d'information |
| `TextColor`      | non    | `#011e33` (bleu marine RealmJoin)   | Couleur principale du texte du modèle d'e-mail : texte du corps, titres, éléments de liste, code                                    |

**Exigences relatives aux images :**

* L'image doit être accessible via une **URL HTTPS publique** — par exemple un conteneur Azure Blob Storage avec un accès en lecture anonyme, un CDN ou le site web de l'entreprise. Une URL contenant un SAS Token fonctionne également et permet de conserver le conteneur privé.
* Formats pris en charge : **PNG, JPEG ou GIF**. Le format est détecté à partir de la signature du fichier, et non de son extension.
* Les images sont rendues à **750 px de large**. Les dimensions recommandées sont **750×200 px** (correspondant aux bannières par défaut) ou **1500×400 px** pour les écrans haute résolution.
* Maximum **200 KB** par image ; **100 KB ou moins** est recommandé. Les images d'identité visuelle partagent avec les pièces jointes du rapport la limite totale d'environ 4 MB pour la taille de l'e-mail (à titre de comparaison, les graphiques RealmJoin par défaut font 52 KB et 15 KB).

**Exigences de couleur :**

* Les valeurs doivent être des couleurs hexadécimales à 6 chiffres, y compris le `#` — par exemple `#0052cc`. Les formes abrégées (`#05c`) et les noms de couleur (`rouge`) ne sont pas pris en charge.
* Les e-mails et leurs pièces jointes sont lus en mode clair **et** mode sombre : choisissez une couleur de texte qui reste lisible sur une carte de contenu blanche, et une couleur d'accent avec un contraste suffisant par rapport au texte blanc des boutons.
* Les couleurs d'état (vert/rouge/ambre pour les états de succès, d'erreur et d'avertissement) ainsi que les gris neutres ne sont volontairement pas configurables — elles portent un sens qui ne doit pas changer d'un tenant à l'autre.

Les images sont téléchargées et validées par le runbook à chaque exécution. Si un paramètre est laissé vide, le graphique, la couleur et le lien de pied de page RealmJoin par défaut sont utilisés. Si un téléchargement échoue, qu'une image est invalide ou qu'une couleur n'est pas une valeur hexadécimale valide, un avertissement est consigné et la valeur par défaut correspondante est utilisée à la place — une configuration d'identité visuelle défectueuse n'empêche jamais l'envoi d'un e-mail de rapport.

Tous les paramètres sont facultatifs et s'appliquent à tous les runbooks qui envoient des e-mails de rapport.

> **Remarque :** Les paramètres de couleur nécessitent **RealmJoin.RunbookHelper 0.8.9** ou une version ultérieure dans le compte Automation. Avec des versions plus anciennes du module, les paramètres d'image s'appliquent toujours et les couleurs sont ignorées.

## Distribution vers Storage Account

Les runbooks de reporting qui prennent en charge ce canal de distribution peuvent téléverser leur sortie vers un conteneur Azure Blob Storage. Après un téléversement réussi, le runbook renvoie un lien SAS à durée limitée qui peut être utilisé pour télécharger directement le fichier. Ce canal peut être utilisé indépendamment de la distribution par e-mail ou en complément de celle-ci.

### Prérequis

Un Azure Storage Account existant est requis. L'identité managée du compte Automation (ou le Service Principal utilisé par les runbooks) a besoin du rôle Azure RBAC intégré **Reader and Data Access**, attribué directement sur le Storage Account.

Le téléversement récupère la clé du compte de stockage via `listKeys` et l'utilise pour créer le conteneur, téléverser les fichiers et signer les liens de téléchargement SAS. **Reader and Data Access** est le plus petit rôle intégré qui inclut cette action. **Storage Account Contributor** fonctionne également, mais permet en plus de gérer et de supprimer le Storage Account. **Storage Blob Data Contributor** n'est pas suffisant, car il n'inclut pas `listKeys`.

> **Remarque :** La clé du compte donne accès à toutes les données du Storage Account. Utilisez un Storage Account dédié pour les rapports et attribuez le rôle sur le Storage Account, et non sur son groupe de ressources. L'accès par clé partagée doit être autorisé sur le Storage Account (`allowSharedKeyAccess` ne doit pas être `false`, par exemple via la stratégie Azure Policy "Storage accounts should prevent shared key access"), sinon le téléversement échoue.

### Configuration

Accédez à [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) et ajoutez un `StorageAccount` sous-section au `RJReport` bloc :

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

**Paramètres :**

| Paramètre            | Requis | Par défaut | Description                                                             |
| -------------------- | ------ | ---------- | ----------------------------------------------------------------------- |
| `ResourceGroup`      | oui    | —          | Groupe de ressources qui contient le Storage Account                    |
| `StorageAccountName` | oui    | —          | Nom du Storage Account Azure                                            |
| `LinkExpiryDays`     | non    | `6`        | Nombre de jours avant l'expiration du lien de téléchargement SAS généré |

> **Remarque :** Les paramètres spécifiques à un runbook individuel — comme le nom du conteneur cible ou un nom d'objet blob personnalisé — sont configurés directement dans ce runbook et ne font volontairement pas partie de cette configuration centrale. Il en va de même pour le préfixage du nom du blob : qu'un préfixe d'horodatage (`yyyyMMdd-HHmmss`) soit ajouté au nom du blob afin d'éviter les écrasements est contrôlé par le `AddBlobNamePrefix` paramètre de [`Publish-RjRbFilesToStorageContainer`](/fr/dev-reference/report-functions/publish-rjrbfilestostoragecontainer.md) (par défaut `$false`), que chaque runbook transmet explicitement.

## Exemple combiné

L'extrait suivant montre une `RJReport` configuration complète avec toutes les fonctionnalités activées :

```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/fr/automatisation/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.
