Korzystanie z usługi Azure Content Delivery Network z sygnaturą dostępu współdzielonego
Ważne
Usługa Azure CDN Standard firmy Microsoft (klasyczna) zostanie wycofana 30 września 2027 r. Aby uniknąć zakłóceń w działaniu usługi, należy przeprowadzić migrację profilów usługi Azure CDN Standard z usługi Microsoft (klasycznej) do warstwy Azure Front Door Standard lub Premium do 30 września 2027 r. Aby uzyskać więcej informacji, zobacz Azure CDN Standard from Microsoft (classic) retirement (Wycofanie usługi Azure CDN w warstwie Standardowa z firmy Microsoft (wersja klasyczna).
Usługa Azure CDN z Edgio zostanie wycofana 4 listopada 2025 r. Przed tą datą należy przeprowadzić migrację obciążenia do usługi Azure Front Door, aby uniknąć przerw w działaniu usługi. Aby uzyskać więcej informacji, zobacz Azure CDN from Edgio retirement FAQ (Usługa Azure CDN from Edgio retirement FAQ).
Po skonfigurowaniu konta magazynu dla usługi Azure Content Delivery Network do buforowania zawartości domyślnie każdy, kto zna adresy URL kontenerów magazynu, może uzyskać dostęp do przekazanych plików. Aby chronić pliki na koncie magazynu, możesz ustawić dostęp do kontenerów magazynu z publicznego na prywatny. Jeśli jednak to zrobisz, nikt nie będzie mógł uzyskać dostępu do plików.
Jeśli chcesz udzielić ograniczonego dostępu do kontenerów magazynu prywatnego, możesz użyć funkcji Sygnatura dostępu współdzielonego (SAS) konta usługi Azure Storage. Sygnatura dostępu współdzielonego to identyfikator URI, który zapewnia ograniczone prawa dostępu do zasobów usługi Azure Storage bez ujawniania klucza konta. Sygnaturę dostępu współdzielonego można udostępnić klientom, którym nie ufasz za pomocą klucza konta magazynu, ale do którego chcesz delegować dostęp do niektórych zasobów konta magazynu. Rozpowszechniając identyfikator URI sygnatury dostępu współdzielonego do tych klientów, można udzielić im dostępu do zasobu przez określony okres czasu.
Za pomocą sygnatury dostępu współdzielonego można zdefiniować różne parametry dostępu do obiektu blob, takie jak czas rozpoczęcia i wygaśnięcia, uprawnienia (odczyt/zapis) i zakresy adresów IP. W tym artykule opisano sposób używania sygnatury dostępu współdzielonego z usługą Azure Content Delivery Network. Aby uzyskać więcej informacji o sygnaturach dostępu współdzielonego, w tym o sposobie tworzenia go i jego opcjach parametrów, zobacz Using shared access signatures (SAS) (Korzystanie z sygnatur dostępu współdzielonego (SAS).
Konfigurowanie usługi Azure Content Delivery Network do pracy z sygnaturą dostępu współdzielonego magazynu
Poniższe dwie opcje są zalecane do korzystania z sygnatury dostępu współdzielonego z usługą Azure Content Delivery Network. Wszystkie opcje zakładają, że utworzono już działającą sygnaturę dostępu współdzielonego (zobacz wymagania wstępne).
Wymagania wstępne
Aby rozpocząć, utwórz konto magazynu, a następnie wygeneruj sygnaturę dostępu współdzielonego dla zasobu. Można wygenerować dwa typy przechowywanych podpisów dostępu: sygnaturę dostępu współdzielonego usługi lub sygnaturę dostępu współdzielonego konta. Aby uzyskać więcej informacji, zobacz Typy sygnatur dostępu współdzielonego.
Po wygenerowaniu tokenu SAS możesz uzyskać dostęp do pliku magazynu obiektów blob, dołączając ?sv=<SAS token>
go do adresu URL. Ten adres URL ma następujący format:
https://<account name>.blob.core.windows.net/<container>/<file>?sv=<SAS token>
Na przykład:
https://democdnstorage1.blob.core.windows.net/container1/demo.jpg?sv=2017-07-29&ss=b&srt=co&sp=r&se=2038-01-02T21:30:49Z&st=2018-01-02T13:30:49Z&spr=https&sig=QehoetQFWUEd1lhU5iOMGrHBmE727xYAbKJl5ohSiWI%3D
Aby uzyskać więcej informacji o ustawianiu parametrów, zobacz zagadnienia dotyczące parametrów sygnatury dostępu współdzielonego i parametry sygnatury dostępu współdzielonego.
Opcja 1. Używanie sygnatury dostępu współdzielonego z przekazywaniem do magazynu obiektów blob z usługi Azure Content Delivery Network
Ta opcja jest najprostsza i używa pojedynczego tokenu SAS, który jest przekazywany z usługi Azure Content Delivery Network do serwera pochodzenia.
Wybierz punkt końcowy, wybierz pozycję Reguły buforowania, a następnie wybierz pozycję Buforuj każdy unikatowy adres URL z listy buforowania ciągów zapytania.
Po skonfigurowaniu sygnatury dostępu współdzielonego na koncie magazynu należy użyć tokenu SAS z punktem końcowym sieci dostarczania zawartości i adresami URL serwera pochodzenia, aby uzyskać dostęp do pliku.
Wynikowy adres URL punktu końcowego sieci dostarczania zawartości ma następujący format:
https://<endpoint hostname>.azureedge.net/<container>/<file>?sv=<SAS token>
Na przykład:
https://demoendpoint.azureedge.net/container1/demo.jpg?sv=2017-07-29&ss=b&srt=c&sp=r&se=2027-12-19T17:35:58Z&st=2017-12-19T09:35:58Z&spr=https&sig=kquaXsAuCLXomN7R00b8CYM13UpDbAHcsRfGOW3Du1M%3D
Dostosuj czas trwania pamięci podręcznej przy użyciu reguł buforowania lub dodając
Cache-Control
nagłówki na serwerze pochodzenia. Ponieważ usługa Azure Content Delivery Network traktuje token SAS jako zwykły ciąg zapytania, najlepszym rozwiązaniem jest skonfigurowanie czasu trwania buforowania wygasającego lub przed upływem czasu wygaśnięcia sygnatury dostępu współdzielonego. W przeciwnym razie, jeśli plik jest buforowany przez dłuższy czas niż sygnatura dostępu współdzielonego, plik może być dostępny z serwera pochodzenia usługi Azure Content Delivery Network po upływie czasu wygaśnięcia sygnatury dostępu współdzielonego. Jeśli taka sytuacja wystąpi i chcesz, aby plik w pamięci podręcznej był niedostępny, należy wykonać operację przeczyszczania pliku, aby wyczyścić go z pamięci podręcznej. Aby uzyskać informacje o ustawianiu czasu trwania pamięci podręcznej w usłudze Azure Content Delivery Network, zobacz Kontrolowanie zachowania buforowania usługi Azure Content Delivery Network przy użyciu reguł buforowania.
Opcja 2. Używanie uwierzytelniania tokenu zabezpieczającego sieci dostarczania zawartości przy użyciu reguły ponownego zapisywania
Aby użyć uwierzytelniania tokenu zabezpieczającego usługi Azure Content Delivery Network, musisz mieć profil usługi Azure CDN Premium z profilu Edgio . Ta opcja jest najbezpieczniejsza i dostosowywalna. Dostęp klienta jest oparty na parametrach zabezpieczeń ustawionych na tokenie zabezpieczającym. Po utworzeniu i skonfigurowaniu tokenu zabezpieczającego jest wymagany dla wszystkich adresów URL punktów końcowych sieci dostarczania zawartości. Jednak ze względu na regułę ponownego zapisywania adresu URL token SAS nie jest wymagany w punkcie końcowym sieci dostarczania zawartości. Jeśli token SAS później stanie się nieprawidłowy, usługa Azure Content Delivery Network nie może ponownie odświeżyć zawartości z serwera pochodzenia.
Utwórz token zabezpieczający usługi Azure Content Delivery Network i aktywuj go przy użyciu aparatu reguł dla punktu końcowego sieci dostarczania zawartości i ścieżki, w której użytkownicy mogą uzyskać dostęp do pliku.
Adres URL punktu końcowego tokenu zabezpieczającego ma następujący format:
https://<endpoint hostname>.azureedge.net/<container>/<file>?<security_token>
Na przykład:
https://sasstoragedemo.azureedge.net/container1/demo.jpg?a4fbc3710fd3449a7c99986bkquaXsAuCLXomN7R00b8CYM13UpDbAHcsRfGOW3Du1M%3D
Opcje parametrów uwierzytelniania tokenu zabezpieczającego różnią się od opcji parametrów tokenu SAS. Jeśli zdecydujesz się użyć czasu wygaśnięcia podczas tworzenia tokenu zabezpieczającego, należy ustawić ją na taką samą wartość jak czas wygaśnięcia tokenu SAS. Dzięki temu czas wygaśnięcia jest przewidywalny.
Użyj aparatu reguł, aby utworzyć regułę ponownego zapisywania adresów URL, aby włączyć dostęp tokenu SAS do wszystkich obiektów blob w kontenerze. Propagowanie nowych reguł może potrwać do 4 godzin.
Następująca przykładowa reguła ponownego zapisywania adresów URL używa wzorca wyrażenia regularnego z grupą przechwytywania i punktem końcowym o nazwie sasstoragedemo:
Źródło:
(container1/.*)
Miejsce docelowe:
$1&sv=2017-07-29&ss=b&srt=c&sp=r&se=2027-12-19T17:35:58Z&st=2017-12-19T09:35:58Z&spr=https&sig=kquaXsAuCLXomN7R00b8CYM13UpDbAHcsRfGOW3Du1M%3D
W przypadku odnowienia sygnatury dostępu współdzielonego upewnij się, że zaktualizujesz regułę ponownego zapisywania adresu URL przy użyciu nowego tokenu SAS.
Zagadnienia dotyczące parametrów sygnatury dostępu współdzielonego
Ponieważ parametry sygnatury dostępu współdzielonego nie są widoczne dla usługi Azure Content Delivery Network, usługa Azure Content Delivery Network nie może zmienić swojego zachowania dostarczania na podstawie tych parametrów. Zdefiniowane ograniczenia parametrów dotyczą tylko żądań wysyłanych przez usługę Azure Content Delivery Network do serwera pochodzenia, a nie żądań od klienta do usługi Azure Content Delivery Network. To rozróżnienie jest ważne podczas ustawiania parametrów sygnatury dostępu współdzielonego. Jeśli te zaawansowane możliwości są wymagane i używasz opcji 2, ustaw odpowiednie ograniczenia dotyczące tokenu zabezpieczeń usługi Azure Content Delivery Network.
Nazwa parametru sygnatury dostępu współdzielonego | opis |
---|---|
Uruchom | Czas rozpoczęcia dostępu do pliku obiektu blob przez usługę Azure Content Delivery Network. Ze względu na niesymetryczność zegara (gdy sygnał zegara pojawia się w różnych godzinach dla różnych składników), wybierz godzinę 15 minut wcześniej, jeśli chcesz, aby zasób był dostępny natychmiast. |
Zakończenie | Czas, po którym usługa Azure Content Delivery Network nie może uzyskać dostępu do pliku obiektu blob. Wcześniej buforowane pliki w usłudze Azure Content Delivery Network są nadal dostępne. Aby kontrolować czas wygaśnięcia pliku, ustaw odpowiedni czas wygaśnięcia tokenu zabezpieczeń usługi Azure Content Delivery Network lub przeczyść zasób. |
Dozwolone adresy IP | Opcjonalny. Jeśli używasz usługi Azure CDN z usługi Edgio, możesz ustawić ten parametr na zakresy zdefiniowane w usłudze Azure Content Delivery Network z zakresów adresów IP serwera Edgio Edge. |
Dozwolone protokoły | Protokoły dozwolone dla żądania złożonego z sygnaturą dostępu współdzielonego konta. Zalecane jest ustawienie HTTPS. |
Następne kroki
Aby uzyskać więcej informacji na temat sygnatury dostępu współdzielonego, zobacz następujące artykuły:
- Używanie sygnatury dostępu współdzielonego (SAS)
- Sygnatury dostępu współdzielonego, część 2: tworzenie sygnatury dostępu współdzielonego i używanie jej z usługą Blob Storage
Aby uzyskać więcej informacji na temat konfigurowania uwierzytelniania tokenu, zobacz Zabezpieczanie zasobów usługi Azure Content Delivery Network przy użyciu uwierzytelniania tokenu.