Поделиться через


Сертификаты и Среда службы приложений версии 2

Внимание

В этой статье описывается Среда службы приложений версии 2, которая используется с изолированными планами Служба приложений. Среда службы приложений версии 1 и 2 будут прекращены 31 августа 2024 года. Имеется новая версия среды службы приложений, которая проще в использовании и которая работает на более мощной инфраструктуре. Чтобы узнать больше о новой версии, начните с изучения статьи Введение в Среду службы приложений. Если вы используете Среду службы приложений версии 2, выполните действия, описанные в этой статье, чтобы перейти на новую версию.

После 31 августа 2024 года начнется удаление оборудования Среда службы приложений версии 1 и версии 2, и это может повлиять на доступность и производительность приложений и данных. Соглашение об уровне обслуживания (SLA) и кредиты на обслуживание больше не будут применяться к рабочим нагрузкам Среда службы приложений версии 1 и версии 2, которые продолжают работать после 31 августа 2024 года.

Вы должны завершить миграцию в Среда службы приложений версии 3 до 31 августа 2024 г., или ваши приложения и ресурсы могут быть удалены. Мы попытаемся выполнить автоматическую миграцию всех оставшихся Среда службы приложений версии 1 и 2 на основе оптимальной работы с помощью функции миграции на месте, но корпорация Майкрософт не утверждает или не гарантирует доступность приложений после автоматической миграции. Вам может потребоваться выполнить настройку вручную, чтобы завершить миграцию и оптимизировать выбор номера SKU плана Служба приложений в соответствии с вашими потребностями. Если автоматическая миграция невозможна, ваши ресурсы и связанные данные приложения будут удалены. Мы настоятельно призываем вас действовать сейчас, чтобы избежать любого из этих экстремальных сценариев.

Последние сведения об обновлении Среда службы приложений версии 1/2 см. в Среда службы приложений обновлении для выхода на пенсию версии 1 и версии 2.

Среда Службы приложений (ССП) — это реализация Службы приложений Azure в виртуальной сети Azure. Ее можно развернуть с помощью конечной точки приложения специальных возможностей Интернета или конечной точки приложения, которая находится в виртуальной сети. Развертывание ССП с помощью конечной точки, доступной через Интернет, называется внешней средой ССП. Развертывание ССП с помощью конечной точки в виртуальной сети называется средой ССП с внутренней подсистемой балансировки нагрузки. Дополнительные сведения об ССП с подсистемой балансировки нагрузки см. в статье Создание и использование внутренней подсистемы балансировки нагрузки со средой Службы приложений.

Среда Службы приложений — это одноклиентская система. Поэтому есть некоторые функции, доступные только с ССП, которые недоступны в Службе приложений с несколькими клиентами.

Сертификаты ССП с внутренним балансировщиком нагрузки

При использовании внешней Среды службы приложений получить доступ к приложениям можно по адресу <имя приложения>.<имя Среды службы приложений>.p.azurewebsites.net. По умолчанию все среды ССП, даже среды ССП с внутренним балансировщиком нагрузки, создаются с помощью сертификатов, которые находятся в этом формате. При использовании ССП с внутренним балансировщиком нагрузки достигнуть приложения можно в зависимости от того, какое доменное имя указано при создании ССП с подсистемой балансировки нагрузки. Чтобы приложение поддерживало TLS, необходимо отправить сертификаты. Получите действующий сертификат TLS/SSL, используя внутренние центры сертификации, купив сертификат у внешнего эмитента или используя самозаверяющий сертификат.

Существует два варианта настройки сертификатов со средой ССП с подсистемой балансировки нагрузки. Можно задать подстановочный знак стандартного сертификата для среды ССП с подсистемой балансировки нагрузки или установить сертификаты на отдельных веб-приложениях в среде ССП. Независимо от источника SSL-сертификата, для него необходимо соответствующим образом настроить следующие атрибуты:

  • Subject — для этого атрибута необходимо задать значение *.[имя_корневого_домена] для подстановочного знака сертификата среды ССП с подсистемой балансировки нагрузки. Если сертификат для вашего приложения создан, он должен быть [имя_приложения].[имя_корневого_домена]
  • Subject Alternative Name — этот атрибут должен содержать два значения: *.[имя_корневого_домена] и *.scm.[имя_корневого_домена] для подстановочного знака сертификата среды ССП с подсистемой балансировки нагрузки. Если сертификат для вашего приложения создан, он должен быть [имя_приложения].[имя_корневого_домена] и [имя_приложения].scm.[имя_корневого_домена].

Как третий вариант можно создать сертификат ССП с подсистемой балансировки нагрузки, включающий все свои имена отдельных приложений в сети хранения данных сертификата вместо использования ссылки на подстановочный знак. Проблема этого метода в том, что необходимо заранее знать имена приложений, которые размещают в ССП, или необходимо обновлять сертификат ССП с подсистемой балансировки нагрузки.

Отправка сертификата в ССП с подсистемой балансировки нагрузки

После создания ССП с подсистемой балансировки нагрузки на портале для этой среды необходимо задать сертификат. Пока сертификат установлен, ССП будет отображать заголовок, которому он не был задан.

Отправленный сертификат должен быть PFX-файлом. Прежде чем использовать сертификат, нужно подождать примерно 20 минут после его отправки.

Нельзя создать ССП и отправить сертификат одновременно на портал или даже в один шаблон. Как отдельное действие можно отправить сертификат с помощью шаблона, как описано в статье Создание среды ССП с помощью шаблона.

Если вы хотите быстро создать самозаверяющий сертификат для тестирования, можно использовать следующую часть PowerShell:

$certificate = New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname "*.internal.contoso.com","*.scm.internal.contoso.com"

$certThumbprint = "cert:\localMachine\my\" + $certificate.Thumbprint
$password = ConvertTo-SecureString -String "CHANGETHISPASSWORD" -Force -AsPlainText

$fileName = "exportedcert.pfx"
Export-PfxCertificate -cert $certThumbprint -FilePath $fileName -Password $password

При создании самозаверяющего сертификата необходимо убедиться, что имя субъекта имеет формат CN={ASE_NAME_HERE}_InternalLoadBalancingASE.

сертификаты приложения.

Приложения, размещенные в среде ССП, могут использовать функции сертификата, ориентированного на приложение, которые доступны в Службе приложений с несколькими клиентами. Эти функции включают в себя следующее:

  • сертификаты SNI;
  • SSL на основе IP-адреса, который поддерживается только во внешней среде ССП; ССП с подсистемой балансировки нагрузки, которая не поддерживает SSL на основе IP-адреса;
  • сертификаты узла хранилища ключей.

Инструкции для загрузки и управления этими сертификатами доступны в руководстве Добавление сертификата TLS или SSL в службе приложений Azure. Если вы просто настраиваете сертификаты для соответствия пользовательскому доменному имени, которое вы назначили своему веб-приложению, то этих инструкций будет достаточно. Если вы загружаете сертификат для веб-приложения среды ССП с подсистемой балансировки нагрузки со стандартным доменным именем, укажите сайт scm в SAN сертификата, как указано выше.

Параметры протокола TLS

Вы можете настроить параметр TLS на уровне приложения.

Сертификат частного клиента

Обычный вариант использования — настроить ваше приложение как клиент в модели клиент-сервер. Защищая сервер с помощью частного сертификата ЦС, нужно загрузить сертификат клиента в свое приложение. Приведенные ниже инструкции будут загружать сертификаты в truststore рабочих потоков, в которых запускается приложение. Если вы загружаете сертификат в одно приложение, вы можете использовать его с другими приложениями в том же плане Службы приложений, не загружая сертификат еще раз.

Чтобы загрузить сертификат в приложение в ССП, выполните действия, перечисленные ниже.

  1. Создайте файл CER для сертификата.

  2. Перейдите к приложению, которое требует сертификат на портале Azure

  3. Перейдите в параметры SSL в приложении. Щелкните "Отправить сертификат". Щелкните Общедоступный. Выберите "Локальный компьютер". Введите имя. Найдите и выберите ваш файл CER. Выберите "Передать".

  4. Скопируйте отпечаток.

  5. Выберите Параметры приложения. Создайте параметр приложения WEBSITE_LOAD_ROOT_CERTIFICATES с отпечатком как значение. Если у вас несколько сертификатов, можно поместить их в один параметр, разделив их запятыми без пробелов, например

    84EC242A4EC7957817B8E48913E50953552DAFA6,6A5C65DC9247F762FE17BF8D4906E04FE6B31819

Сертификат будет доступен для всех приложений в одном плане Службы приложений как приложение, которое настроено для этого параметра. Если требуется, чтобы он имел доступ к приложению в разных планах Службы приложений, необходимо повторить операцию "Настройка приложения" в этом плане Службы приложений. Чтобы проверить, что сертификат установлен, перейдите к консоли Kudu и отправьте следующую команду PowerShell:

dir cert:\localmachine\root

Чтобы выполнить тестирование, можно создать самозаверяющий сертификат и файл CER со следующей командой PowerShell.

$certificate = New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname "*.internal.contoso.com","*.scm.internal.contoso.com"

$certThumbprint = "cert:\localMachine\my\" + $certificate.Thumbprint
$password = ConvertTo-SecureString -String "CHANGETHISPASSWORD" -Force -AsPlainText

$fileName = "exportedcert.cer"
export-certificate -Cert $certThumbprint -FilePath $fileName -Type CERT