Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: ✔️ Front Door Standard ✔️ Front Door Premium
CORS (Cross Origin Resource Sharing) to funkcja HTTP, która umożliwia aplikacji webowej działającej w jednej domenie dostęp do zasobów w innej domenie. Aby ograniczyć możliwość ataków skryptowych na różne strony, wszystkie nowoczesne przeglądarki internetowe implementują ograniczenie bezpieczeństwa znane jako polityka tego samego źródła. To ograniczenie uniemożliwia wywoływanie interfejsów API w innej domenie przez stronę internetową. Mechanizm CORS zapewnia bezpieczny sposób umożliwienia jednemu źródłu (domenie źródłowej) wywoływania API w innym źródle.
Jak to działa
Istnieją dwa typy żądań CORS: proste izłożone.
W przypadku prostych żądań:
Przeglądarka wysyła żądanie CORS z innym nagłówkiem HTTP Origin request. Wartość tego nagłówka to źródło, które obsługiwało stronę nadrzędną, definiowane jako połączenie protokołu,domeny i portu. Gdy strona z
https://www.contoso.compróbuje uzyskać dostęp do danych użytkownika w początkowym miejscufabrikam.com, następujący nagłówek żądania jest wysyłany do:fabrikam.comOrigin: https://www.contoso.comSerwer może odpowiedzieć jedną z następujących odpowiedzi:
Nagłówek Access-Control-Allow-Origin w odpowiedzi wskazujący, która witryna źródła jest dozwolona. Przykład:
Access-Control-Allow-Origin: https://www.contoso.comKod błędu HTTP, taki jak 403, jeśli serwer nie zezwala na żądanie cross-origin po sprawdzeniu nagłówka Origin
Nagłówek Access-Control-Allow-Origin z symbolem wieloznacznym, który zezwala na wszystkie źródła pochodzenia:
Access-Control-Allow-Origin: *
Dla złożonych żądań
Złożone żądanie to żądanie CORS, w którym przeglądarka musi wysłać żądanie wstępne (czyli wstępną sondę) przed wysłaniem faktycznego żądania CORS. Żądanie przedlotowe prosi serwer o pozwolenie na kontynuację oryginalnego żądania CORS. To OPTIONS żądanie na ten sam adres URL.
Wskazówka
Aby uzyskać więcej informacji o przepływach CORS i typowych pułapkach, zobacz Przewodnik po CORS dla API REST.
Scenariusze z symbolami wieloznacznymi lub pojedynczym pochodzeniem
CORS w Azure Front Door działa automatycznie bez dodatkowej konfiguracji, gdy nagłówek Access-Control-Allow-Origin jest ustawiony na wolny (*) lub pojedynczy punkt początkowy. Azure Front Door buforuje pierwszą odpowiedź, a kolejne żądania używają tego samego nagłówka.
Jeśli wysyłasz żądania do Azure Front Door przed ustawieniem CORS na swoim Origin, musisz usunąć zawartość na swoim punkcie końcowym, aby załadować zawartość z nagłówkiem Access-Control-Allow-Origin.
Scenariusze wielu początków
Jeśli trzeba pozwolić na konkretną listę początków CORS, sprawy się komplikują. Problem pojawia się, gdy CDN buforuje nagłówek Access-Control-Allow-Origin dla pierwszego początku CORS. Gdy inny origin CORS wykonuje kolejne żądanie, CDN obsługuje buforowany nagłówek Access-Control-Allow-Origin , który nie pasuje. Kilka metod może rozwiązać ten problem.
Azure Front Door ruleset
W Azure Front Door możesz stworzyć regułę w zestawie Azure Front Door Rules Set, aby sprawdzić nagłówek Origin na żądaniu. Jeśli to poprawne źródło, twoja reguła ustawia nagłówek Access-Control-Allow-Origin z poprawną wartością. W takim przypadku nagłówek Access-Control-Allow-Origin z serwera źródłowego pliku jest ignorowany, a silnik reguł Azure Front Door całkowicie zarządza dozwolonymi początkami CORS.
Wskazówka
Możesz dodać więcej akcji do reguły, aby modyfikować inne nagłówki odpowiedzi, takie jak Access-Control-Allow-Methods.