CORS-Konfigurationshandbuch für Webhook-APIs im API Designer

Cross-Origin Resource Sharing (CORS) ist ein Browser-Sicherheitsmechanismus, der Webseiten daran hindert, Anfragen an eine andere Domäne als diejenige zu senden, von der die Webseite bereitgestellt wurde. Dies dient dem Schutz von Nutzern vor bösartigen Websites, die versuchen, ohne Erlaubnis auf vertrauliche Daten einer anderen Website zuzugreifen.

Übersicht

Der API Designer von Vtiger wurde als leistungsstarkes Tool entwickelt, das Entwicklern als Arbeitsumgebung für die einfache Erstellung benutzerdefinierter HTTP-basierter APIs dient. Diese APIs lassen sich nahtlos in VTAP-JavaScript-APIs oder externe Anwendungen integrieren.

Wir haben im API-Designer eine Funktion hinzugefügt, mit der zulässige Domänen (Domänen, die auf die Whitelist gesetzt werden können) angegeben werden können. Nur diese Domänen auf der Whitelist dürfen CORS-Anfragen stellen.

Lassen Sie uns mehr über CORS und seine Anwendung erfahren.

Ziel

Die Hauptziele der Aktivierung von CORS:

  • Ermöglichen Sie eine sichere Cross-Origin-Kommunikation zwischen Frontend-Apps und dem CRM.
  • Aktivieren Sie Webhook-API-Aufrufe von clientseitigen Anwendungen oder externen Portalen.
  • Verhindern Sie browserseitige CORS-Fehler.
  • Schützen Sie CRM-Daten vor nicht autorisierten Domänen.

Technische Umsetzung

Beim Erstellen einer Webhook-API im API-Designer gibt es eine Option zum eine Domäne hinzufügen zur Konfiguration. Diese Domäne stellt den Ursprung (die Website oder Anwendung) dar, die Anfragen stellt oder Daten von Vtiger empfängt. 

Sobald die Domäne hinzugefügt wurde:

  • Vtiger wird Cross-Origin-Anfragen zulassen aus dieser Domäne.
  • Die Webhook-API wird gestartet Daten erfolgreich empfangen aus dem CRM.
  • Der Browser blockiert alle Anfragen von nicht auf der Whitelist stehende Domänen.

Dieses Setup stellt sicher, dass die Webhook-API wie vorgesehen sicher funktionieren kann, ohne dass Backend-Proxys oder Workarounds erforderlich sind, und gleichzeitig die Kontrolle darüber behalten wird, welche Domänen mit Vtiger interagieren dürfen.

Beispiel

Wenn eine unter https://app.example.com gehostete Webanwendung versucht, eine Anfrage an eine API unter https://api.vtiger.com zu senden, blockiert der Browser die Anfrage, es sei denn, die API lässt dies ausdrücklich über CORS-Header zu.

Um diese Interaktion zu ermöglichen und sicher zu machen, muss der Server mit speziellen Headern (wie Access-Control-Allow-Origin) antworten, die dem Browser mitteilen, welche Ursprünge (Domänen) auf ihn zugreifen dürfen.

Im Fall von Vtiger ermöglicht CORS-Whitelisting ermöglicht vertrauenswürdigen Domänen die Interaktion mit dem CRM (z. B. das Senden von Webhook-Anfragen oder das Aufrufen von APIs), ohne vom Browser blockiert zu werden.

Anwendungsfall

Sie haben eine Frontend-Anwendung, die unter https://portal.mycompany.com gehostet wird und die Webhook-API-Anfragen an Ihre Vtiger CRM-Instanz unter https://crm.mycompany.com senden muss.

Aufgabenstellung:

Der Browser blockiert die Anforderung aufgrund eines CORS-Fehlers: Der Zugriff zum Abrufen unter „https://crm.mycompany.com/webhook“ vom Ursprung „https://portal.mycompany.com“ wurde durch die CORS-Richtlinie blockiert.

Lösung Fügen Sie https://portal.mycompany.com zur CORS-Whitelist in Vtiger hinzu. Anschließend lässt der Browser die Anfrage zu, da die Antwort die korrekten Header enthält.

Vorteile

  • Verhindert CORS-bezogene Anforderungsfehler in Frontend-Anwendungen.
  • Ermöglicht sicheren und kontrollierten Zugriff auf Vtiger-APIs von vertrauenswürdigen Domänen aus.
  • Unterstützt die Integration mit modernen Frontend-Frameworks wie React, Angular, Vue usw.
  • Macht Backend-Proxys zur Abwicklung der API-Kommunikation überflüssig.
  • Einfache Verwaltung und Aktualisierung über die Admin-Oberfläche.

Wir glauben, dass diese Beispiele Ihre Erfahrung mit Vtiger CRM verbessern werden. Wir möchten sicherstellen, dass Entwickler und CRM-Benutzer Informationen und Wissen austauschen können, um die Funktionalität des CRM zu verbessern. 

Bleiben Sie dran für mehr. Viel Spaß beim Programmieren!

 
 

Melden Sie sich an, um die neuesten Updates zu erhalten!