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


Служба Microsoft.ApiManagement

Определение ресурсов Bicep

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

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.ApiManagement/service, добавьте следующий Bicep в шаблон.

resource symbolicname 'Microsoft.ApiManagement/service@2024-10-01-preview' = {
  scope: resourceSymbolicName or scope
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {
        clientId: 'string'
        principalId: 'string'
      }
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    additionalLocations: [
      {
        disableGateway: bool
        location: 'string'
        natGatewayState: 'string'
        publicIpAddressId: 'string'
        sku: {
          capacity: int
          name: 'string'
        }
        virtualNetworkConfiguration: {
          subnetResourceId: 'string'
        }
        zones: [
          'string'
        ]
      }
    ]
    apiVersionConstraint: {
      minApiVersion: 'string'
    }
    certificates: [
      {
        certificate: {
          expiry: 'string'
          subject: 'string'
          thumbprint: 'string'
        }
        certificatePassword: 'string'
        encodedCertificate: 'string'
        storeName: 'string'
      }
    ]
    configurationApi: {
      legacyApi: 'string'
    }
    customProperties: {
      {customized property}: 'string'
    }
    developerPortalStatus: 'string'
    disableGateway: bool
    enableClientCertificate: bool
    hostnameConfigurations: [
      {
        certificate: {
          expiry: 'string'
          subject: 'string'
          thumbprint: 'string'
        }
        certificatePassword: 'string'
        certificateSource: 'string'
        certificateStatus: 'string'
        defaultSslBinding: bool
        encodedCertificate: 'string'
        hostName: 'string'
        identityClientId: 'string'
        keyVaultId: 'string'
        negotiateClientCertificate: bool
        type: 'string'
      }
    ]
    legacyPortalStatus: 'string'
    natGatewayState: 'string'
    notificationSenderEmail: 'string'
    privateEndpointConnections: [
      {
        id: 'string'
        name: 'string'
        properties: {
          privateEndpoint: {}
          privateLinkServiceConnectionState: {
            actionsRequired: 'string'
            description: 'string'
            status: 'string'
          }
        }
        type: 'string'
      }
    ]
    publicIpAddressId: 'string'
    publicNetworkAccess: 'string'
    publisherEmail: 'string'
    publisherName: 'string'
    releaseChannel: 'string'
    restore: bool
    virtualNetworkConfiguration: {
      subnetResourceId: 'string'
    }
    virtualNetworkType: 'string'
  }
  sku: {
    capacity: int
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
  zones: [
    'string'
  ]
}

Значения свойств

Microsoft.ApiManagement/service

Имя Описание Ценность
тождество Управляемое удостоверение службы управления API. ApiManagementServiceIdentity (ApiManagementServiceIdentity)
местоположение Расположение ресурса. строка (обязательно)
имя Имя ресурса струна

Ограничения целостности:
Минимальная длина = 1
Максимальная длина = 50
Pattern = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (обязательно)
свойства Свойства службы управления API. ApiManagementServiceProperties (обязательно)
scope Используется при создании ресурса в области, отличной от области развертывания. Задайте для этого свойства символьное имя ресурса, чтобы применить ресурс расширения.
SKU Свойства SKU службы управления API. ApiManagementServiceSkuProperties (обязательно)
Теги Теги ресурсов Словарь имен и значений тегов. См. теги в шаблонах
Зоны Список зон доступности, обозначающих, откуда должен поступать ресурс. строка[]

Дополнительное положение

Имя Описание Ценность
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в этом дополнительном расположении. булевая переменная (bool)
местоположение Имя расположения дополнительного региона среди регионов Центра обработки данных Azure. строка (обязательно)
natGatewayState Свойство можно использовать для включения шлюза NAT для этой службы управления API. "Отключено"
"Включено"
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в расположении. Поддерживается только для SKU класса Premium, развертываемого в виртуальной сети. струна
SKU Свойства SKU службы управления API. ApiManagementServiceSkuProperties (обязательно)
virtualNetworkConfiguration Конфигурация виртуальной сети для расположения. Конфигурация VirtualNetworkConfiguration
Зоны Список зон доступности, обозначающих, откуда должен поступать ресурс. строка[]

ApiManagementServiceBasePropertiesCustomProperties

Имя Описание Ценность

ApiManagementServiceIdentity (ApiManagementServiceIdentity)

Имя Описание Ценность
тип Тип удостоверения, используемого для ресурса. Тип SystemAssigned, UserAssigned включает как неявное созданное удостоверение, так и набор назначенных пользователем удостоверений. Тип "Нет" удаляет все удостоверения из службы. "Нет"
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
ИдентичностиНазначенныеПользователем Список удостоверений пользователей, связанных с ресурсом. Удостоверение пользователя
Ссылки на ключ словаря будут идентификаторами ресурсов ARM в форме:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

Имя Описание Ценность

ApiManagementServiceProperties (Свойства ApiManagementService)

Имя Описание Ценность
дополнительные расположения Дополнительные расположения центров обработки данных службы управления API. Дополнительное перемещение[]
apiVersionConstraint Ограничение версии API уровня управления для службы управления API. ApiVersionConstraint
Сертификаты Список сертификатов, которые необходимо установить в службе управления API. Максимальное число поддерживаемых сертификатов, которые можно установить, равно 10. Конфигурация сертификата[]
configurationApi Конфигурация API конфигурации службы управления API. ConfigurationApi
ПользовательскиеСвойства Настраиваемые свойства службы управления API.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 отключит TLS_RSA_WITH_3DES_EDE_CBC_SHA шифра для всех TLS(1.0, 1.1 и 1.2).
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 можно использовать для отключения только TLS 1.1.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 можно использовать для отключения TLS 1.0 в службе управления API.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 можно использовать для отключения только TLS 1.1 для обмена данными с внутренними серверами.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 можно использовать для отключения TLS 1.0 для обмена данными с внутренними серверами.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 можно использовать для включения протокола HTTP2 в службе управления API.
Не указывая ни одно из этих свойств в операции PATCH, сбросит значения свойств по умолчанию. Для всех параметров, кроме Http2, значение по умолчанию True, если служба была создана до 1 апреля 2018 г. и False в противном случае. Значение по умолчанию параметра Http2 — False.

Вы можете отключить любой из следующих шифров с помощью параметров Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. Например, Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. Значение по умолчанию — true для них.
Примечание. Следующие шифры нельзя отключить, так как они требуются внутренними компонентами платформы: TLS_AES_256_GCM_SHA384,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
ApiManagementServiceBasePropertiesCustomProperties
developerPortalStatus Состояние портала разработчика в этой службе управления API. "Отключено"
"Включено"
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в главном регионе. булевая переменная (bool)
enableClientCertificate Свойство предназначено только для службы SKU потребления. При этом сертификат клиента должен быть представлен по каждому запросу шлюза. Это также позволяет пройти проверку подлинности сертификата в политике шлюза. булевая переменная (bool)
hostnameConfigurations Настраиваемая конфигурация имени узла службы управления API. HostnameConfiguration[]
legacyPortalStatus Состояние устаревшего портала в службе управления API. "Отключено"
"Включено"
natGatewayState Свойство можно использовать для включения шлюза NAT для этой службы управления API. "Отключено"
"Включено"
уведомлениеОтправительЭлектронная почта Адрес электронной почты, с которого будет отправлено уведомление. струна

Ограничения целостности:
Максимальная длина = 100
privateEndpointConnections Список подключений к частной конечной точке этой службы. Обёртка RemotePrivateEndpointConnection[]
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в регионе. Поддерживается только для развертывания SKU разработчика и класса Premium в виртуальной сети. струна
доступ к публичной сети Допускается ли доступ к общедоступной конечной точке для этой службы управления API. Значение является необязательным, но при передаче должно быть "Включено" или "Отключено". Если значение "Отключено", частные конечные точки являются эксклюзивным методом доступа. Значение по умолчанию — "Включено" "Отключено"
"Включено"
publisherEmail Электронная почта издателя. струна

Ограничения целостности:
Максимальная длина = 100 (обязательно)
Имя издателя Имя издателя. струна

Ограничения целостности:
Максимальная длина = 100 (обязательно)
releaseChannel Канал выпуска этой службы управления API. По умолчанию
"Предварительная версия"
"Стабильный"
восстанавливать Отмена удаления службы управления API, если она была удалена ранее обратимо. Если этот флаг указан и задано значение True, все остальные свойства будут игнорироваться. булевая переменная (bool)
virtualNetworkConfiguration Конфигурация виртуальной сети службы управления API. Конфигурация VirtualNetworkConfiguration
virtualNetworkType Тип VPN, в котором необходимо настроить службу управления API. Нет (значение по умолчанию) означает, что служба управления API не является частью какой-либо виртуальной сети, внешняя означает, что развертывание управления API настраивается внутри виртуальной сети с конечной точкой виртуальной сети, имеющей только конечную точку с доступом к Интернету, и внутреннее означает, что развертывание управления API настраивается в виртуальной сети только с конечной точкой управления интрасетью. "Внешний"
"Внутренний"
"Нет"

ApiManagementServiceSkuProperties

Имя Описание Ценность
способность Емкость номера SKU (количество развернутых единиц SKU). Для емкости SKU потребления необходимо указать значение 0. int (обязательно)
имя Имя SKU. "Базовый"
"BasicV2"
"Потребление"
'Разработчик'
"Изолированный"
"Премиум"
"Стандартный"
"StandardV2" (обязательно)

ApimResourceTags

Имя Описание Ценность

ApiVersionConstraint

Имя Описание Ценность
minApiVersion Ограничение вызовов API уровня управления к службе управления API с версией, равной или более новой, чем это значение. струна

АрмИдОберточный Принтер

Имя Описание Ценность

Конфигурация сертификата

Имя Описание Ценность
сертификат Сведения о сертификате. Информация о сертификате
certificatePassword Пароль сертификата. струна
encodedCertificate Сертификат в кодировке Base64. струна
название магазина Расположение хранилища сертификатов System.Security.Cryptography.x509certificates.StoreName. Допустимы только корневой каталог и CertificateAuthority. CertificateAuthority
"Root" (обязательный)

Информация о сертификате

Имя Описание Ценность
истечение Дата окончания срока действия сертификата. Дата соответствует следующему формату: yyyy-MM-ddTHH:mm:ssZ, как указано в стандарте ISO 8601. строка (обязательно)
Тема Тема сертификата. строка (обязательно)
Отпечаток Отпечаток сертификата. строка (обязательно)

ConfigurationApi

Имя Описание Ценность
legacyApi Указывает, следует ли предоставлять устаревший API конфигурации (версии 1) в службе управления API. Значение является необязательным, но должно быть "Включено" или "Отключено". Если параметр "Отключен", устаревший API конфигурации (версия 1) не будет доступен для локальных шлюзов. Значение по умолчанию — "Включено" "Отключено"
"Включено"

HostnameConfiguration (Имя хостаConfiguration)

Имя Описание Ценность
сертификат Сведения о сертификате. Информация о сертификате
certificatePassword Пароль сертификата. струна
certificateSource Источник сертификата. "BuiltIn"
"Custom"
KeyVault
"Managed" (Управляемый)
certificateStatus Состояние сертификата. "Завершено"
"Не удалось"
«В процессе»
defaultSslBinding Укажите значение true, чтобы настроить сертификат, связанный с этим именем узла, в качестве SSL-сертификата по умолчанию. Если клиент не отправляет заголовок SNI, это будет сертификат, который будет оспариваться. Это свойство полезно, если служба включает несколько пользовательских имен узлов, и она должна принять решение о ssl-сертификате по умолчанию. Параметр применяется только к типу имени узла шлюза. булевая переменная (bool)
encodedCertificate Сертификат в кодировке Base64. струна
имя хоста Имя узла для настройки в службе управления API. строка (обязательно)
identityClientId Идентификатор клиента управляемого удостоверения, назначаемого системой или пользователем, создаваемый Azure AD, имеет доступ GET к ключуVault, содержащей SSL-сертификат. струна
keyVaultId URL-адрес секрета KeyVault, содержащего ssl-сертификат. Если указан абсолютный URL-адрес, содержащий версию, автоматическое обновление SSL-сертификата не будет работать. Для этого требуется, чтобы служба управления API была настроена с помощью aka.ms/apimmsi. Секрет должен быть типом application/x-pkcs12 струна
negotiateClientCertificate Укажите значение true, чтобы всегда согласовывать сертификат клиента в имени узла. Значение по умолчанию равно false. булевая переменная (bool)
тип Тип имени узла. ConfigurationApi
DeveloperPortal
"Управление"
"Портал"
"Прокси- сервер"
Scm (обязательно)

PrivateEndpointConnectionWrapperProperties

Имя Описание Ценность
privateEndpoint Ресурс частной конечной точки. АрмИдОберточный Принтер
privateLinkServiceConnectionState Коллекция сведений о состоянии подключения между потребителем службы и поставщиком. PrivateLinkServiceConnectionState (обязательно)

PrivateLinkServiceConnectionState (Состояние PrivateLinkServiceConnectionState)

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

Обёртка RemotePrivateEndpointConnectionWrapper

Имя Описание Ценность
идентификатор Идентификатор ресурса подключения к частной конечной точке струна
имя Имя подключения к частной конечной точке струна
свойства Свойства ресурса. PrivateEndpointConnectionWrapperProperties
тип Тип ресурса подключения к частной конечной точке струна

Свойства UserIdentity

Имя Описание Ценность
clientId Идентификатор клиента назначаемого пользователем удостоверения. струна
идентификатор принципала Идентификатор субъекта назначаемого пользователем удостоверения. струна

Конфигурация VirtualNetworkConfiguration

Имя Описание Ценность
subnetResourceId Полный идентификатор ресурса подсети в виртуальной сети для развертывания службы управления API. струна

Ограничения целостности:
Шаблон = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

Примеры использования

Примеры быстрого запуска Azure

Следующие шаблоны быстрого запуска Azure содержат примеры Bicep для развертывания этого типа ресурса.

Bicep-файл Описание
Шлюз приложений с внутренним управлением API и веб-приложения Шлюз приложений маршрутизации трафика Интернета в экземпляр управления API виртуальной сети (внутренний режим), который обслуживает веб-API, размещенный в веб-приложении Azure.
Создание экземпляра управления API уровня Premium с несколькими уровнями В этом шаблоне показано, как создать экземпляр службы управления API с дополнительными расположениями. Основное расположение совпадает с расположением группы ресурсов. Для дополнительных расположений шаблон отображает NorthCentralUs и восточную часть США2. Основное расположение должно отличаться от дополнительных расположений.
Создание экземпляра управления API с удостоверением MSI Этот шаблон создает экземпляр службы "Управление API Azure" с удостоверением MSI
создание экземпляра службы управления API с помощью шаблона Этот шаблон создает экземпляр службы "Управление API Azure" для разработчика
Создание службы управления API с частной конечной точкой Этот шаблон создаст службу управления API, виртуальную сеть и частную конечную точку, предоставляющую службе управления API виртуальную сеть.
Создание службы управления API с помощью SSL из KeyVault Этот шаблон развертывает службу управления API, настроенную с удостоверением, назначенным пользователем. Он использует это удостоверение для получения SSL-сертификата из KeyVault и сохраняет его обновление, проверяя каждые 4 часа.
создание управления API в внутренней виртуальной сети с шлюза приложений В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" в частной сети, защищенной шлюзом приложений Azure.
развертывание управления API во внешней виртуальной сети с помощью общедоступных IP- В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" на уровне "Премиум" в подсети виртуальной сети во внешнем режиме и настроить рекомендуемые правила NSG в подсети. Экземпляр развертывается в двух зонах доступности. Шаблон также настраивает общедоступный IP-адрес из подписки.
развертывание управления API в внутренней виртуальной сети с помощью общедоступных IP- В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" на уровне "Премиум" в подсети виртуальной сети в внутреннем режиме и настроить рекомендуемые правила NSG в подсети. Экземпляр развертывается в двух зонах доступности. Шаблон также настраивает общедоступный IP-адрес из подписки.
развертывание управления API в зонах доступности Этот шаблон создает экземпляр службы "Премиум" службы "Управление API Azure" и развертывается в зоне доступности.
развернуть управление API с помощью внешнего кэша Azure для Redis В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" на уровне потребления с внешним экземпляром кэша Azure для Redis в качестве внешнего кэша управления API.
Front Door Standard/Premium с источником управления API Этот шаблон создает front Door Premium и экземпляр службы управления API, а также использует группу безопасности сети и глобальную политику управления API для проверки того, что трафик прошел через источник Front Door.

Определение ресурса шаблона ARM

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

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.ApiManagement/service, добавьте следующий код JSON в шаблон.

{
  "type": "Microsoft.ApiManagement/service",
  "apiVersion": "2024-10-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
        "clientId": "string",
        "principalId": "string"
      }
    }
  },
  "location": "string",
  "properties": {
    "additionalLocations": [
      {
        "disableGateway": "bool",
        "location": "string",
        "natGatewayState": "string",
        "publicIpAddressId": "string",
        "sku": {
          "capacity": "int",
          "name": "string"
        },
        "virtualNetworkConfiguration": {
          "subnetResourceId": "string"
        },
        "zones": [ "string" ]
      }
    ],
    "apiVersionConstraint": {
      "minApiVersion": "string"
    },
    "certificates": [
      {
        "certificate": {
          "expiry": "string",
          "subject": "string",
          "thumbprint": "string"
        },
        "certificatePassword": "string",
        "encodedCertificate": "string",
        "storeName": "string"
      }
    ],
    "configurationApi": {
      "legacyApi": "string"
    },
    "customProperties": {
      "{customized property}": "string"
    },
    "developerPortalStatus": "string",
    "disableGateway": "bool",
    "enableClientCertificate": "bool",
    "hostnameConfigurations": [
      {
        "certificate": {
          "expiry": "string",
          "subject": "string",
          "thumbprint": "string"
        },
        "certificatePassword": "string",
        "certificateSource": "string",
        "certificateStatus": "string",
        "defaultSslBinding": "bool",
        "encodedCertificate": "string",
        "hostName": "string",
        "identityClientId": "string",
        "keyVaultId": "string",
        "negotiateClientCertificate": "bool",
        "type": "string"
      }
    ],
    "legacyPortalStatus": "string",
    "natGatewayState": "string",
    "notificationSenderEmail": "string",
    "privateEndpointConnections": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "privateEndpoint": {
          },
          "privateLinkServiceConnectionState": {
            "actionsRequired": "string",
            "description": "string",
            "status": "string"
          }
        },
        "type": "string"
      }
    ],
    "publicIpAddressId": "string",
    "publicNetworkAccess": "string",
    "publisherEmail": "string",
    "publisherName": "string",
    "releaseChannel": "string",
    "restore": "bool",
    "virtualNetworkConfiguration": {
      "subnetResourceId": "string"
    },
    "virtualNetworkType": "string"
  },
  "sku": {
    "capacity": "int",
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  },
  "zones": [ "string" ]
}

Значения свойств

Microsoft.ApiManagement/service

Имя Описание Ценность
apiVersion Версия API «2024-10-01-превью»
тождество Управляемое удостоверение службы управления API. ApiManagementServiceIdentity (ApiManagementServiceIdentity)
местоположение Расположение ресурса. строка (обязательно)
имя Имя ресурса струна

Ограничения целостности:
Минимальная длина = 1
Максимальная длина = 50
Pattern = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (обязательно)
свойства Свойства службы управления API. ApiManagementServiceProperties (обязательно)
SKU Свойства SKU службы управления API. ApiManagementServiceSkuProperties (обязательно)
Теги Теги ресурсов Словарь имен и значений тегов. См. теги в шаблонах
тип Тип ресурса "Microsoft.ApiManagement/service"
Зоны Список зон доступности, обозначающих, откуда должен поступать ресурс. строка[]

Дополнительное положение

Имя Описание Ценность
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в этом дополнительном расположении. булевая переменная (bool)
местоположение Имя расположения дополнительного региона среди регионов Центра обработки данных Azure. строка (обязательно)
natGatewayState Свойство можно использовать для включения шлюза NAT для этой службы управления API. "Отключено"
"Включено"
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в расположении. Поддерживается только для SKU класса Premium, развертываемого в виртуальной сети. струна
SKU Свойства SKU службы управления API. ApiManagementServiceSkuProperties (обязательно)
virtualNetworkConfiguration Конфигурация виртуальной сети для расположения. Конфигурация VirtualNetworkConfiguration
Зоны Список зон доступности, обозначающих, откуда должен поступать ресурс. строка[]

ApiManagementServiceBasePropertiesCustomProperties

Имя Описание Ценность

ApiManagementServiceIdentity (ApiManagementServiceIdentity)

Имя Описание Ценность
тип Тип удостоверения, используемого для ресурса. Тип SystemAssigned, UserAssigned включает как неявное созданное удостоверение, так и набор назначенных пользователем удостоверений. Тип "Нет" удаляет все удостоверения из службы. "Нет"
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
ИдентичностиНазначенныеПользователем Список удостоверений пользователей, связанных с ресурсом. Удостоверение пользователя
Ссылки на ключ словаря будут идентификаторами ресурсов ARM в форме:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

Имя Описание Ценность

ApiManagementServiceProperties (Свойства ApiManagementService)

Имя Описание Ценность
дополнительные расположения Дополнительные расположения центров обработки данных службы управления API. Дополнительное перемещение[]
apiVersionConstraint Ограничение версии API уровня управления для службы управления API. ApiVersionConstraint
Сертификаты Список сертификатов, которые необходимо установить в службе управления API. Максимальное число поддерживаемых сертификатов, которые можно установить, равно 10. Конфигурация сертификата[]
configurationApi Конфигурация API конфигурации службы управления API. ConfigurationApi
ПользовательскиеСвойства Настраиваемые свойства службы управления API.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 отключит TLS_RSA_WITH_3DES_EDE_CBC_SHA шифра для всех TLS(1.0, 1.1 и 1.2).
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 можно использовать для отключения только TLS 1.1.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 можно использовать для отключения TLS 1.0 в службе управления API.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 можно использовать для отключения только TLS 1.1 для обмена данными с внутренними серверами.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 можно использовать для отключения TLS 1.0 для обмена данными с внутренними серверами.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 можно использовать для включения протокола HTTP2 в службе управления API.
Не указывая ни одно из этих свойств в операции PATCH, сбросит значения свойств по умолчанию. Для всех параметров, кроме Http2, значение по умолчанию True, если служба была создана до 1 апреля 2018 г. и False в противном случае. Значение по умолчанию параметра Http2 — False.

Вы можете отключить любой из следующих шифров с помощью параметров Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. Например, Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. Значение по умолчанию — true для них.
Примечание. Следующие шифры нельзя отключить, так как они требуются внутренними компонентами платформы: TLS_AES_256_GCM_SHA384,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
ApiManagementServiceBasePropertiesCustomProperties
developerPortalStatus Состояние портала разработчика в этой службе управления API. "Отключено"
"Включено"
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в главном регионе. булевая переменная (bool)
enableClientCertificate Свойство предназначено только для службы SKU потребления. При этом сертификат клиента должен быть представлен по каждому запросу шлюза. Это также позволяет пройти проверку подлинности сертификата в политике шлюза. булевая переменная (bool)
hostnameConfigurations Настраиваемая конфигурация имени узла службы управления API. HostnameConfiguration[]
legacyPortalStatus Состояние устаревшего портала в службе управления API. "Отключено"
"Включено"
natGatewayState Свойство можно использовать для включения шлюза NAT для этой службы управления API. "Отключено"
"Включено"
уведомлениеОтправительЭлектронная почта Адрес электронной почты, с которого будет отправлено уведомление. струна

Ограничения целостности:
Максимальная длина = 100
privateEndpointConnections Список подключений к частной конечной точке этой службы. Обёртка RemotePrivateEndpointConnection[]
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в регионе. Поддерживается только для развертывания SKU разработчика и класса Premium в виртуальной сети. струна
доступ к публичной сети Допускается ли доступ к общедоступной конечной точке для этой службы управления API. Значение является необязательным, но при передаче должно быть "Включено" или "Отключено". Если значение "Отключено", частные конечные точки являются эксклюзивным методом доступа. Значение по умолчанию — "Включено" "Отключено"
"Включено"
publisherEmail Электронная почта издателя. струна

Ограничения целостности:
Максимальная длина = 100 (обязательно)
Имя издателя Имя издателя. струна

Ограничения целостности:
Максимальная длина = 100 (обязательно)
releaseChannel Канал выпуска этой службы управления API. По умолчанию
"Предварительная версия"
"Стабильный"
восстанавливать Отмена удаления службы управления API, если она была удалена ранее обратимо. Если этот флаг указан и задано значение True, все остальные свойства будут игнорироваться. булевая переменная (bool)
virtualNetworkConfiguration Конфигурация виртуальной сети службы управления API. Конфигурация VirtualNetworkConfiguration
virtualNetworkType Тип VPN, в котором необходимо настроить службу управления API. Нет (значение по умолчанию) означает, что служба управления API не является частью какой-либо виртуальной сети, внешняя означает, что развертывание управления API настраивается внутри виртуальной сети с конечной точкой виртуальной сети, имеющей только конечную точку с доступом к Интернету, и внутреннее означает, что развертывание управления API настраивается в виртуальной сети только с конечной точкой управления интрасетью. "Внешний"
"Внутренний"
"Нет"

ApiManagementServiceSkuProperties

Имя Описание Ценность
способность Емкость номера SKU (количество развернутых единиц SKU). Для емкости SKU потребления необходимо указать значение 0. int (обязательно)
имя Имя SKU. "Базовый"
"BasicV2"
"Потребление"
'Разработчик'
"Изолированный"
"Премиум"
"Стандартный"
"StandardV2" (обязательно)

ApimResourceTags

Имя Описание Ценность

ApiVersionConstraint

Имя Описание Ценность
minApiVersion Ограничение вызовов API уровня управления к службе управления API с версией, равной или более новой, чем это значение. струна

АрмИдОберточный Принтер

Имя Описание Ценность

Конфигурация сертификата

Имя Описание Ценность
сертификат Сведения о сертификате. Информация о сертификате
certificatePassword Пароль сертификата. струна
encodedCertificate Сертификат в кодировке Base64. струна
название магазина Расположение хранилища сертификатов System.Security.Cryptography.x509certificates.StoreName. Допустимы только корневой каталог и CertificateAuthority. CertificateAuthority
"Root" (обязательный)

Информация о сертификате

Имя Описание Ценность
истечение Дата окончания срока действия сертификата. Дата соответствует следующему формату: yyyy-MM-ddTHH:mm:ssZ, как указано в стандарте ISO 8601. строка (обязательно)
Тема Тема сертификата. строка (обязательно)
Отпечаток Отпечаток сертификата. строка (обязательно)

ConfigurationApi

Имя Описание Ценность
legacyApi Указывает, следует ли предоставлять устаревший API конфигурации (версии 1) в службе управления API. Значение является необязательным, но должно быть "Включено" или "Отключено". Если параметр "Отключен", устаревший API конфигурации (версия 1) не будет доступен для локальных шлюзов. Значение по умолчанию — "Включено" "Отключено"
"Включено"

HostnameConfiguration (Имя хостаConfiguration)

Имя Описание Ценность
сертификат Сведения о сертификате. Информация о сертификате
certificatePassword Пароль сертификата. струна
certificateSource Источник сертификата. "BuiltIn"
"Custom"
KeyVault
"Managed" (Управляемый)
certificateStatus Состояние сертификата. "Завершено"
"Не удалось"
«В процессе»
defaultSslBinding Укажите значение true, чтобы настроить сертификат, связанный с этим именем узла, в качестве SSL-сертификата по умолчанию. Если клиент не отправляет заголовок SNI, это будет сертификат, который будет оспариваться. Это свойство полезно, если служба включает несколько пользовательских имен узлов, и она должна принять решение о ssl-сертификате по умолчанию. Параметр применяется только к типу имени узла шлюза. булевая переменная (bool)
encodedCertificate Сертификат в кодировке Base64. струна
имя хоста Имя узла для настройки в службе управления API. строка (обязательно)
identityClientId Идентификатор клиента управляемого удостоверения, назначаемого системой или пользователем, создаваемый Azure AD, имеет доступ GET к ключуVault, содержащей SSL-сертификат. струна
keyVaultId URL-адрес секрета KeyVault, содержащего ssl-сертификат. Если указан абсолютный URL-адрес, содержащий версию, автоматическое обновление SSL-сертификата не будет работать. Для этого требуется, чтобы служба управления API была настроена с помощью aka.ms/apimmsi. Секрет должен быть типом application/x-pkcs12 струна
negotiateClientCertificate Укажите значение true, чтобы всегда согласовывать сертификат клиента в имени узла. Значение по умолчанию равно false. булевая переменная (bool)
тип Тип имени узла. ConfigurationApi
DeveloperPortal
"Управление"
"Портал"
"Прокси- сервер"
Scm (обязательно)

PrivateEndpointConnectionWrapperProperties

Имя Описание Ценность
privateEndpoint Ресурс частной конечной точки. АрмИдОберточный Принтер
privateLinkServiceConnectionState Коллекция сведений о состоянии подключения между потребителем службы и поставщиком. PrivateLinkServiceConnectionState (обязательно)

PrivateLinkServiceConnectionState (Состояние PrivateLinkServiceConnectionState)

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

Обёртка RemotePrivateEndpointConnectionWrapper

Имя Описание Ценность
идентификатор Идентификатор ресурса подключения к частной конечной точке струна
имя Имя подключения к частной конечной точке струна
свойства Свойства ресурса. PrivateEndpointConnectionWrapperProperties
тип Тип ресурса подключения к частной конечной точке струна

Свойства UserIdentity

Имя Описание Ценность
clientId Идентификатор клиента назначаемого пользователем удостоверения. струна
идентификатор принципала Идентификатор субъекта назначаемого пользователем удостоверения. струна

Конфигурация VirtualNetworkConfiguration

Имя Описание Ценность
subnetResourceId Полный идентификатор ресурса подсети в виртуальной сети для развертывания службы управления API. струна

Ограничения целостности:
Шаблон = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

Примеры использования

Шаблоны быстрого запуска Azure

Следующие шаблоны быстрого запуска Azure развернуть этот тип ресурса.

Шаблон Описание
Шлюз приложений с внутренним управлением API и веб-приложения

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

развертывание в Azure
В этом шаблоне показано, как создать экземпляр службы управления API с дополнительными расположениями. Основное расположение совпадает с расположением группы ресурсов. Для дополнительных расположений шаблон отображает NorthCentralUs и восточную часть США2. Основное расположение должно отличаться от дополнительных расположений.
Создание экземпляра службы управления API и всех вложенных ресурсов с помощью шаблона

развертывание в Azure
В этом шаблоне показано, как создать службу управления API и настроить вложенные сущности
Создание экземпляра управления API с удостоверением MSI

развертывание в Azure
Этот шаблон создает экземпляр службы "Управление API Azure" с удостоверением MSI
создание экземпляра службы управления API с помощью шаблона

развертывание в Azure
Этот шаблон создает экземпляр службы "Управление API Azure" для разработчика
Создание экземпляра службы управления API с пользовательскими именами узлов

развертывание в Azure
В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" с настраиваемым именем узла для портала и несколькими пользовательскими именами узлов для прокси-сервера
Создание службы управления API с частной конечной точкой

развертывание в Azure
Этот шаблон создаст службу управления API, виртуальную сеть и частную конечную точку, предоставляющую службе управления API виртуальную сеть.
Создание службы управления API с помощью SSL из KeyVault

развертывание в Azure
Этот шаблон развертывает службу управления API, настроенную с удостоверением, назначенным пользователем. Он использует это удостоверение для получения SSL-сертификата из KeyVault и сохраняет его обновление, проверяя каждые 4 часа.
Создание и мониторинг экземпляра службы управления API

развертывание в Azure
Этот шаблон создает экземпляр службы управления API Azure и рабочей области Log Analytics и настраивает мониторинг для службы управления API с помощью Log Analytics
создание управления API в внутренней виртуальной сети с шлюза приложений

развертывание в Azure
В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" в частной сети, защищенной шлюзом приложений Azure.
Создание управления API с помощью пользовательского ssl-сервера прокси с помощью KeyVault

развертывание в Azure
В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" и настроить пользовательское имя узла для прокси-сервера с ssl-сертификатом из keyvault.
создание Azure Front Door перед управления API Azure

развертывание в Azure
В этом примере показано, как использовать Azure Front Door в качестве глобальной подсистемы балансировки нагрузки перед управлением API Azure.
развертывание управления API во внешней виртуальной сети с помощью общедоступных IP-

развертывание в Azure
В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" на уровне "Премиум" в подсети виртуальной сети во внешнем режиме и настроить рекомендуемые правила NSG в подсети. Экземпляр развертывается в двух зонах доступности. Шаблон также настраивает общедоступный IP-адрес из подписки.
развертывание управления API в внутренней виртуальной сети с помощью общедоступных IP-

развертывание в Azure
В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" на уровне "Премиум" в подсети виртуальной сети в внутреннем режиме и настроить рекомендуемые правила NSG в подсети. Экземпляр развертывается в двух зонах доступности. Шаблон также настраивает общедоступный IP-адрес из подписки.
развертывание управления API в зонах доступности

развертывание в Azure
Этот шаблон создает экземпляр службы "Премиум" службы "Управление API Azure" и развертывается в зоне доступности.
развернуть управление API с помощью внешнего кэша Azure для Redis

развертывание в Azure
В этом шаблоне показано, как создать экземпляр службы "Управление API Azure" на уровне потребления с внешним экземпляром кэша Azure для Redis в качестве внешнего кэша управления API.
Front Door Standard/Premium с источником управления API

развертывание в Azure
Этот шаблон создает front Door Premium и экземпляр службы управления API, а также использует группу безопасности сети и глобальную политику управления API для проверки того, что трафик прошел через источник Front Door.

Определение ресурса Terraform (поставщик AzAPI)

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

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.ApiManagement/service, добавьте следующий объект Terraform в шаблон.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ApiManagement/service@2024-10-01-preview"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      additionalLocations = [
        {
          disableGateway = bool
          location = "string"
          natGatewayState = "string"
          publicIpAddressId = "string"
          sku = {
            capacity = int
            name = "string"
          }
          virtualNetworkConfiguration = {
            subnetResourceId = "string"
          }
          zones = [
            "string"
          ]
        }
      ]
      apiVersionConstraint = {
        minApiVersion = "string"
      }
      certificates = [
        {
          certificate = {
            expiry = "string"
            subject = "string"
            thumbprint = "string"
          }
          certificatePassword = "string"
          encodedCertificate = "string"
          storeName = "string"
        }
      ]
      configurationApi = {
        legacyApi = "string"
      }
      customProperties = {
        {customized property} = "string"
      }
      developerPortalStatus = "string"
      disableGateway = bool
      enableClientCertificate = bool
      hostnameConfigurations = [
        {
          certificate = {
            expiry = "string"
            subject = "string"
            thumbprint = "string"
          }
          certificatePassword = "string"
          certificateSource = "string"
          certificateStatus = "string"
          defaultSslBinding = bool
          encodedCertificate = "string"
          hostName = "string"
          identityClientId = "string"
          keyVaultId = "string"
          negotiateClientCertificate = bool
          type = "string"
        }
      ]
      legacyPortalStatus = "string"
      natGatewayState = "string"
      notificationSenderEmail = "string"
      privateEndpointConnections = [
        {
          id = "string"
          name = "string"
          properties = {
            privateEndpoint = {
            }
            privateLinkServiceConnectionState = {
              actionsRequired = "string"
              description = "string"
              status = "string"
            }
          }
          type = "string"
        }
      ]
      publicIpAddressId = "string"
      publicNetworkAccess = "string"
      publisherEmail = "string"
      publisherName = "string"
      releaseChannel = "string"
      restore = bool
      virtualNetworkConfiguration = {
        subnetResourceId = "string"
      }
      virtualNetworkType = "string"
    }
    sku = {
      capacity = int
      name = "string"
    }
    zones = [
      "string"
    ]
  }
}

Значения свойств

Microsoft.ApiManagement/service

Имя Описание Ценность
тождество Управляемое удостоверение службы управления API. ApiManagementServiceIdentity (ApiManagementServiceIdentity)
местоположение Расположение ресурса. строка (обязательно)
имя Имя ресурса струна

Ограничения целостности:
Минимальная длина = 1
Максимальная длина = 50
Pattern = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (обязательно)
parent_id Идентификатор ресурса для применения этого ресурса расширения. строка (обязательно)
свойства Свойства службы управления API. ApiManagementServiceProperties (обязательно)
SKU Свойства SKU службы управления API. ApiManagementServiceSkuProperties (обязательно)
Теги Теги ресурсов Словарь имен и значений тегов.
тип Тип ресурса "Microsoft.ApiManagement/service@2024-10-01-preview"
Зоны Список зон доступности, обозначающих, откуда должен поступать ресурс. строка[]

Дополнительное положение

Имя Описание Ценность
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в этом дополнительном расположении. булевая переменная (bool)
местоположение Имя расположения дополнительного региона среди регионов Центра обработки данных Azure. строка (обязательно)
natGatewayState Свойство можно использовать для включения шлюза NAT для этой службы управления API. "Отключено"
"Включено"
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в расположении. Поддерживается только для SKU класса Premium, развертываемого в виртуальной сети. струна
SKU Свойства SKU службы управления API. ApiManagementServiceSkuProperties (обязательно)
virtualNetworkConfiguration Конфигурация виртуальной сети для расположения. Конфигурация VirtualNetworkConfiguration
Зоны Список зон доступности, обозначающих, откуда должен поступать ресурс. строка[]

ApiManagementServiceBasePropertiesCustomProperties

Имя Описание Ценность

ApiManagementServiceIdentity (ApiManagementServiceIdentity)

Имя Описание Ценность
тип Тип удостоверения, используемого для ресурса. Тип SystemAssigned, UserAssigned включает как неявное созданное удостоверение, так и набор назначенных пользователем удостоверений. Тип "Нет" удаляет все удостоверения из службы. "Нет"
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
ИдентичностиНазначенныеПользователем Список удостоверений пользователей, связанных с ресурсом. Удостоверение пользователя
Ссылки на ключ словаря будут идентификаторами ресурсов ARM в форме:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

Имя Описание Ценность

ApiManagementServiceProperties (Свойства ApiManagementService)

Имя Описание Ценность
дополнительные расположения Дополнительные расположения центров обработки данных службы управления API. Дополнительное перемещение[]
apiVersionConstraint Ограничение версии API уровня управления для службы управления API. ApiVersionConstraint
Сертификаты Список сертификатов, которые необходимо установить в службе управления API. Максимальное число поддерживаемых сертификатов, которые можно установить, равно 10. Конфигурация сертификата[]
configurationApi Конфигурация API конфигурации службы управления API. ConfigurationApi
ПользовательскиеСвойства Настраиваемые свойства службы управления API.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 отключит TLS_RSA_WITH_3DES_EDE_CBC_SHA шифра для всех TLS(1.0, 1.1 и 1.2).
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 можно использовать для отключения только TLS 1.1.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 можно использовать для отключения TLS 1.0 в службе управления API.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 можно использовать для отключения только TLS 1.1 для обмена данными с внутренними серверами.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 можно использовать для отключения TLS 1.0 для обмена данными с внутренними серверами.
Параметр Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 можно использовать для включения протокола HTTP2 в службе управления API.
Не указывая ни одно из этих свойств в операции PATCH, сбросит значения свойств по умолчанию. Для всех параметров, кроме Http2, значение по умолчанию True, если служба была создана до 1 апреля 2018 г. и False в противном случае. Значение по умолчанию параметра Http2 — False.

Вы можете отключить любой из следующих шифров с помощью параметров Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. Например, Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. Значение по умолчанию — true для них.
Примечание. Следующие шифры нельзя отключить, так как они требуются внутренними компонентами платформы: TLS_AES_256_GCM_SHA384,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
ApiManagementServiceBasePropertiesCustomProperties
developerPortalStatus Состояние портала разработчика в этой службе управления API. "Отключено"
"Включено"
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в главном регионе. булевая переменная (bool)
enableClientCertificate Свойство предназначено только для службы SKU потребления. При этом сертификат клиента должен быть представлен по каждому запросу шлюза. Это также позволяет пройти проверку подлинности сертификата в политике шлюза. булевая переменная (bool)
hostnameConfigurations Настраиваемая конфигурация имени узла службы управления API. HostnameConfiguration[]
legacyPortalStatus Состояние устаревшего портала в службе управления API. "Отключено"
"Включено"
natGatewayState Свойство можно использовать для включения шлюза NAT для этой службы управления API. "Отключено"
"Включено"
уведомлениеОтправительЭлектронная почта Адрес электронной почты, с которого будет отправлено уведомление. струна

Ограничения целостности:
Максимальная длина = 100
privateEndpointConnections Список подключений к частной конечной точке этой службы. Обёртка RemotePrivateEndpointConnection[]
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в регионе. Поддерживается только для развертывания SKU разработчика и класса Premium в виртуальной сети. струна
доступ к публичной сети Допускается ли доступ к общедоступной конечной точке для этой службы управления API. Значение является необязательным, но при передаче должно быть "Включено" или "Отключено". Если значение "Отключено", частные конечные точки являются эксклюзивным методом доступа. Значение по умолчанию — "Включено" "Отключено"
"Включено"
publisherEmail Электронная почта издателя. струна

Ограничения целостности:
Максимальная длина = 100 (обязательно)
Имя издателя Имя издателя. струна

Ограничения целостности:
Максимальная длина = 100 (обязательно)
releaseChannel Канал выпуска этой службы управления API. По умолчанию
"Предварительная версия"
"Стабильный"
восстанавливать Отмена удаления службы управления API, если она была удалена ранее обратимо. Если этот флаг указан и задано значение True, все остальные свойства будут игнорироваться. булевая переменная (bool)
virtualNetworkConfiguration Конфигурация виртуальной сети службы управления API. Конфигурация VirtualNetworkConfiguration
virtualNetworkType Тип VPN, в котором необходимо настроить службу управления API. Нет (значение по умолчанию) означает, что служба управления API не является частью какой-либо виртуальной сети, внешняя означает, что развертывание управления API настраивается внутри виртуальной сети с конечной точкой виртуальной сети, имеющей только конечную точку с доступом к Интернету, и внутреннее означает, что развертывание управления API настраивается в виртуальной сети только с конечной точкой управления интрасетью. "Внешний"
"Внутренний"
"Нет"

ApiManagementServiceSkuProperties

Имя Описание Ценность
способность Емкость номера SKU (количество развернутых единиц SKU). Для емкости SKU потребления необходимо указать значение 0. int (обязательно)
имя Имя SKU. "Базовый"
"BasicV2"
"Потребление"
'Разработчик'
"Изолированный"
"Премиум"
"Стандартный"
"StandardV2" (обязательно)

ApimResourceTags

Имя Описание Ценность

ApiVersionConstraint

Имя Описание Ценность
minApiVersion Ограничение вызовов API уровня управления к службе управления API с версией, равной или более новой, чем это значение. струна

АрмИдОберточный Принтер

Имя Описание Ценность

Конфигурация сертификата

Имя Описание Ценность
сертификат Сведения о сертификате. Информация о сертификате
certificatePassword Пароль сертификата. струна
encodedCertificate Сертификат в кодировке Base64. струна
название магазина Расположение хранилища сертификатов System.Security.Cryptography.x509certificates.StoreName. Допустимы только корневой каталог и CertificateAuthority. CertificateAuthority
"Root" (обязательный)

Информация о сертификате

Имя Описание Ценность
истечение Дата окончания срока действия сертификата. Дата соответствует следующему формату: yyyy-MM-ddTHH:mm:ssZ, как указано в стандарте ISO 8601. строка (обязательно)
Тема Тема сертификата. строка (обязательно)
Отпечаток Отпечаток сертификата. строка (обязательно)

ConfigurationApi

Имя Описание Ценность
legacyApi Указывает, следует ли предоставлять устаревший API конфигурации (версии 1) в службе управления API. Значение является необязательным, но должно быть "Включено" или "Отключено". Если параметр "Отключен", устаревший API конфигурации (версия 1) не будет доступен для локальных шлюзов. Значение по умолчанию — "Включено" "Отключено"
"Включено"

HostnameConfiguration (Имя хостаConfiguration)

Имя Описание Ценность
сертификат Сведения о сертификате. Информация о сертификате
certificatePassword Пароль сертификата. струна
certificateSource Источник сертификата. "BuiltIn"
"Custom"
KeyVault
"Managed" (Управляемый)
certificateStatus Состояние сертификата. "Завершено"
"Не удалось"
«В процессе»
defaultSslBinding Укажите значение true, чтобы настроить сертификат, связанный с этим именем узла, в качестве SSL-сертификата по умолчанию. Если клиент не отправляет заголовок SNI, это будет сертификат, который будет оспариваться. Это свойство полезно, если служба включает несколько пользовательских имен узлов, и она должна принять решение о ssl-сертификате по умолчанию. Параметр применяется только к типу имени узла шлюза. булевая переменная (bool)
encodedCertificate Сертификат в кодировке Base64. струна
имя хоста Имя узла для настройки в службе управления API. строка (обязательно)
identityClientId Идентификатор клиента управляемого удостоверения, назначаемого системой или пользователем, создаваемый Azure AD, имеет доступ GET к ключуVault, содержащей SSL-сертификат. струна
keyVaultId URL-адрес секрета KeyVault, содержащего ssl-сертификат. Если указан абсолютный URL-адрес, содержащий версию, автоматическое обновление SSL-сертификата не будет работать. Для этого требуется, чтобы служба управления API была настроена с помощью aka.ms/apimmsi. Секрет должен быть типом application/x-pkcs12 струна
negotiateClientCertificate Укажите значение true, чтобы всегда согласовывать сертификат клиента в имени узла. Значение по умолчанию равно false. булевая переменная (bool)
тип Тип имени узла. ConfigurationApi
DeveloperPortal
"Управление"
"Портал"
"Прокси- сервер"
Scm (обязательно)

PrivateEndpointConnectionWrapperProperties

Имя Описание Ценность
privateEndpoint Ресурс частной конечной точки. АрмИдОберточный Принтер
privateLinkServiceConnectionState Коллекция сведений о состоянии подключения между потребителем службы и поставщиком. PrivateLinkServiceConnectionState (обязательно)

PrivateLinkServiceConnectionState (Состояние PrivateLinkServiceConnectionState)

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

Обёртка RemotePrivateEndpointConnectionWrapper

Имя Описание Ценность
идентификатор Идентификатор ресурса подключения к частной конечной точке струна
имя Имя подключения к частной конечной точке струна
свойства Свойства ресурса. PrivateEndpointConnectionWrapperProperties
тип Тип ресурса подключения к частной конечной точке струна

Свойства UserIdentity

Имя Описание Ценность
clientId Идентификатор клиента назначаемого пользователем удостоверения. струна
идентификатор принципала Идентификатор субъекта назначаемого пользователем удостоверения. струна

Конфигурация VirtualNetworkConfiguration

Имя Описание Ценность
subnetResourceId Полный идентификатор ресурса подсети в виртуальной сети для развертывания службы управления API. струна

Ограничения целостности:
Шаблон = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

Примеры использования

Примеры Terraform

Простой пример развертывания службы управления API.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "service" {
  type      = "Microsoft.ApiManagement/service@2021-08-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      certificates = [
      ]
      customProperties = {
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30"                      = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10"                      = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11"                      = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA" = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA"   = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA"   = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA"         = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256"      = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_GCM_SHA256"      = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_256_CBC_SHA"         = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_256_CBC_SHA256"      = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_256_GCM_SHA384"      = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168"                         = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30"                              = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10"                              = "false"
        "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11"                              = "false"
      }
      disableGateway      = false
      publicNetworkAccess = "Enabled"
      publisherEmail      = "pub1@email.com"
      publisherName       = "pub1"
      virtualNetworkType  = "None"
    }
    sku = {
      capacity = 1
      name     = "Developer"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
  timeouts {
    create = "180m"
    update = "180m"
    delete = "180m"
  }
}

Проверенные модули Azure

Следующие проверенные модули Azure можно использовать для развертывания этого типа ресурсов.

Модуль Описание
службы управления API Модуль ресурсов AVM для службы управления API