> ## Documentation Index
> Fetch the complete documentation index at: https://docs.livingsecurity.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuration de Zscaler ZIA Cloud NSS

> Envoyez les journaux web de Zscaler Internet Access à Living Security via un flux Cloud NSS.

Connectez un flux Cloud Nanolog Streaming Service (NSS) de Zscaler Internet Access (ZIA) pour envoyer des journaux web à Living Security. Il s'agit d'une intégration de type « push ». Elle est distincte de l'intégration [Zscaler Client Connector](/fr/integrations/catalog/zscaler-client-connector-custom), fondée sur la récupération des données (« pull »).

## Apport de cette intégration

Le flux de journaux web permet d'identifier l'utilisateur et l'appareil concernés par l'activité web, et peut fournir des activités normalisées, telles que les requêtes bloquées, les destinations malveillantes, les blocages de transferts de données et l'utilisation de l'IA générative. Le résultat dépend des champs et des filtres configurés dans Zscaler.

## Avant de commencer

Vous avez besoin des éléments suivants :

* un abonnement ZIA Cloud NSS et l'autorisation de gérer les flux Cloud NSS
* l'autorisation de gérer les intégrations et les clés d'accès dans Living Security
* la région de l'organisation Living Security cible
* un emplacement sécurisé pour conserver la clé d'accès générée

Zscaler exige un certificat TLS émis par une autorité publiquement reconnue pour une destination Cloud NSS en HTTPS. Les points de terminaison régionaux de Living Security répondent à cette exigence.

## 1. Préparer Living Security

<Steps>
  <Step title="Créer la source et le flux">
    Accédez à **Paramètres → Intégrations → Catalogue**, ajoutez **Custom Push Source**, puis utilisez exactement les clés de routage suivantes :

    | Champ | Valeur |
    | - | - |
    | Data Source Name | `zscaler-nss-feed` |
    | Stream Name | `web_logs` |

    Le trait de soulignement dans `web_logs` est obligatoire. Un autre couple de valeurs peut accepter des données, mais n'utilisera pas l'interpréteur Zscaler NSS maintenu.
  </Step>

  <Step title="Créer une clé d'accès">
    Accédez à **Paramètres → Access Keys**, créez une clé d'accès avec la portée **Push Ingest**, puis copiez immédiatement sa valeur.
  </Step>

  <Step title="Construire l'URL de destination">
    Utilisez l'URL correspondant à la région Living Security :

    * États-Unis : `https://api.us-east-1.livingsecurity.ai/api/v1/push-ingest/zscaler-nss-feed/web_logs`
    * Union européenne : `https://api.eu-west-1.livingsecurity.ai/api/v1/push-ingest/zscaler-nss-feed/web_logs`
  </Step>
</Steps>

## 2. Créer le flux Cloud NSS

Dans le portail d'administration ZIA actuel, accédez à **Logs → Log Streaming → Internet Log Streaming — Nanolog Streaming Service**, ouvrez **Cloud NSS Feeds**, puis sélectionnez **Add Cloud NSS Feed**. Les libellés des menus peuvent différer dans les anciennes versions du portail ZIA ; les [instructions de Zscaler pour les journaux web Cloud NSS](https://help.zscaler.com/zia/adding-cloud-nss-feeds-web-logs) font foi pour la navigation dans le portail.

Configurez le flux :

| Champ Zscaler | Valeur |
| - | - |
| Feed Name | Un nom facilement reconnaissable, tel que `Living Security web logs` |
| NSS Type | **NSS for Web** |
| Status | **Disabled** pendant la configuration ; activez-le après vérification |
| SIEM Rate | **Unlimited**, sauf si votre propre politique impose un débit inférieur |
| SIEM Type | **Other** |
| OAuth 2.0 Authentication | **Disabled** |
| Max Batch Size | **512 KB** |
| API URL | L'URL régionale de Living Security obtenue à l'étape 1 |
| HTTP Header 1 | `Authorization` = `Bearer <access-key>` |
| HTTP Header 2 | `Content-Type` = `application/json` |
| Log Type | **Web Log** |
| Feed Output Type | **JSON** |
| JSON Array Notation | **Enabled** |
| Feed Escape Character | `,\"` |

<Warning>
  N'utilisez pas `x-api-key` et ne combinez pas une ancienne clé d'API et un secret
  séparés par un point. L'ingestion push actuelle de Living Security n'accepte la clé d'accès
  délimitée que dans l'en-tête `Authorization: Bearer …`.
</Warning>

Utilisez ce **Feed Output Format** exact, à plat, sur une seule ligne :

```text theme={null}
{"datetime":"%d{yy}-%02d{mth}-%02d{dd} %02d{hh}:%02d{mm}:%02d{ss}","reason":"%s{reason}","event_id":"%d{recordid}","protocol":"%s{proto}","action":"%s{action}","transactionsize":"%d{totalsize}","responsesize":"%d{respsize}","requestsize":"%d{reqsize}","urlcategory":"%s{urlcat}","serverip":"%s{sip}","requestmethod":"%s{reqmethod}","refererURL":"%s{ereferer}","useragent":"%s{eua}","product":"NSS","location":"%s{elocation}","ClientIP":"%s{cip}","status":"%s{respcode}","user":"%s{elogin}","url":"%s{eurl}","vendor":"Zscaler","hostname":"%s{ehost}","clientpublicIP":"%s{cintip}","threatcategory":"%s{malwarecat}","threatname":"%s{threatname}","filetype":"%s{filetype}","appname":"%s{appname}","riskscore":"%d{riskscore}","department":"%s{edepartment}","urlsupercategory":"%s{urlsupercat}","appclass":"%s{appclass}","dlpengine":"%s{dlpeng}","urlclass":"%s{urlclass}","threatclass":"%s{malwareclass}","dlpdictionaries":"%s{dlpdict}","fileclass":"%s{fileclass}","bwthrottle":"%s{bwthrottle}","contenttype":"%s{contenttype}","unscannabletype":"%s{unscannabletype}","deviceowner":"%s{deviceowner}","devicehostname":"%s{devicehostname}","keyprotectiontype":"%s{keyprotectiontype}"}
```

<Warning>
  Conservez tous les champs au niveau supérieur. L'ancien guide Unify encapsulait ces
  champs dans un objet `event` et ajoutait `sourcetype`. Cette enveloppe peut être
  acceptée en tant que JSON, mais elle ne correspond pas à l'interpréteur actuel ; elle ne produit donc
  ni personnes ni activité.
</Warning>

Choisissez le fuseau horaire attendu par vos équipes d'exploitation lors de l'examen des événements Zscaler. Living Security analyse la valeur `datetime` fournie par le flux.

## 3. Filtrer et activer le flux

Utilisez les filtres **Policy Action** et **Policy Reason** de Zscaler pour envoyer l'activité web nécessaire à votre programme de gestion du risque humain. Évitez un paramètre de faible nombre d'événements par seconde, qui pourrait entraîner la perte de journaux lors d'un pic de trafic. Si votre organisation doit plafonner le flux, surveillez à la fois la livraison côté Zscaler et l'historique Push History de Living Security pendant le réglage.

Enregistrez le flux, exécutez le test de connectivité de Zscaler, puis définissez **Status** sur **Enabled**.

## 4. Vérifier la livraison et l'interprétation

1. Dans Living Security, ouvrez **Paramètres → Intégrations → Connecté → zscaler-nss-feed**.
2. Dans **Push History**, vérifiez qu'une exécution `web_logs` récente affiche le nombre d'enregistrements attendu.
3. Vérifiez que les utilisateurs Zscaler ou les adresses IP d'appareils récents apparaissent associés aux personnes attendues et que l'activité web est disponible en aval.
4. Si l'exécution est acceptée mais qu'aucune activité n'apparaît, revérifiez la source, le flux et le format de sortie à plat exacts.

## Dépannage

| Symptôme | Vérification |
| - | - |
| `401 Unauthorized` | Utilisez `Authorization` avec la valeur `Bearer <access-key>` ; renouvelez toute clé expirée ou révoquée |
| `403 Forbidden` | Créez la clé avec la portée **Push Ingest** |
| `404 Not Found` | Enregistrez `zscaler-nss-feed` et `web_logs`, puis utilisez cette URL exacte |
| `400 Bad Request` | Activez JSON Array Notation et vérifiez que la sortie est un tableau de niveau supérieur composé d'objets à plat |
| `202` mais aucune personne ni activité | Supprimez l'ancienne enveloppe `sourcetype` / `event` et vérifiez les clés de routage exactes |
| `429` | Patientez le temps que la limitation temporaire au niveau de l'IP cesse, et respectez `Retry-After` lorsqu'il est présent |
| `503` | Conservez le lot pour une nouvelle tentative, attendez `Retry-After`, puis renvoyez-le sans le modifier |
| Le test de connectivité échoue | Vérifiez le nom d'hôte régional, l'en-tête Bearer, le statut de la clé et la politique d'inspection TLS publique |

L'API accepte au maximum 10 000 enregistrements et 10 MB par requête, avec 600 requêtes par 60 secondes par organisation. Consultez [Custom Push Source API](/fr/integrations/custom-push-source) pour connaître le détail des réponses et des règles de nouvelle tentative.

## Voir aussi

<CardGroup cols={2}>
  <Card title="Custom Push Source API" icon="arrow-up-from-bracket" href="/fr/integrations/custom-push-source">
    Consultez l'authentification, les limites de charge utile, les réponses, les nouvelles tentatives et la vérification des exécutions.
  </Card>

  <Card title="Zscaler Client Connector" icon="laptop" href="/fr/integrations/catalog/zscaler-client-connector-custom">
    Connectez l'API Client Connector distincte pour les données relatives aux appareils et à leur posture de sécurité.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.