I webhook consegnano dati ad altre applicazioni, attivati da determinati avvisi mediante HTTP POST. Ogni volta che si verifica un avviso, l'origine invia una richiesta HTTP all'applicazione di destinazione configurata per il webhook. SASE Orchestrator supporta i webhook che inviano automaticamente messaggi tramite HTTP POST alle app di destinazione quando si verifica un evento. È possibile impostare l'URL di destinazione nel portale dell'azienda e automatizzare le azioni in risposta agli avvisi attivati da SASE Orchestrator. I destinatari dei webhook devono supportare HTTPS e devono disporre di certificati validi per garantire la privacy dei payload di avviso potenzialmente sensibili. Ciò impedisce inoltre la manomissione dei payload. Qualsiasi applicazione che supporta webhook in arrivo con HTTP può integrarsi con VMware SD-WAN.

La pagina Webhook (Webhooks) nella finestra Configurazione avvisi (Alert Configuration) consente di configurare i dettagli seguenti:
Opzione Descrizione
URL Immettere un URL HTTPS valido. L'URL funge da applicazione di destinazione per i webhook.
Codice (Code)

Immettere un codice di stato della risposta HTTP previsto per ciascun destinatario di webhook. Per impostazione predefinita, SASE Orchestrator prevede che i destinatari dei webhook rispondano alle richieste HTTP POST con un codice di stato come HTTP 200.

Quando SASE Orchestrator riceve un codice di stato imprevisto da un server destinatario o da un server proxy, considera il recapito dell'avviso non riuscito e genera un evento cliente ALERT_DELIVERY_FAILED. Questo evento consente di identificare quando un server destinatario del webhook potrebbe non funzionare come previsto.

Segreto (Secret) Questo campo è facoltativo. Specificare un token segreto per ciascun destinatario di webhook configurato, che viene utilizzato per calcolare un codice HMAC per ogni richiesta webhook inviata al destinatario corrispondente. Il codice HMAC è incorporato in un'intestazione HTTP X-Webhook-Signature, insieme a un parametro di versione, che identifica una data e ora e l'algoritmo di firma.
X-Webhook-Signature: v=<signature-version>&t=<timestamp>&s=<hmac> 
Il destinatario interpreta i componenti come segue:
  • v: versione dell'algoritmo utilizzato per produrre la firma. L'unico valore supportato è 1.
  • t: data e ora epoch precisa al millisecondo corrispondente all'ora in cui viene emessa la richiesta.
  • s: codice HMAC calcolato da SASE Orchestrator. Il codice HMAC viene calcolato nel modo seguente: HMAC-SHA256(request-body + '.' + timestamp, secret).

Il messaggio utilizzato per calcolare il codice HMAC viene creato concatenando il corpo della richiesta, un punto singolo e il valore del parametro data e ora che viene visualizzato nell'intestazione della firma. L'algoritmo HMAC specifico utilizzato per produrre il codice è HMAC-SHA256.

Dopo aver ricevuto una richiesta webhook, il server di ascolto può verificare l'autenticità della richiesta calcolando la propria firma HMAC-SHA256 in base allo stesso algoritmo e confrontando la firma appena calcolata con quella generata da SASE Orchestrator.

Modello payload JSON (JSON Payload Template)

Questo è un campo obbligatorio. SASE Orchestrator recapita notifiche di avviso a ciascun destinatario di webhook tramite un payload JSON contenuto nel corpo di una richiesta POST HTTP in uscita. SASE Orchestrator genera il contenuto del payload in modo dinamico, poiché le notifiche vengono inviate effettuando l'interpolazione delle variabili. Le variabili segnaposto supportate nel modello di payload configurato dall'utente vengono sostituite con valori specifici dell'avviso.

Verifica Fare clic su questa opzione per convalidare i dettagli immessi.
Fare clic sul link Configura il modello payload (Configure Payload Template) sotto l'opzione Modello payload JSON (JSON Payload Template) per configurare quanto segue:
Opzione Descrizione
Ora avviso Immettere la data e l'ora in cui l'avviso deve essere attivato.
Tipo di avviso Selezionare il tipo di avviso dal menu a discesa. Per impostazione predefinita, viene visualizzato il valore N/D.
ID logico cliente Immettere l'ID logico del cliente a cui deve essere inviata la notifica.
Cliente (Customer) Immettere il nome del cliente a cui deve essere inviata la notifica.
ID logico dispositivo Immettere l'ID logico dell'Edge a cui deve essere applicato l'avviso.
Descrizione dispositivo Immettere un breve messaggio che descrive l'Edge a cui deve essere applicato l'avviso.
Numero di serie dispositivo Immettere il numero di serie dell'Edge a cui deve essere applicato l'avviso.
Nome dispositivo Immettere il nome dell'Edge a cui deve essere applicato l'avviso.
Ultimo contatto (Last Contact) Immettere la data e l'ora in cui l'Edge interessato ha comunicato l'ultima volta con SASE Orchestrator. Questa variabile è applicabile solo agli avvisi dell'Edge.
VCO Immettere il nome host o l'IP pubblico dell'istanza di SASE Orchestrator da cui deve essere inviata la notifica.
Messaggio (Message) Immettere un breve messaggio che descrive l'evento che deve attivare l'avviso.
Entità interessata Immettere il nome dell'entità Edge, link o VNF a cui deve essere applicato l'avviso.

L'esempio seguente mostra un modello di payload JSON di esempio:

{
   "alertTime": "alertTime",
   "alertType": "alertType",      
   "customer": "customer",
   "customerLogicalId": "customerLogicalId",
   "entityAffected": "entityAffected",
   "deviceLogicalId": "deviceLogicalId",
   "lastContact": "lastContact",
   "message": "message",
   "vco": "vco",
   "deviceName": "deviceName",
   "deviceDescription": "deviceDescription",
   "deviceSerialNumber": "deviceSerialNumber"
}

Fare clic su Salva (Save) e quindi su Salva modifiche (Save Changes) nella pagina Webhook (Webhooks) per salvare le configurazioni del webhook.

Ogni volta che viene attivato un avviso, viene inviato un messaggio di avviso insieme alle informazioni rilevanti all'URL di destinazione.