Aller au contenu principal

Wiz

info

Aperçu

Lakewatch est en aperçu privé. Pour demander l’accès, veuillez contacter votre équipe chargée de compte Databricks.

Lakewatch fournit un connecteur d'API pour ingérer des entrées de journaux d'audit, des problèmes et des résultats de vulnérabilité de Wiz. Cet article couvre les prérequis, les instructions de configuration, les schémas de connecteurs et les observables de l'analyseur Lakewatch.

Prérequis​

Le connecteur nécessite :

  1. Lakeflow Spark Declarative Pipelines serverless activés dans votre workspace.
  2. Unity Catalog, avec des privilèges pour créer ou utiliser une connexion Unity Catalog. Voir Autorisations de connexion.
  3. Un tenant Wiz avec un accès administrateur pour créer un compte de service.
  4. Autorisation d'accorder au compte de service un accès en lecture aux logs d'audit, aux problèmes et aux conclusions de vulnérabilité que vous souhaitez ingérer.

Limitations connues​

  • Le SCD de type 2 n’est pas pris en charge car les données de sécurité de Wiz sont ingérées en tant que flux en ajout seulement.
  • Le connecteur prend en charge l'authentification OAuth machine à machine (M2M) avec un compte de service Wiz. Les jetons d’API et l’authentification de base ne sont pas pris en charge.
  • L'évolution des schémas automatisée prend en charge les nouvelles colonnes et les colonnes supprimées, mais pas les modifications de type de données ou les changements de nom de colonne.
  • La période rétrospective historique ne peut pas dépasser 180 jours. Voir Choisir la période à ingérer.

Configurer Wiz pour l’ingestion​

Dans cette étape, vous créez un compte de service dans Wiz et notez les identifiants que vous utilisez pour créer une connexion dans Databricks.

  1. Connectez-vous à votre tenant Wiz en tant qu'administrateur.

  2. Créer un compte de service pour le connecteur :

    1. Dans le portail Wiz, accédez à Settings (Paramètres) > Access Management (Gestion des accès) > Service Accounts (Comptes de service), puis cliquez sur Add Service Account (Ajouter un compte de service).

    2. Saisissez un Nom descriptif pour le compte de service.

    3. Pour Type , sélectionnez Intégration personnalisée (API GraphQL) .

    4. Accorder au compte de service les portées d'API pour les données que vous souhaitez ingérer :

      • read:resources (obligatoire pour toute ingestion)
      • admin:audit pour ingérer des entrées de logs d'audit
      • read:issues pour ingérer des problèmes
      • read:vulnerabilities pour ingérer les résultats de détection des vulnérabilités
    5. Laissez Projets vide. La sélection d'un ou de plusieurs projets empêche le compte de service d'interroger les logs d'audit, car la portée admin:audit est disponible uniquement lorsqu'aucun projet n'est sélectionné.

    6. Créez le compte de service.

  3. Notez l' ID client et le secret client du compte de service. Copiez immédiatement le secret client, car Wiz ne l'affiche pas une fois que vous avez fermé la boîte de dialogue. Vous saisissez ces valeurs lorsque vous créez une connexion dans Databricks.

  4. Obtenez les détails de votre tenant. Cliquez sur l’icône de votre profil dans le coin supérieur droit du portail Wiz, puis cliquez sur Tenant Info . Notez les valeurs suivantes, que vous saisirez lors de la création d'une connexion dans Databricks :

    • Sous le Général tab, l’ URL d'authentification . Il s’agit de l’endpoint de jeton que le connecteur utilise pour échanger les identifiants client contre un jeton d’accès. Par exemple, https://auth.app.wiz.io/oauth/token.
    • Dans l’ Data Center et régions tab, votre datacenter. Ceci est votre datacenter de tenant .
astuce

Lorsque vous créez une connexion via l'interface utilisateur de Lakewatch, saisissez le Data Center du tenant , l' ID du client , le secret du client et l' URL d'authentification récupérés ci-dessus.

Pour plus d'informations, consultez Configurer l'authentification avec Wiz.

Étapes suivantes​

Après avoir terminé la configuration ci-dessus, créez une source de données avec le connecteur Wiz dans l'interface utilisateur de Lakewatch. Voir Connecteurs API pour des instructions.


Schémas de connecteur et de Lakewatch​

Le connecteur ingère les tables sources suivantes à partir du schéma source default :

Table source

Données Wiz

Analyseur Lakewatch intégré

audit_log_entries

Actions des utilisateurs, activité du compte de service et modifications de configuration

wiz_audit

issues

Risques détectés dans l’environnement dans le cloud, y compris le statut et la gravité

wiz_issues

vulnerability_findings

Vulnérabilités, assets affectés, gravité et conseils de correction

wiz_vulnerability_finding

Table source

Données Wiz

Analyseur Lakewatch intégré

audit_log_entries

Actions des utilisateurs, activité du compte de service et modifications de configuration

wiz_audit

issues

Risques détectés dans l’environnement dans le cloud, y compris le statut et la gravité

wiz_issues

vulnerability_findings

Vulnérabilités, assets affectés, gravité et conseils de correction

wiz_vulnerability_finding

Le connecteur écrit chaque table source vers la destination brute de la source de données. Chaque analyseur intégré écrit une table analysée distincte nommée d'après l'analyseur, sauf si vous définissez une destination analysée lors de la configuration de la source de données.

Colonnes gérées par Lakewatch​

Le connecteur ajoute les colonnes suivantes à chaque ligne de source brute :

  • lw_id: Chaîne non nulle que Lakewatch utilise comme clé primaire. Le connecteur dérive un ID stable et triable dans le temps à partir de time et du champ Wiz id.
  • time: un timestamp utilisé pour l'ingestion incrémentale. Pour audit_log_entries, le connecteur dérive time de timestamp. Pour issues, il dérive time de createdAt. Pour vulnerability_findings, il dérive time de updatedAt.

L'analyseur wiz_issues définit le champ time analysé à partir de updatedAt, de sorte que la table analysée reflète l'heure de mise à jour du problème le plus récent.

Chaque table analysée avance lw_id et ajoute :

  • lw_meta: Métadonnées de traitement Lakewatch standard.
  • lw_observables: Valeurs extraites des champs marqués comme observables de sécurité dans l'analyseur.

Pour plus d'informations, consultez la référence de l'analyseur.

Schémas de table de connecteur brut​

Les schémas suivants comprennent les champs Wiz ainsi que les colonnes lw_id et time gérées par Lakewatch. Pour les définitions de champ, voir la référence du connecteur Wiz.

audit_log_entries

Schéma

Colonne

Type de données

lw_id

STRING

time

TIMESTAMP

id

STRING

action

STRING

requestId

STRING

status

STRING

timestamp

TIMESTAMP

actionParameters

STRING

userAgent

STRING

sourceIP

STRING

serviceAccount

STRUCT<id: STRING, name: STRING>

user

STRUCT<id: STRING, name: STRING>

Colonne

Type de données

lw_id

STRING

time

TIMESTAMP

id

STRING

action

STRING

requestId

STRING

status

STRING

timestamp

TIMESTAMP

actionParameters

STRING

userAgent

STRING

sourceIP

STRING

serviceAccount

STRUCT<id: STRING, name: STRING>

user

STRUCT<id: STRING, name: STRING>

issues

Schéma

Colonne

Type de données

lw_id

STRING

time

TIMESTAMP

id

STRING

sourceRule

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

dueAt

TIMESTAMP

type

STRING

resolvedAt

TIMESTAMP

statusChangedAt

TIMESTAMP

projects

ARRAY<STRUCT<id: STRING, name: STRING, slug: STRING, businessUnit: STRING, riskProfile: STRING>>

status

STRING

severity

STRING

entitySnapshot

STRING

serviceTickets

STRING

notes

STRING

Colonne

Type de données

lw_id

STRING

time

TIMESTAMP

id

STRING

sourceRule

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

dueAt

TIMESTAMP

type

STRING

resolvedAt

TIMESTAMP

statusChangedAt

TIMESTAMP

projects

ARRAY<STRUCT<id: STRING, name: STRING, slug: STRING, businessUnit: STRING, riskProfile: STRING>>

status

STRING

severity

STRING

entitySnapshot

STRING

serviceTickets

STRING

notes

STRING

vulnerability_findings

Schéma

Colonne

Type de données

lw_id

STRING

time

TIMESTAMP

id

STRING

portalUrl

STRING

name

STRING

CVEDescription

STRING

CVSSSeverity

STRING

score

DOUBLE

exploitabilityScore

DOUBLE

impactScore

DOUBLE

dataSourceName

STRING

hasExploit

BOOLEAN

hasCisaKevExploit

BOOLEAN

status

STRING

vendorSeverity

STRING

firstDetectedAt

TIMESTAMP

lastDetectedAt

TIMESTAMP

updatedAt

TIMESTAMP

resolvedAt

TIMESTAMP

description

STRING

remediation

STRING

detailedName

STRING

version

STRING

fixedVersion

STRING

detectionMethod

STRING

link

STRING

locationPath

STRING

resolutionReason

STRING

epssSeverity

STRING

epssPercentile

DOUBLE

epssProbability

DOUBLE

validatedInRuntime

STRING

layerMetadata

STRING

projects

ARRAY<STRUCT<id: STRING, name: STRING, slug: STRING, businessUnit: STRING>>

ignoreRules

ARRAY<STRUCT<id: STRING, name: STRING, enabled: BOOLEAN>>

vulnerableAsset

STRING

Colonne

Type de données

lw_id

STRING

time

TIMESTAMP

id

STRING

portalUrl

STRING

name

STRING

CVEDescription

STRING

CVSSSeverity

STRING

score

DOUBLE

exploitabilityScore

DOUBLE

impactScore

DOUBLE

dataSourceName

STRING

hasExploit

BOOLEAN

hasCisaKevExploit

BOOLEAN

status

STRING

vendorSeverity

STRING

firstDetectedAt

TIMESTAMP

lastDetectedAt

TIMESTAMP

updatedAt

TIMESTAMP

resolvedAt

TIMESTAMP

description

STRING

remediation

STRING

detailedName

STRING

version

STRING

fixedVersion

STRING

detectionMethod

STRING

link

STRING

locationPath

STRING

resolutionReason

STRING

epssSeverity

STRING

epssPercentile

DOUBLE

epssProbability

DOUBLE

validatedInRuntime

STRING

layerMetadata

STRING

projects

ARRAY<STRUCT<id: STRING, name: STRING, slug: STRING, businessUnit: STRING>>

ignoreRules

ARRAY<STRUCT<id: STRING, name: STRING, enabled: BOOLEAN>>

vulnerableAsset

STRING

Observables de l’analyseur​

Les analyseurs intégrés écrivent des objets imbriqués sous la forme VARIANT et extraient les champs suivants dans lw_observables.

wiz_audit

Observables

Champ

Observable

sourceIP

ip

serviceAccount.id

actor_id

user.id

actor_id

user.name

username

Champ

Observable

sourceIP

ip

serviceAccount.id

actor_id

user.id

actor_id

user.name

username

L'analyseur wiz_issues ne définit aucun champ observable.

wiz_vulnerability_finding

Observables

Champ

Observable

portalUrl

url

link

url

Champ

Observable

portalUrl

url

link

url