Konfigurowanie zasad wygasania dla sygnatur dostępu współdzielonego

Możesz użyć sygnatury dostępu współdzielonego (SAS), aby delegować dostęp do zasobów na koncie usługi Azure Storage. Token sygnatury dostępu współdzielonego obejmuje zasób docelowy, przyznane uprawnienia i interwał, w którym jest dozwolony dostęp. Najlepsze rozwiązania zaleca ograniczenie interwału sygnatury dostępu współdzielonego w przypadku naruszenia zabezpieczeń. Ustawiając zasady wygasania sygnatur dostępu współdzielonego dla kont magazynu, możesz podać zalecany górny limit wygaśnięcia, gdy użytkownik utworzy sygnaturę dostępu współdzielonego usługi lub sygnaturę dostępu współdzielonego konta.

Aby uzyskać więcej informacji na temat sygnatur dostępu współdzielonego, zobacz Udzielanie ograniczonego dostępu do zasobów usługi Azure Storage przy użyciu sygnatur dostępu współdzielonego (SAS).

Informacje o zasadach wygasania sygnatury dostępu współdzielonego

Zasady wygasania sygnatur dostępu współdzielonego można skonfigurować na koncie magazynu. Zasady wygasania sygnatury dostępu współdzielonego określają zalecany górny limit dla pola podpisanego wygaśnięcia dla sygnatury dostępu współdzielonego usługi lub sygnatury dostępu współdzielonego konta. Zalecany górny limit jest określany jako wartość daty/godziny, która jest łączną liczbą dni, godzin, minut i sekund.

Interwał ważności sygnatury dostępu współdzielonego jest obliczany przez odjęcie wartości daty/godziny podpisanego pola początkowego od wartości daty/godziny pola wygaśnięcia podpisanego. Jeśli wynikowa wartość jest mniejsza lub równa zalecanemu górnemu limitowi, sygnatura dostępu współdzielonego jest niezgodna z zasadami wygasania sygnatury dostępu współdzielonego.

Po skonfigurowaniu zasad wygaśnięcia sygnatury dostępu współdzielonego każdy użytkownik, który tworzy sygnaturę dostępu współdzielonego usługi lub sygnaturę dostępu współdzielonego konta z interwałem przekraczającym zalecany górny limit, zobaczy ostrzeżenie.

Zasady wygasania sygnatury dostępu współdzielonego nie uniemożliwiają użytkownikowi utworzenia sygnatury dostępu współdzielonego z wygaśnięciem przekraczającym limit zalecany przez zasady. Gdy użytkownik utworzy sygnaturę dostępu współdzielonego naruszającą zasady, zobaczy ostrzeżenie wraz z zalecanym maksymalnym interwałem. Jeśli skonfigurowano ustawienie diagnostyczne na potrzeby rejestrowania za pomocą usługi Azure Monitor, usługa Azure Storage zapisuje komunikat we właściwości SasExpiryStatus w dziennikach za każdym razem, gdy użytkownik używa sygnatury dostępu współdzielonego, która wygasa po zalecanym interwale. Komunikat wskazuje, że interwał ważności sygnatury dostępu współdzielonego przekracza zalecany interwał.

Gdy obowiązują zasady wygasania sygnatury dostępu współdzielonego dla konta magazynu, dla każdego sygnatury dostępu współdzielonego wymagane jest pole rozpoczęcia podpisanej sygnatury dostępu współdzielonego. Jeśli podpisane pole uruchamiania nie jest uwzględnione w sygnaturze dostępu współdzielonego i skonfigurowano ustawienie diagnostyczne do rejestrowania za pomocą usługi Azure Monitor, usługa Azure Storage zapisuje komunikat we właściwości SasExpiryStatus w dziennikach, gdy użytkownik używa sygnatury dostępu współdzielonego bez wartości dla podpisanego pola startowego.

Konfigurowanie zasad wygasania sygnatury dostępu współdzielonego

Podczas konfigurowania zasad wygasania sygnatury dostępu współdzielonego na koncie magazynu zasady dotyczą każdego typu sygnatury dostępu współdzielonego podpisanego przy użyciu klucza konta. Typy sygnatur dostępu współdzielonego podpisane za pomocą klucza konta to sygnatura dostępu współdzielonego usługi i sygnatura dostępu współdzielonego konta.

Czy muszę najpierw obrócić klucze dostępu do konta?

Przed skonfigurowaniem zasad wygasania sygnatury dostępu współdzielonego może być konieczne obracanie każdego z kluczy dostępu do konta co najmniej raz. Jeśli właściwość keyCreationTime konta magazynu ma wartość null dla jednego z kluczy dostępu do konta (klucz1 i klucz2), należy je obrócić. Aby określić, czy właściwość keyCreationTime ma wartość null, zobacz Pobieranie czasu tworzenia kluczy dostępu konta dla konta magazynu. Jeśli spróbujesz skonfigurować zasady wygasania sygnatury dostępu współdzielonego, a klucze muszą zostać najpierw obrócone, operacja zakończy się niepowodzeniem.

Jak skonfigurować zasady wygasania sygnatury dostępu współdzielonego

Zasady wygasania sygnatury dostępu współdzielonego można skonfigurować przy użyciu witryny Azure Portal, programu PowerShell lub interfejsu wiersza polecenia platformy Azure.

Aby skonfigurować zasady wygasania sygnatury dostępu współdzielonego w witrynie Azure Portal, wykonaj następujące kroki:

  1. W witrynie Azure Portal przejdź do swojego konta magazynu.

  2. W obszarze Ustawienia wybierz pozycję Konfiguracja.

  3. Znajdź ustawienie Zezwalaj na zalecany górny limit dla interwału wygaśnięcia sygnatury dostępu współdzielonego (SAS) i ustaw dla niego wartość Włączone.

    Uwaga

    Jeśli ustawienie jest wyszarane i zostanie wyświetlony komunikat pokazany na poniższej ilustracji, należy obrócić oba klucze dostępu do konta, zanim będzie można ustawić zalecany górny limit dla wartości interwału wygaśnięcia sygnatury dostępu współdzielonego:

    Screenshot showing the option to configure a SAS expiration policy is grayed out in the Azure portal.

  4. Określ wartości czasu w obszarze Zalecany górny limit interwału wygaśnięcia sygnatury dostępu współdzielonego dla zalecanego interwału dla wszelkich nowych sygnatur dostępu współdzielonego utworzonych na zasobach na tym koncie magazynu.

    Screenshot showing how to configure a SAS expiration policy in the Azure portal.

  5. Wybierz Zapisz, aby zapisać zmiany.

Wykonywanie zapytań dotyczących dzienników pod kątem naruszeń zasad

Aby zarejestrować użycie sygnatury dostępu współdzielonego, która jest ważna w dłuższym przedziale czasu, niż zaleca zasady wygasania sygnatur dostępu współdzielonego, należy najpierw utworzyć ustawienie diagnostyczne wysyłające dzienniki do obszaru roboczego usługi Azure Log Analytics. Aby uzyskać więcej informacji, zobacz Wysyłanie dzienników do usługi Azure Log Analytics.

Następnie użyj zapytania dziennika usługi Azure Monitor, aby monitorować, czy zasady zostały naruszone. Utwórz nowe zapytanie w obszarze roboczym usługi Log Analytics, dodaj następujący tekst zapytania i naciśnij przycisk Uruchom.

StorageBlobLogs 
| where SasExpiryStatus startswith "Policy violated"
| summarize count() by AccountName, SasExpiryStatus

Monitorowanie zgodności przy użyciu wbudowanych zasad

Możesz monitorować konta magazynu za pomocą usługi Azure Policy, aby upewnić się, że konta magazynu w ramach subskrypcji skonfigurowały zasady wygasania sygnatur dostępu współdzielonego. Usługa Azure Storage udostępnia wbudowane zasady zapewniające, że konta mają skonfigurowane to ustawienie. Aby uzyskać więcej informacji na temat wbudowanych zasad, zobacz Konta magazynu powinny mieć zasady sygnatury dostępu współdzielonego skonfigurowane w temacie Lista wbudowanych definicji zasad.

Przypisywanie wbudowanych zasad dla zakresu zasobów

Wykonaj następujące kroki, aby przypisać wbudowane zasady do odpowiedniego zakresu w witrynie Azure Portal:

  1. W witrynie Azure Portal wyszukaj pozycję Zasady , aby wyświetlić pulpit nawigacyjny usługi Azure Policy.

  2. W sekcji Tworzenie wybierz pozycję Przypisania.

  3. Wybierz pozycję Przypisz zasady.

  4. Na karcie Podstawowe na stronie Przypisywanie zasad w sekcji Zakres określ zakres przypisania zasad. Wybierz przycisk Więcej, aby wybrać subskrypcję i opcjonalną grupę zasobów.

  5. W polu Definicja zasad wybierz przycisk Więcej i wprowadź klucze konta magazynu w polu Wyszukaj. Wybierz definicję zasad o nazwie Klucze konta magazynu nie powinny być wygasłe.

    Screenshot showing how to select the built-in policy to monitor validity intervals for shared access signatures for your storage accounts

  6. Wybierz pozycję Przejrzyj i utwórz , aby przypisać definicję zasad do określonego zakresu.

    Screenshot showing how to create the policy assignment

Monitorowanie zgodności z zasadami wygasania kluczy

Aby monitorować konta magazynu pod kątem zgodności z zasadami wygasania kluczy, wykonaj następujące kroki:

  1. Na pulpicie nawigacyjnym usługi Azure Policy znajdź wbudowaną definicję zasad dla zakresu określonego w przypisaniu zasad. Możesz wyszukać Storage accounts should have shared access signature (SAS) policies configured w polu Wyszukiwania , aby filtrować wbudowane zasady.

  2. Wybierz nazwę zasad z żądanym zakresem.

  3. Na stronie Przypisywanie zasad dla wbudowanych zasad wybierz pozycję Wyświetl zgodność. Wszystkie konta magazynu w określonej subskrypcji i grupie zasobów, które nie spełniają wymagań zasad, są wyświetlane w raporcie zgodności.

    Screenshot showing how to view the compliance report for the SAS expiration built-in policy

Aby zapewnić zgodność konta magazynu, skonfiguruj zasady wygasania sygnatur dostępu współdzielonego dla tego konta zgodnie z opisem w temacie Konfigurowanie zasad wygasania sygnatury dostępu współdzielonego.

Zobacz też