CORS-configuratiehandleiding voor webhook-API's in API Designer

Cross-Origin Resource Sharing (CORS) is een beveiligingsmechanisme voor browsers dat voorkomt dat webpagina's verzoeken indienen bij een ander domein dan dat van de webpagina. Dit wordt gedaan om gebruikers te beschermen tegen kwaadwillende websites die zonder toestemming toegang proberen te krijgen tot gevoelige gegevens van een andere site.

Overzicht

De API Designer van Vtiger is ontwikkeld als een krachtige tool die ontwikkelaars helpt om eenvoudig aangepaste HTTP-gebaseerde API's te bouwen. Deze API's kunnen naadloos worden geïntegreerd met VTAP JavaScript API's of externe applicaties.

We hebben een functie toegevoegd in de API Designer om toegestane domeinen (domeinen die op de whitelist kunnen worden geplaatst) te specificeren. Alleen deze domeinen op de whitelist mogen CORS-verzoeken indienen.

Laten we meer leren over CORS en de toepassing ervan.

Objectief

De primaire doelen van het inschakelen van CORS:

  • Zorg voor veilige cross-origin communicatie tussen frontend-apps en het CRM.
  • Schakel webhook API-aanroepen in vanuit client-side applicaties of externe portals.
  • Voorkom CORS-fouten aan de browserzijde.
  • Bescherm CRM-gegevens tegen ongeautoriseerde domeinen.

Technische implementatie

Bij het maken van een Webhook API in de API Designer is er een optie om een domein toevoegen aan de configuratie. Dit domein vertegenwoordigt de oorsprong (de website of applicatie) die verzoeken zal doen of gegevens zal ontvangen van Vtiger. 

Zodra het domein is toegevoegd:

  • Vtiger zal cross-origin verzoeken toestaan van dat domein.
  • De webhook API start succesvol gegevens ontvangen uit het CRM.
  • De browser blokkeert alle verzoeken die afkomstig zijn van niet-witte lijst domeinen.

Deze configuratie zorgt ervoor dat de webhook-API veilig kan functioneren zoals bedoeld, zonder dat er backend-proxy's of tijdelijke oplossingen nodig zijn, terwijl u toch controle houdt over welke domeinen met Vtiger mogen communiceren.

Voorbeeld

Als een webtoepassing die gehost wordt op https://app.example.com een ​​verzoek probeert te sturen naar een API op https://api.vtiger.com, blokkeert de browser het verzoek, tenzij de API dit expliciet toestaat via CORS-headers.

Om deze interactie mogelijk en veilig te maken, moet de server reageren met speciale headers (zoals Access-Control-Allow-Origin) die aan de browser doorgeven welke bronnen (domeinen) toegang mogen hebben.

In het geval van Vtiger is het mogelijk om CORS-whitelisting zorgt ervoor dat vertrouwde domeinen kunnen communiceren met de CRM (zoals het versturen van webhook-aanvragen of het aanroepen van API's) zonder dat ze door de browser worden geblokkeerd.

Gebruik geval

U hebt een frontendtoepassing die wordt gehost op https://portal.mycompany.com en die webhook API-verzoeken moet verzenden naar uw Vtiger CRM-instantie op https://crm.mycompany.com.

probleem

De browser blokkeert de aanvraag vanwege een CORS-fout: toegang tot ophalen bij 'https://crm.mycompany.com/webhook' vanuit oorsprong 'https://portal.mycompany.com' is geblokkeerd door CORS-beleid.

Het resultaat Voeg https://portal.mycompany.com toe aan de CORS-whitelist in Vtiger. Hierna zal de browser de aanvraag goedkeuren, aangezien het antwoord de juiste headers bevat.

Voordelen:

  • Voorkomt CORS-gerelateerde aanvraagfouten in frontend-applicaties.
  • Biedt veilige en gecontroleerde toegang tot Vtiger API's vanaf vertrouwde domeinen.
  • Ondersteunt integratie met moderne frontend-frameworks zoals React, Angular, Vue, etc.
  • Verwijdert de noodzaak voor backend-proxy's voor API-communicatie.
  • Eenvoudig te beheren en bij te werken via de beheerdersinterface.

Wij geloven dat deze voorbeelden uw ervaring met Vtiger CRM zullen verbeteren. We willen ervoor zorgen dat ontwikkelaars en CRM-gebruikers informatie en kennis met elkaar kunnen delen om de functionaliteit van CRM te vergroten. 

Blijf op de hoogte voor meer. Veel plezier met coderen!

 
 

Schrijf je in om de laatste updates te ontvangen!