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


Служба Microsoft.ApiManagement 2021-01-01-preview

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

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

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

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

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

resource symbolicname 'Microsoft.ApiManagement/service@2021-01-01-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {
        clientId: 'string'
        principalId: 'string'
      }
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    additionalLocations: [
      {
        disableGateway: bool
        location: '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'
      }
    ]
    customProperties: {
      {customized property}: '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'
      }
    ]
    notificationSenderEmail: 'string'
    publicIpAddressId: 'string'
    publisherEmail: 'string'
    publisherName: 'string'
    restore: bool
    virtualNetworkConfiguration: {
      subnetResourceId: 'string'
    }
    virtualNetworkType: 'string'
  }
  sku: {
    capacity: int
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
  zones: [
    'string'
  ]
}

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

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

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

ApiManagementServiceBasePropertiesCustomProperties

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

ApiManagementServiceIdentity

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

ApiManagementServiceIdentityUserAssignedIdentities

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

ApiManagementServiceProperties

Имя Описание Ценность
дополнительные расположения Дополнительные расположения центров обработки данных службы управления API. Дополнительное перемещение[]
apiVersionConstraint Ограничение версии API уровня управления для службы управления API. ApiVersionConstraint
Сертификаты Список сертификатов, которые необходимо установить в службе управления API. Максимальное число поддерживаемых сертификатов, которые можно установить, равно 10. CertificateConfiguration[]
customProperties Настраиваемые свойства службы управления 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 для них. Примечание. Следующие шифры нельзя отключить, так как они необходимы внутренним компонентам Azure CloudService: 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,TLS_RSA_WITH_AES_256_GCM_SHA384
ApiManagementServiceBasePropertiesCustomProperties
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в главном регионе. bool
enableClientCertificate Свойство предназначено только для службы SKU потребления. При этом сертификат клиента должен быть представлен по каждому запросу шлюза. Это также позволяет пройти проверку подлинности сертификата в политике шлюза. bool
hostnameConfigurations Настраиваемая конфигурация имени узла службы управления API. HostnameConfiguration[]
notificationSenderEmail Адрес электронной почты, с которого будет отправлено уведомление. струна

Ограничения целостности:
Максимальная длина =
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в регионе. Поддерживается только для развертывания SKU разработчика и класса Premium в виртуальной сети. струна
publisherEmail Электронная почта издателя. струна

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

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

ApiManagementServiceSkuProperties

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

ApimResourceTags

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

ApiVersionConstraint

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

CertificateConfiguration

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

CertificateInformation

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

HostnameConfiguration

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

Microsoft.ApiManagement/service

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

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

UserIdentityProperties

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

VirtualNetworkConfiguration

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

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

Примеры краткого руководства

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

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": "2021-01-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
        "clientId": "string",
        "principalId": "string"
      }
    }
  },
  "location": "string",
  "properties": {
    "additionalLocations": [
      {
        "disableGateway": "bool",
        "location": "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"
      }
    ],
    "customProperties": {
      "{customized property}": "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"
      }
    ],
    "notificationSenderEmail": "string",
    "publicIpAddressId": "string",
    "publisherEmail": "string",
    "publisherName": "string",
    "restore": "bool",
    "virtualNetworkConfiguration": {
      "subnetResourceId": "string"
    },
    "virtualNetworkType": "string"
  },
  "sku": {
    "capacity": "int",
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  },
  "zones": [ "string" ]
}

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

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

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

ApiManagementServiceBasePropertiesCustomProperties

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

ApiManagementServiceIdentity

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

ApiManagementServiceIdentityUserAssignedIdentities

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

ApiManagementServiceProperties

Имя Описание Ценность
дополнительные расположения Дополнительные расположения центров обработки данных службы управления API. Дополнительное перемещение[]
apiVersionConstraint Ограничение версии API уровня управления для службы управления API. ApiVersionConstraint
Сертификаты Список сертификатов, которые необходимо установить в службе управления API. Максимальное число поддерживаемых сертификатов, которые можно установить, равно 10. CertificateConfiguration[]
customProperties Настраиваемые свойства службы управления 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 для них. Примечание. Следующие шифры нельзя отключить, так как они необходимы внутренним компонентам Azure CloudService: 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,TLS_RSA_WITH_AES_256_GCM_SHA384
ApiManagementServiceBasePropertiesCustomProperties
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в главном регионе. bool
enableClientCertificate Свойство предназначено только для службы SKU потребления. При этом сертификат клиента должен быть представлен по каждому запросу шлюза. Это также позволяет пройти проверку подлинности сертификата в политике шлюза. bool
hostnameConfigurations Настраиваемая конфигурация имени узла службы управления API. HostnameConfiguration[]
notificationSenderEmail Адрес электронной почты, с которого будет отправлено уведомление. струна

Ограничения целостности:
Максимальная длина =
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в регионе. Поддерживается только для развертывания SKU разработчика и класса Premium в виртуальной сети. струна
publisherEmail Электронная почта издателя. струна

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

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

ApiManagementServiceSkuProperties

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

ApimResourceTags

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

ApiVersionConstraint

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

CertificateConfiguration

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

CertificateInformation

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

HostnameConfiguration

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

Microsoft.ApiManagement/service

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

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

UserIdentityProperties

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

VirtualNetworkConfiguration

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

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

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

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

Шаблон Описание
Шлюз приложений с внутренним управлением 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@2021-01-01-preview"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
        clientId = "string"
        principalId = "string"
      }
    }
  }
  location = "string"
  sku = {
    capacity = int
    name = "string"
  }
  tags = {
    {customized property} = "string"
  }
  zones = [
    "string"
  ]
  body = jsonencode({
    properties = {
      additionalLocations = [
        {
          disableGateway = bool
          location = "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"
        }
      ]
      customProperties = {
        {customized property} = "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"
        }
      ]
      notificationSenderEmail = "string"
      publicIpAddressId = "string"
      publisherEmail = "string"
      publisherName = "string"
      restore = bool
      virtualNetworkConfiguration = {
        subnetResourceId = "string"
      }
      virtualNetworkType = "string"
    }
  })
}

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

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

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

ApiManagementServiceBasePropertiesCustomProperties

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

ApiManagementServiceIdentity

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

ApiManagementServiceIdentityUserAssignedIdentities

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

ApiManagementServiceProperties

Имя Описание Ценность
дополнительные расположения Дополнительные расположения центров обработки данных службы управления API. Дополнительное перемещение[]
apiVersionConstraint Ограничение версии API уровня управления для службы управления API. ApiVersionConstraint
Сертификаты Список сертификатов, которые необходимо установить в службе управления API. Максимальное число поддерживаемых сертификатов, которые можно установить, равно 10. CertificateConfiguration[]
customProperties Настраиваемые свойства службы управления 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 для них. Примечание. Следующие шифры нельзя отключить, так как они необходимы внутренним компонентам Azure CloudService: 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,TLS_RSA_WITH_AES_256_GCM_SHA384
ApiManagementServiceBasePropertiesCustomProperties
disableGateway Свойство допустимо только для службы управления API, развернутой в нескольких расположениях. Это можно использовать для отключения шлюза в главном регионе. bool
enableClientCertificate Свойство предназначено только для службы SKU потребления. При этом сертификат клиента должен быть представлен по каждому запросу шлюза. Это также позволяет пройти проверку подлинности сертификата в политике шлюза. bool
hostnameConfigurations Настраиваемая конфигурация имени узла службы управления API. HostnameConfiguration[]
notificationSenderEmail Адрес электронной почты, с которого будет отправлено уведомление. струна

Ограничения целостности:
Максимальная длина =
publicIpAddressId Общедоступный IP-адрес SKU SKU уровня "Стандартный" версии 4, связанный с развернутой службой виртуальной сети в регионе. Поддерживается только для развертывания SKU разработчика и класса Premium в виртуальной сети. струна
publisherEmail Электронная почта издателя. струна

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

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

ApiManagementServiceSkuProperties

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

ApimResourceTags

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

ApiVersionConstraint

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

CertificateConfiguration

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

CertificateInformation

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

HostnameConfiguration

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

Microsoft.ApiManagement/service

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

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

UserIdentityProperties

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

VirtualNetworkConfiguration

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

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