Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Для шифрования неактивных данных приложения веб-приложения требуется учетная запись хранения Azure и Azure Key Vault. Эти службы используются при запуске приложения из пакета развертывания.
- Служба хранилища Azure предоставляет шифрование неактивных данных. Вы можете использовать системные ключи или собственные ключи, управляемые клиентом. Служба хранилища Azure хранит данные приложения, если они не работают в веб-приложении в Azure.
- Запуск из пакета развертывания — это функция развертывания службы приложений. Он позволяет развертывать содержимое сайта из учетной записи хранения Azure с помощью URL-адреса с общей подписью доступа (SAS).
- Ссылки на Key Vault — это функция безопасности службы приложений. Он позволяет импортировать секреты во время выполнения в качестве параметров приложения. Используйте эту функцию для шифрования URL-адреса SAS учетной записи хранения Azure.
Настройка шифрования данных в состоянии покоя
Создание учетной записи хранения Azure
Начните с создания учетной записи хранения.
Создайте учетную запись хранения Azure и зашифруйте ее с помощью ключей, управляемых клиентом. После создания учетной записи хранения используйте обозреватель службы хранилища Azure для отправки файлов пакетов.
Используйте Storage Explorer для создания SAS для файлов пакетов.
Замечание
Сохраните этот URL-адрес SAS. Позже его можно использовать для обеспечения безопасного доступа к пакету развертывания во время выполнения.
Настройка запуска приложения из пакета в учетной записи хранилища
После загрузки вашего файла в хранилище Blob и получения SAS URL для файла, установите SAS URL в параметр приложения WEBSITE_RUN_FROM_PACKAGE. В следующем примере этот параметр настраивается с помощью Azure CLI:
az webapp config appsettings set --name <app-name> --resource-group <resource-group-name> --settings WEBSITE_RUN_FROM_PACKAGE="<your-SAS-URL>"
Добавление этого параметра приложения приводит к перезапуску веб-приложения. После перезапуска приложения откройте его и убедитесь, что оно запущено правильно вместе с пакетом развертывания. Если приложение не запустилось корректно, пожалуйста, ознакомьтесь с руководством по устранению неполадок с пакетом.
Шифрование параметра приложения с помощью ссылок Key Vault
Теперь можно заменить значение параметра приложения WEBSITE_RUN_FROM_PACKAGE ссылкой на Key Vault на URL-адрес с кодировкой SAS. Таким образом URL-адрес SAS шифруется в Key Vault, чтобы обеспечить дополнительный уровень безопасности.
Чтобы создать экземпляр Key Vault, используйте следующую
az keyvault createкоманду.az keyvault create --name "Contoso-Vault" --resource-group <group-name> --location eastusСледуйте этим инструкциям, чтобы предоставить приложению доступ к хранилищу ключей:
Используйте следующую
az keyvault secret setкоманду, чтобы добавить внешний URL-адрес в качестве секрета в хранилище ключей:az keyvault secret set --vault-name "Contoso-Vault" --name "external-url" --value "<SAS-URL>"Используйте следующую
az webapp config appsettings setкоманду, чтобы создатьWEBSITE_RUN_FROM_PACKAGEпараметр приложения со значением в виде ссылки на Key Vault к внешнему URL-адресу.az webapp config appsettings set --settings WEBSITE_RUN_FROM_PACKAGE="@Microsoft.KeyVault(SecretUri=https://Contoso-Vault.vault.azure.net/secrets/external-url/<secret-version>"
В выходных данных команды
<secret-version>естьaz keyvault secret setиз предыдущей команды.
Обновление этого параметра приложения приводит к перезапуску веб-приложения. После перезапуска приложения откройте его, чтобы убедиться, что оно запущено правильно со ссылкой на Key Vault.
Как изменить токен доступа
Рекомендуется периодически сменить ключ SAS учетной записи хранения. Чтобы веб-приложение не потеряло доступ, необходимо также обновить URL-адрес SAS в Key Vault.
Обновите ключ SAS, перейдя в вашу учетную запись хранения на портале Azure. В разделе "Безопасность и сетевой>доступ" выберите значок, чтобы повернуть ключ SAS.
Скопируйте новый URL-адрес SAS и используйте следующую команду, чтобы задать обновленный URL-адрес SAS в хранилище ключей:
az keyvault secret set --vault-name "Contoso-Vault" --name "external-url" --value "<SAS-URL>"Обновите ссылку на хранилище ключей в параметре приложения до новой версии секретного ключа.
az webapp config appsettings set --settings WEBSITE_RUN_FROM_PACKAGE="@Microsoft.KeyVault(SecretUri=https://Contoso-Vault.vault.azure.net/secrets/external-url/<secret-version>"В выходных данных команды
<secret-version>естьaz keyvault secret setиз предыдущей команды.
Отмена доступа к данным веб-приложения
Существует два метода отзыва доступа веб-приложения к учетной записи хранения.
Смена ключа SAS для учетной записи хранения Azure
Если ключ SAS для учетной записи хранения поворачивается, веб-приложение больше не будет иметь доступа к учетной записи хранения, но будет продолжать работать с последней скачаной версией файла пакета. Перезапустите веб-приложение, чтобы очистить последнюю скачаемую версию.
Удаление доступа веб-приложения к Key Vault
Вы можете отменить доступ веб-приложения к данным сайта, отключив доступ веб-приложения к Key Vault. Чтобы отключить этот доступ, удалите политику назначения ролей или доступа для удостоверения веб-приложения. Эта учетная запись была создана при настройке шифрования.
Сводка
Файлы вашего приложения теперь зашифрованы в состояниях покоя в вашей учетной записи хранения данных. При запуске веб-приложения он получает URL-адрес SAS из хранилища ключей. Наконец, веб-приложение загружает файлы приложения из учетной записи хранения.
Если вам нужно отозвать доступ веб-приложения к учетной записи хранения, вы можете отменить доступ к хранилищу ключей или сменить ключи учетной записи хранения. Оба этих действия делают URL-адрес SAS недействительным.
Часто задаваемые вопросы
Взимается ли дополнительная плата за запуск веб-приложения из пакета развертывания?
Только затраты, связанные с учетной записью хранения Azure, и любые применимые расходы на исходящий трафик.
Как повлияет запуск из пакета развертывания на мое веб-приложение?
- Запуск приложения из пакета развертывания делает
wwwroot/доступной только для чтения. Приложение получает ошибку при попытке записи в этот каталог. - Форматы TAR и gzip не поддерживаются.
- Эта функция несовместима с локальным кэшем.