Udostępnij za pośrednictwem


Jak używać zabezpieczonego konta magazynu w usłudze Azure Functions

Usługa Azure Functions wymaga konta usługi Azure Storage podczas tworzenia wystąpienia aplikacji funkcji. To domyślne konto magazynu jest używane przez środowisko uruchomieniowe usługi Functions do utrzymania kondycji aplikacji funkcji. Aby uzyskać więcej informacji, zobacz Zagadnienia dotyczące magazynu dla usługi Azure Functions. W tym artykule pokazano, jak używać zabezpieczonego konta magazynu jako domyślnego konta magazynu. Aby zapoznać się ze szczegółowym samouczkiem dotyczącym tworzenia aplikacji funkcji z ograniczeniami dostępu przychodzącego i wychodzącego, zobacz samouczek Integracja z siecią wirtualną. Aby dowiedzieć się więcej na temat usługi Azure Functions i sieci, zobacz Opcje sieci usługi Azure Functions.

Ograniczanie konta magazynu do sieci wirtualnej

Podczas tworzenia aplikacji funkcji utworzysz nowe konto magazynu lub utworzysz łącze do istniejącego. Należy pamiętać o tych kwestiach podczas pracy z zabezpieczonym kontem magazynu.

  • Aby utworzyć aplikację funkcji, która używa istniejącego zabezpieczonego konta magazynu jako domyślnego konta magazynu, musisz utworzyć aplikację w witrynie Azure Portal lub przy użyciu szablonu usługi ARM lub wdrożeń Bicep .
  • W przypadku korzystania z zabezpieczonego konta magazynu z planem skalowania dynamicznego należy hostować swoje funkcje w planie Flex Consumption. Ten plan obsługuje zarówno zabezpieczone konta magazynu, jak i połączenia oparte na tożsamościach zarządzanych z magazynem, co jest najbezpieczniejszą opcją połączenia.
  • Wszystkie warstwy planu dedykowanego (App Service) i planu Elastic Premium obsługują również bezpieczne konta magazynu. Istnieją jednak kompromisy w przypadku używania tożsamości zarządzanych do nawiązywania połączenia z poziomu aplikacji planu Premium. Aby uzyskać więcej informacji, zobacz Tworzenie aplikacji bez usługi Azure Files.
  • Plan Zużycie nie obsługuje sieci wirtualnych, więc nie można nawiązać połączenia z zabezpieczonym kontem magazynu podczas uruchamiania w planie Zużycie. Aby korzystać z hostingu funkcji bezserwerowych, należy zamiast tego ponownie utworzyć aplikację do uruchomienia w planie Flex Consumption.
  • W tym artykule pokazano obecnie, jak utworzyć aplikację funkcji w planie Premium, która łączy się z zabezpieczonym kontem magazynu przy użyciu konta magazynu parametry połączenia. Aby zapewnić najlepszą ochronę poświadczeń konta magazynu, należy zamiast tego używać tożsamości zarządzanych podczas nawiązywania połączenia z kontem magazynu. Zamiast tego postępuj zgodnie z przewodnikiem Szybki start: tworzenie i wdrażanie funkcji w usłudze Azure Functions przy użyciu interfejsu wiersza polecenia dla deweloperów platformy Azure w celu utworzenia aplikacji funkcji w planie Flex Consumption, która łączy się z nowym zabezpieczonym kontem magazynu przy użyciu tożsamości zarządzanych.
  • Aby uzyskać listę wszystkich ograniczeń dotyczących kont magazynu, zobacz Wymagania dotyczące konta magazynu.

Bezpieczny magazyn podczas tworzenia aplikacji funkcji

Aplikację funkcji można utworzyć wraz z nowym kontem magazynu zabezpieczonym za siecią wirtualną. W poniższych sekcjach pokazano, jak utworzyć te zasoby przy użyciu witryny Azure Portal lub szablonów wdrażania.

Wykonaj kroki opisane w temacie Tworzenie aplikacji funkcji w planie Premium. W tej sekcji samouczka dotyczącej sieci wirtualnej pokazano, jak utworzyć aplikację funkcji, która łączy się z magazynem za pośrednictwem prywatnych punktów końcowych.

Uwaga

Podczas tworzenia aplikacji funkcji w witrynie Azure Portal możesz również wybrać istniejące zabezpieczone konto magazynu na karcie Magazyn . Należy jednak skonfigurować odpowiednią sieć w aplikacji funkcji, aby mogła łączyć się za pośrednictwem sieci wirtualnej używanej do zabezpieczenia konta magazynu. Jeśli nie masz uprawnień do konfigurowania sieci lub nie masz w pełni przygotowanej sieci, wybierz pozycję Konfiguruj sieć po utworzeniu na karcie Sieć. Sieć dla nowej aplikacji funkcji można skonfigurować w portalu w obszarze Ustawienia>Sieci.

Bezpieczny magazyn dla istniejącej aplikacji funkcji

Jeśli masz istniejącą aplikację funkcji, możesz bezpośrednio skonfigurować sieć na koncie magazynu używanym przez aplikację. Jednak ten proces powoduje, że aplikacja funkcji nie działa podczas konfigurowania sieci i podczas ponownego uruchamiania aplikacji funkcji.

Aby zminimalizować przestoje, możesz zamienić istniejące konto magazynu na nowe, zabezpieczone konto magazynu.

1. Włączanie integracji z siecią wirtualną

W ramach wymagań wstępnych należy włączyć integrację sieci wirtualnej dla aplikacji funkcji:

  1. Wybierz aplikację funkcji z kontem magazynu, które nie ma włączonych punktów końcowych usługi ani prywatnych punktów końcowych.

  2. Włącz integrację sieci wirtualnej dla aplikacji funkcji.

2. Tworzenie zabezpieczonego konta magazynu

Skonfiguruj zabezpieczone konto magazynu dla aplikacji funkcji:

  1. Utwórz drugie konto magazynu. To konto magazynu to zabezpieczone konto magazynu używane przez aplikację funkcji zamiast oryginalnego niezabezpieczonego konta magazynu. Możesz również użyć istniejącego konta magazynu, które nie jest jeszcze używane przez funkcje.

  2. Zapisz parametry połączenia dla tego konta magazynu, aby użyć go później.

  3. Utwórz udział plików na nowym koncie magazynu. Dla wygody możesz użyć tej samej nazwy udziału plików z oryginalnego konta magazynu. W przeciwnym razie, jeśli używasz nowej nazwy udziału plików, musisz zaktualizować ustawienie aplikacji.

  4. Zabezpiecz nowe konto magazynu na jeden z następujących sposobów:

    • Utwórz prywatny punkt końcowy. Podczas konfigurowania połączenia prywatnego punktu końcowego utwórz prywatne punkty końcowe dla file podźródła i blob . W przypadku rozszerzenia Durable Functions należy również udostępnić queue zasoby podrzędne i table za pośrednictwem prywatnych punktów końcowych. Jeśli używasz niestandardowego lub lokalnego serwera systemu nazw domen (DNS), skonfiguruj serwer DNS, aby rozpoznać nowe prywatne punkty końcowe.

    • Ogranicz ruch do określonych podsieci. Upewnij się, że aplikacja funkcji jest zintegrowana z dozwoloną podsiecią i że podsieć ma punkt końcowy usługi do Microsoft.Storage.

  5. Skopiuj zawartość pliku i obiektu blob z bieżącego konta magazynu używanego przez aplikację funkcji do nowo zabezpieczonego konta magazynu i udziału plików. Narzędzia AzCopy i Eksplorator usługi Azure Storage są typowymi metodami. Jeśli używasz Eksplorator usługi Azure Storage, może być konieczne zezwolenie na dostęp adresu IP klienta do zapory konta magazynu.

Teraz możesz skonfigurować aplikację funkcji do komunikowania się z nowo zabezpieczonym kontem magazynu.

3. Włączanie routingu aplikacji i konfiguracji

Uwaga

Te kroki konfiguracji są wymagane tylko w przypadku planów hostingu Elastic Premium i Dedicated (App Service). Plan Flex Consumption nie wymaga ustawień lokacji w celu skonfigurowania sieci.

Teraz możesz kierować ruch aplikacji funkcji do przechodzenia przez sieć wirtualną:

  1. Włącz routing aplikacji, aby kierować ruch aplikacji do sieci wirtualnej:

    1. W aplikacji funkcji rozwiń węzeł Ustawienia, a następnie wybierz pozycję Sieć. Na stronie Sieć w obszarze Konfiguracja ruchu wychodzącego wybierz podsieć skojarzona z integracją sieci wirtualnej.

    2. Na nowej stronie w obszarze Routing aplikacji wybierz pozycję Wychodzący ruch internetowy.

  2. Włącz routing udostępniania zawartości, aby umożliwić aplikacji funkcji komunikowanie się z nowym kontem magazynu za pośrednictwem sieci wirtualnej. Na tej samej stronie co poprzedni krok w obszarze Routing konfiguracji wybierz pozycję Magazyn zawartości.

Uwaga

Podczas kierowania do udziału zawartości na koncie magazynu współużytkowanego przez wiele aplikacji funkcji w tym samym planie należy zachować szczególną ostrożność. Aby uzyskać więcej informacji, zobacz Spójny routing za pośrednictwem sieci wirtualnych w artykule Zagadnienia dotyczące magazynu.

4. Aktualizowanie ustawień aplikacji

Na koniec należy zaktualizować ustawienia aplikacji, aby wskazywały nowe bezpieczne konto magazynu:

  1. W aplikacji funkcji rozwiń węzeł Ustawienia, a następnie wybierz pozycję Zmienne środowiskowe.

  2. Na karcie Ustawienia aplikacji zaktualizuj następujące ustawienia, wybierając każde ustawienie, edytując je, a następnie wybierając pozycję Zastosuj:

    Nazwa ustawienia Wartość Komentarz
    AzureWebJobsStorage Parametry połączenia magazynu Użyj parametry połączenia dla nowego zabezpieczonego konta magazynu, które zapisano wcześniej.
    WEBSITE_CONTENTAZUREFILECONNECTIONSTRING Parametry połączenia magazynu Użyj parametry połączenia dla nowego zabezpieczonego konta magazynu, które zapisano wcześniej.
    WEBSITE_CONTENTSHARE Udział plików Użyj nazwy udziału plików utworzonego na zabezpieczonym koncie magazynu, na którym znajdują się pliki wdrażania projektu.
  3. Wybierz pozycję Zastosuj, a następnie potwierdź , aby zapisać nowe ustawienia aplikacji w aplikacji funkcji.

    Aplikacja funkcji zostanie ponownie uruchomiona.

Po zakończeniu ponownego uruchamiania aplikacji funkcji nawiąż połączenie z zabezpieczonym kontem magazynu.

Następne kroki