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


Общие сведения о сертификатах для Облачных служб Azure (классических)

Внимание

Облачные службы (классическая версия) теперь устарела для всех клиентов с 1 сентября 2024 года. Все существующие запущенные развертывания будут остановлены и завершены корпорацией Майкрософт, и данные будут постоянно потеряны начиная с октября 2024 года. Для новых развертываний следует использовать Облачные службы Azure с расширенной поддержкой. Это новая модель развертывания на основе Azure Resource Manager.

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

Сертификаты, используемые в Azure, — это сертификаты x.509 версии 3. Они могут подписывать самозаверяющий или другой доверенный сертификат. Сертификат самозаверяется, когда его создатель подписывает его. Самозаверяемые сертификаты по умолчанию не являются доверенными, но большинство браузеров могут игнорировать эту проблему. Самозаверяющие сертификаты должны использоваться только при разработке и тестировании облачных служб.

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

Примечание.

Облачные службы Azure не принимают зашифрованный сертификат AES256-SHA256.

Что такое сертификаты службы?

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

Сертификаты службы можно передать в Azure с помощью портала Azure или классической модели развертывания. Эти сертификаты связаны с конкретной облачной службой. Файл определения службы назначает их развертыванию.

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

Что такое сертификаты управления?

Сертификаты управления позволяют выполнять проверку подлинности с помощью классической модели развертывания. Многие программы и средства (например, Visual Studio или пакет SDK Azure) будут использовать эти сертификаты для автоматизации настройки и развертывания разных служб Azure. Эти сертификаты не связаны с облачными службами.

Предупреждение

Будьте осторожны! Эти типы сертификатов позволяют каждому, кто прошел проверку подлинности, управлять подпиской, с которой они связаны.

Ограничения

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

Кроме того, сертификаты управления нельзя использовать с подписками поставщик облачных решений (CSP), так как подписки CSP поддерживают только модель развертывания Azure Resource Manager и сертификаты управления используют классическую модель развертывания. Для получения дополнительных сведений о вариантах действий для подписок CSP см. разделы Модель развертывания с помощью Azure Resource Manager и классическая модель развертывания и Общие сведения о проверке подлинности с помощью пакета SDK Azure для .NET.

Создание самозаверяющего сертификата

Можно использовать любое доступное средство для создания самозаверяющего сертификата при условии, что оно соответствует следующим параметрам.

  • Используется сертификат X.509.

  • Содержит открытый ключ.

  • Создано для обмена ключами (PFX-файл).

  • Имя субъекта должно совпадать с именем домена, которое используется для обращения к облачной службе.

    Вы не можете приобрести TLS/SSL-сертификат для домена cloudapp.net (или для любого другого домена, относящегося к Azure), поэтому имя субъекта сертификата должно совпадать с именем личного домена, который используется для доступа к приложению. Например, contoso.net, а не contoso.cloudapp.net.

  • Минимум 2048-разрядное шифрование.

  • Только сертификат службы: клиентский сертификат должен находиться в личном хранилище сертификатов.

Существует два простых способа создания сертификатов в Windows: с помощью служебной программы makecert.exe или службы IIS.

Makecert.exe

Эта служебная программа прекращена и больше не описана здесь. Дополнительные сведения см . в этой статье microsoft Developer Network (MSDN).

PowerShell

$cert = New-SelfSignedCertificate -DnsName yourdomain.cloudapp.net -CertStoreLocation "cert:\LocalMachine\My" -KeyLength 2048 -KeySpec "KeyExchange"
$password = ConvertTo-SecureString -String "your-password" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath ".\my-cert-file.pfx" -Password $password

Примечание.

Если вы хотите использовать сертификат, указав IP-адрес, а не домен, задайте этот IP-адрес в параметре -DnsName.

Если вы хотите использовать этот сертификат на портале управления, экспортируйте его в CER-файл .

Export-Certificate -Type CERT -Cert $cert -FilePath .\my-cert-file.cer

Службы IIS

Существует множество страниц в Интернете, в которых описывается создание сертификатов с помощью IIS, таких как использование самозаверяющего сертификата IIS.

Linux

Краткое руководство. Создание и использование пары открытого ключа SSH для виртуальных машин Linux в Azure описывает создание сертификатов с помощью SSH.

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

Передача сертификата службы на портал Azure.

Передайте на портал Azure сертификат API управления.