Использование защищенной учетной записи хранения с Функции Azure
При создании экземпляра приложения-функции для Функций Azure требуется учетная запись хранения Azure. Эта учетная запись хранения по умолчанию используется средой выполнения Функций для поддержания работоспособности приложения-функции. Дополнительные сведения см. в статье Рекомендации по хранению для Функций Azure. В этой статье показано, как использовать безопасную учетную запись хранения в качестве учетной записи хранения по умолчанию. Подробное руководство по созданию приложения-функции с ограничениями для входящего и исходящего доступа см. в руководстве по интеграции с виртуальной сетью . Дополнительные сведения см. в статье Параметры сети для Функций Azure.
Ограничьте учетную запись хранения виртуальной сети
При создании приложения-функции создается новая учетная запись хранения или ссылка на существующую. Имейте в виду эти рекомендации при работе с защищенной учетной записью хранения.
- Чтобы создать приложение-функцию, использующее существующую защищенную учетную запись хранения в качестве учетной записи хранения по умолчанию, необходимо создать приложение в портал Azure или с помощью шаблона ARM или развертываний Bicep.
- При использовании защищенной учетной записи хранения с динамическим масштабируемым планом следует разместить функции в плане потребления Flex. Этот план поддерживает как защищенные учетные записи хранения, так и подключения на основе управляемых удостоверений к хранилищу, что является наиболее безопасным вариантом подключения.
- Все уровни плана выделенного (Служба приложений) и плана Elastic Premium также поддерживают безопасные учетные записи хранения. Однако при использовании управляемых удостоверений для подключения из приложения плана Premium существуют компромиссы. Дополнительные сведения см. в статье "Создание приложения без Файлы Azure".
- План потребления не поддерживает виртуальные сети, поэтому вы не можете подключиться к защищенной учетной записи хранения при выполнении в плане потребления. Чтобы воспользоваться преимуществами размещения бессерверных функций, необходимо создать приложение для запуска в плане потребления Flex.
- В этой статье показано, как создать приложение-функцию в плане Premium, который подключается к защищенной учетной записи хранения с помощью учетной записи хранения строка подключения. Чтобы обеспечить лучшую защиту учетных данных учетной записи хранения, вместо этого следует использовать управляемые удостоверения при подключении к учетной записи хранения. Вместо этого выполните краткое руководство. Создание и развертывание функций для Функции Azure с помощью Интерфейса командной строки разработчика Azure для создания приложения-функции в плане потребления Flex, который подключается к новой защищенной учетной записи хранения с помощью управляемых удостоверений.
- Список всех ограничений для учетных записей хранения см. в разделе "Требования к учетной записи хранения".
Безопасное хранилище во время создания приложения-функции
Вы можете создать приложение-функцию вместе с новой учетной записью хранения, защищенной за виртуальной сетью. В следующих разделах показано, как создать эти ресурсы с помощью портал Azure или с помощью шаблонов развертывания.
Выполните действия, описанные в разделе "Создание приложения-функции" в плане "Премиум". В этом разделе руководства по виртуальной сети показано, как создать приложение-функцию, которое подключается к хранилищу через частные конечные точки.
Примечание.
При создании приложения-функции в портал Azure можно также выбрать существующую защищенную учетную запись хранения на вкладке хранилища. Однако необходимо настроить соответствующую сеть в приложении-функции, чтобы он смог подключиться через виртуальную сеть, используемую для защиты учетной записи хранения. Если у вас нет разрешений на настройку сети или вы еще не подготовили сеть, выберите "Настройка сети" после создания на вкладке "Сеть". Вы можете настроить сеть для нового приложения-функции на портале в разделе "Параметры>сети".
Безопасное хранилище для существующего приложения-функции
При наличии существующего приложения-функции можно напрямую настроить сеть в учетной записи хранения, используемой приложением. Однако этот процесс приводит к отключению приложения-функции во время настройки сети и перезапуска приложения-функции.
Чтобы свести к минимуму время простоя, можно вместо этого переключить существующую учетную запись хранения для новой защищенной учетной записи хранения.
1. Включение интеграции виртуальной сети
Необходимо включить интеграцию виртуальной сети для приложения-функции.
Выберите приложение-функцию с учетной записью хранения, которая не имеет конечных точек службы или частных конечных точек.
Включите интеграцию виртуальной сети для приложения-функции.
2. Создание защищенной учетной записи хранения
Настройте безопасную учетную запись хранения для приложения-функции:
Создайте вторую учетную запись хранения. Эта учетная запись хранения является защищенной учетной записью хранения для приложения-функции, используемой вместо исходной незащищенной учетной записи хранения. Вы также можете использовать существующую учетную запись хранения, которая еще не используется функциями.
Сохраните строка подключения для этой учетной записи хранения, чтобы использовать ее позже.
Создайте общую папку в новой учетной записи хранения. Для удобства можно использовать то же имя общей папки из исходной учетной записи хранения. В противном случае, если вы используете новое имя общей папки, необходимо обновить параметр приложения.
Обеспечьте защиту новой учетной записи хранения одним из следующих способов:
Создайте частную конечную точку. При настройке подключения к частной конечной точке создайте частные конечные точки для
file
подресурсов иblob
подресурсов. Для Устойчивые функции необходимо также создаватьqueue
иtable
подресурсы, доступные через частные конечные точки. Если вы используете пользовательский или локальный dns-сервер, настройте DNS-сервер для разрешения новых частных конечных точек.Ограничить трафик определенными подсетями. Убедитесь, что ваше приложение-функция интегрировано с разрешенной подсетью и что подсеть имеет конечную точку
Microsoft.Storage
службы.
Скопируйте содержимое файла и большого двоичного объекта из текущей учетной записи хранения, используемой приложением-функцией, в только что защищенную учетную запись хранения и общую папку. AzCopy и служба хранилища Azure Explorer являются общими методами. Если вы используете обозреватель служба хранилища Azure, возможно, потребуется разрешить ip-адрес клиента брандмауэру учетной записи хранения.
Теперь вы готовы настроить приложение-функцию для взаимодействия с новой защищенной учетной записью хранения.
3. Включение маршрутизации приложений и конфигурации
Примечание.
Эти действия конфигурации необходимы только для планов размещения Elastic Premium и выделенных (Служба приложений). План потребления Flex не требует настройки параметров сайта для настройки сети.
Теперь вы готовы маршрутизировать трафик приложения-функции для передачи через виртуальную сеть:
Включите маршрутизацию приложений для маршрутизации трафика приложения в виртуальную сеть:
В приложении-функции разверните узел "Параметры" и выберите "Сеть". На странице "Сеть" в разделе "Конфигурация исходящего трафика" выберите подсеть, связанную с интеграцией виртуальной сети.
На новой странице в разделе "Маршрутизация приложений" выберите исходящий интернет-трафик.
Включите маршрутизацию общего ресурса содержимого, чтобы приложение-функция могли взаимодействовать с новой учетной записью хранения через свою виртуальную сеть. На той же странице, что и на предыдущем шаге, в разделе "Маршрутизация конфигурации" выберите хранилище контента.
Примечание.
При маршрутизации в общую папку содержимого в учетной записи хранения, к которой используются несколько приложений-функций в одном плане, необходимо особое внимание. Дополнительные сведения см. в статье о согласованной маршрутизации через виртуальные сети в статье "Рекомендации по хранилищу".
4. Обновление параметров приложения
Наконец, необходимо обновить параметры приложения, чтобы указать новую безопасную учетную запись хранения:
В приложении-функции разверните узел "Параметры" и выберите переменные среды.
На вкладке "Параметры приложения" обновите следующие параметры, выбрав каждый параметр, редактируя его, а затем нажмите кнопку "Применить".
Имя настройки Значение Комментарии AzureWebJobsStorage
строка подключения к хранилищу; Используйте строка подключения для новой защищенной учетной записи хранения, которую вы сохранили ранее. WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
строка подключения к хранилищу; Используйте строка подключения для новой защищенной учетной записи хранения, которую вы сохранили ранее. WEBSITE_CONTENTSHARE
Общая папка Используйте имя общей папки, созданной в защищенной учетной записи хранения, в которой находятся файлы развертывания проекта. Нажмите кнопку "Применить", а затем подтвердите сохранение новых параметров приложения в приложении-функции.
Приложение-функция перезапускается.
После завершения перезапуска приложения-функции он подключается к защищенной учетной записи хранения.