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


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

Примечание.

В этой статье описывается Среда службы приложений версии 3, которая используется с изолированными планами Служба приложений версии 2.

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

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

Приложения, размещенные в Среда службы приложений, поддерживают следующие функции сертификатов, ориентированные на приложения, которые также доступны в мультитенантных Служба приложений. Требования и инструкции для отправки этих сертификатов и управления ими приведены в руководстве Добавление сертификата TLS или SSL в Службе приложений Azure.

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

Ограничения

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

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

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

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

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

Примечание.

Сертификаты частного клиента поддерживаются только из пользовательского кода в приложениях кода Windows. Частные сертификаты клиентов не поддерживаются вне приложения. Это ограничивает использование в таких сценариях, как извлечение образа контейнера приложения из реестра с помощью частного сертификата и TLS-проверка через внешние серверы с использованием частного сертификата.

Выполните следующие действия, чтобы передать сертификат (CER-файл) приложению в среде службы приложений. CER-файл можно экспортировать из сертификата. В конце статьи приведен пример PowerShell, который можно использовать для создания временного самозаверяющего сертификата в целях тестирования:

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

  2. Перейдите к сертификатам в приложении. Выберите Сертификат открытого ключа (.cer). Нажмите Добавить сертификат. Введите имя. Найдите и выберите ваш файл CER. Выберите "Передать".

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

  4. Перейдите к параметрам приложения конфигурации>. Создайте параметр приложения 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
$fileName = "exportedcert.cer"
Export-Certificate -Cert $certThumbprint -FilePath $fileName -Type CERT

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

Если приложение выступает в качестве сервера в модели клиентского сервера, либо за обратным прокси-сервером, либо непосредственно с частным клиентом, и вы используете частный сертификат ЦС, необходимо отправить сертификат сервера (PFX-файл ) с полной цепочкой сертификатов в приложение и привязать сертификат к личному домену. Так как инфраструктура выделена для Среда службы приложений, в хранилище доверия серверов добавляется полная цепочка сертификатов. Необходимо отправить сертификат только один раз, чтобы использовать его с приложениями, которые находятся в том же Среда службы приложений.

Примечание.

Если вы загрузили сертификат до 1. За октябрь 2023 г. потребуется повторно загрузить и повторно привязать сертификат для полной цепочки сертификатов, добавляемой на серверы.

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

Следующие шаги