CORS-ondersteuning in de identiteitsservice van het Experience Cloud cors-support-in-the-experience-cloud-id-service
Browsers gebruiken het Delen van bronnen van oorsprong over de hele wereld (CORS) om bronnen van een ander domein dan het huidige domein aan te vragen. De dienst van de Identiteit van het Experience Cloud steunt normen CORS die deze cliënt-kant, dwars-oorsprong middelverzoeken toelaten. De dienst van identiteitskaart keert aan JSONP- verzoeken op oudere browsers terug of browsers die geen CORS steunen.
Problemen met Beleid van zelfde-Oorsprong en de Verzoeken van de Dienst van identiteitskaart section-6608cf46d27143eeaeabacaa6aa14e8e
Beleid van dezelfde oorsprong is beveiligingsbesturingselementen of beperkingen die door een webbrowser worden afgedwongen. Wanneer afgedwongen op dit niveau, bepaalt Webbrowser zelf als een verzoek om middelen die van één pagina aan een andere worden gemaakt wordt toegelaten of geblokkeerd. Om te bepalen als een verzoek een zelfde-oorsprong verzoek is, vergelijkt browser:
- Uniform Resource Identifiers (URI's)
- Hostnamen (bijvoorbeeld http://www.my-webpage-example.com)
- Poortnummers (bijvoorbeeld poort 80 en 440 voor HTTP- en HTTPS-aanvragen)
Browser staat een verzoek toe om te slagen als beide pagina's deze kenmerken delen en middelverzoeken blokkeert als zij niet.
CORS verhelpt problemen met beleid van dezelfde oorsprong section-76c87ec3295d447bab220c84f138c235
CORS biedt een veilige, effectieve manier om bronnen op verschillende domeinen aan te vragen. De specificatie CORS omvat een reeks kopballen van HTTP die browsers gebruiken om, middelverzoeken te verzenden te ontvangen en te evalueren. Het evalueren van een middelverzoek wordt genoemd a preflight check
. Met deze controle kunnen browsers en servers bepalen welke aanvragen zijn toegestaan of geblokkeerd. De Preflight-controle is transparant voor de app, API of het script dat om een resource vraagt. Twee kopballen die in het proces van het middelverzoek belangrijk zijn omvatten:
Origin
: Een aanvraagheader die de bron van een aanvraag identificeert.Access-Control-Allow-Origin
: Een antwoordheader die aangeeft of een bron kan worden gedeeld met de aanvrager.
Laten we eens kijken hoe deze koppen werken. In dit voorbeeld hebben we een bedrijf voor financiële services dat de Experience Cloud ID-service op hun site www.finance-website.com heeft geïmplementeerd. De volgende lijst bepaalt hoe de CORS verzoek en reactiekopballen toegang tot een middel controleren.
Terwijl de pagina van het financiële bedrijf wordt geladen, vraagt de browser om dpm.demdex.net . Dit is een vraag aan het domein van de servers van de gegevensinzameling (DCS) die door de dienst van identiteitskaart wordt gebruikt. Deze domeinoverschrijdende aanvraag bevat de header:
- Oorsprong /www.finance-website.com
De reactie van het domein DCS omvat deze kopballen die de plaatstoegang van het financieringsbedrijf tot vereiste middelen verlenen:
- Access-control-Allow-origin: https://www.finance-website.com
- access-control-Allow-Credentials: true
Zie ook useCORSOnly.
Andere voordelen van het gebruik van CORS section-6f44f30694c44f95bf9854b8a2af8449
In de onderstaande tabel worden enkele voordelen beschreven die CORS biedt aan klanten die de id-service gebruiken.
CORS gebruikt XMLHttpRequestom gegevens aan te vragen en over te brengen. Deze methode is veiliger dan een JSONP- verzoek. Het zorgt ervoor dat er geen manier is om arbitraire JavaScript uit te voeren, wat in het antwoord van de DCS zou kunnen zijn opgenomen. De antwoordlading van CORS XMLHttpRequest wordt geparseerd door de dienst JavaScript van identiteitskaart en niet eenvoudig uitgevoerd in een callback functie.
Opmerking: voor het accepteren van cookies heeft het XMLHttpRequest -object de eigenschap withCredentials ingesteld op true . Deze eigenschap wordt ondersteund in Chrome, Firefox, Internet Explorer (10+), Opera en Safari.
CORS helpt de prestaties te verbeteren omdat:
- De browser beheert bronverzoeken. Het aanvraagproces is transparant voor de id-service.
- In tegenstelling tot asynchrone JSONP- verzoeken, schrapt browser niet de-rangschikking en rijCORS- verzoeken.
- De id-service reageert permissief. Dit betekent dat wanneer een URL wordt doorgegeven als Oorsprong , de id-service de pagina toegang verleent tot de vereiste bronnen.