# Politiques

> Enrichit un flux sans toucher à l'amont : poser, retirer ou renommer des en-têtes, réécrire un chemin, filtrer les champs d'une réponse, masquer des données…

Concept - Depuis la version 0.1.0 - Flexway v1.6.3 - https://flexway.io/docs/product-policies/

> Guide produit : ce que la capacité apporte, pour qui, ses limites et la version qui l'a livrée - sans syntaxe de configuration.

| | |
| --- | --- |
| **Ce que ça fait** | Enrichit un flux sans toucher à l'amont : poser, retirer ou renommer des en-têtes, réécrire un chemin, filtrer les champs d'une réponse, masquer des données personnelles, traduire un statut d'amont non standard, demander l'avis d'un service tiers avant de relayer. Les politiques s'attachent à quatre niveaux (global, hôte, routes, opération), la plus précise gagne, sous des conditions CEL compilées au chargement |
| **Pourquoi c'est important** | Ce qui demande ailleurs un greffon maintenu par chaque équipe devient une déclaration revue en Git. Une chaîne effective se **simule** avant d'être déployée : on sait quelle politique s'applique à quelle requête, sans appeler l'amont |
| **Cas d'usage** | Ne servir qu'une liste fermée de champs à un partenaire ; masquer un IBAN dans une réponse ; transformer le `200 {"error":...}` d'un système ancien en vrai `404` ; demander à un service de risque s'il accepte une commande |
| **Limites** | Pas de code embarqué : les modules WebAssembly sont un candidat de `2.0.0` ; un appel externe déclare toujours son délai et son comportement en panne, jamais par défaut ; pas de compression négociée avant `1.8.0` |
| **Depuis** | `0.1.0` (moteur de politiques), `1.0.0` (simulation), `1.2.0` (corps et statut de réponse, appel externe) |
| **Configurer** | [Enrichir un flux](https://flexway.io/docs/operations-policies/), [Remodeler une réponse](https://flexway.io/docs/operations-response-body/), [Déléguer une décision à un service](https://flexway.io/docs/operations-external-call/) |
