Compartilhar via


Serviço Microsoft.ApiManagement 2019-12-01

Definição de recursos do bíceps

O tipo de recurso de serviço pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.ApiManagement/service, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.ApiManagement/service@2019-12-01' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {
        clientId: 'string'
        principalId: 'string'
      }
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    additionalLocations: [
      {
        disableGateway: bool
        location: 'string'
        sku: {
          capacity: int
          name: 'string'
        }
        virtualNetworkConfiguration: {
          subnetResourceId: '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'
        defaultSslBinding: bool
        encodedCertificate: 'string'
        hostName: 'string'
        keyVaultId: 'string'
        negotiateClientCertificate: bool
        type: 'string'
      }
    ]
    notificationSenderEmail: 'string'
    publisherEmail: 'string'
    publisherName: 'string'
    virtualNetworkConfiguration: {
      subnetResourceId: 'string'
    }
    virtualNetworkType: 'string'
  }
  sku: {
    capacity: int
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores de propriedade

Localização Adicional

Designação Descrição Valor
disableGateway Propriedade válida apenas para um serviço de Gerenciamento de Api implantado em vários locais. Isso pode ser usado para desabilitar o gateway nesse local adicional. Bool
Localização O nome do local da região adicional entre as regiões do Data Center do Azure. string (obrigatório)
SKU Propriedades de SKU do serviço de Gerenciamento de API. ApiManagementServiceSkuProperties (obrigatório)
virtualNetworkConfiguration Configuração de rede virtual para o local. VirtualNetworkConfiguration

ApiManagementServiceBasePropertiesCustomProperties

Designação Descrição Valor

ApiManagementServiceIdentity

Designação Descrição Valor
tipo O tipo de identidade usado para o recurso. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada implicitamente e um conjunto de identidades atribuídas pelo usuário. O tipo 'Nenhum' removerá todas as identidades do serviço. 'Nenhuma'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities A lista de identidades de usuário associadas ao recurso. A identidade do usuário
as referências de chave de dicionário serão ids de recurso ARM no formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

Designação Descrição Valor

ApiManagementServiceProperties

Designação Descrição Valor
adicionalLocalizações Locais de datacenter adicionais do serviço de Gerenciamento de API. AdicionalLocalização[]
apiVersionConstraint Restrição de versão da Apis do Plano de Controle para o serviço de Gerenciamento de API. ApiVersionConstraint
Certificados Lista de certificados que precisam ser instalados no serviço de gerenciamento de API. O máximo de certificados suportados que podem ser instalados é 10. CertificateConfiguration []
customProperties Propriedades personalizadas do serviço de Gerenciamento de API.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 desativará o TLS_RSA_WITH_3DES_EDE_CBC_SHA de codificação para todos os TLS(1.0, 1.1 e 1.2).
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 pode ser usada para desativar apenas o TLS 1.1.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 pode ser usada para desabilitar o TLS 1.0 em um serviço de Gerenciamento de API.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 pode ser usada para desativar apenas o TLS 1.1 para comunicações com back-ends.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 pode ser usada para desativar o TLS 1.0 para comunicações com back-ends.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 pode ser usada para habilitar o protocolo HTTP2 em um serviço de Gerenciamento de API.

Não especificar nenhuma dessas propriedades na operação PATCH redefinirá os valores das propriedades omitidas para seus padrões. Para todas as configurações, exceto Http2, o valor padrão é True se o serviço tiver sido criado em ou antes de 1º de abril de 2018 e False contrário. O valor padrão da configuração Http2 é False.

Você pode desativar qualquer uma das próximas cifras usando as configurações 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.

Por exemplo: Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. O valor padrão é true para todos eles.

Observação: as próximas cifras não podem ser desabilitadas, pois são exigidas pelos componentes internos do 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 Propriedade válida apenas para um serviço de Gerenciamento de Api implantado em vários locais. Isso pode ser usado para desabilitar o gateway na região mestre. Bool
enableClientCertificate Propriedade destinada apenas a ser usada para o Serviço de SKU de Consumo. Isso impõe um certificado de cliente a ser apresentado em cada solicitação ao gateway. Isso também permite a capacidade de autenticar o certificado na política no gateway. Bool
hostnameConfigurations Configuração personalizada de nome de host do serviço de Gerenciamento de API. HostnameConfiguration[]
notificaçãoRemetenteE-mail Endereço de e-mail a partir do qual a notificação será enviada. string

Restrições:
Comprimento máximo =
publisherE-mail E-mail do editor. string

Restrições:
Comprimento máximo = (obrigatório)
Nome do editor Nome do editor. string

Restrições:
Comprimento máximo = (obrigatório)
virtualNetworkConfiguration Configuração de rede virtual do serviço de Gerenciamento de API. VirtualNetworkConfiguration
virtualNetworkType O tipo de VPN no qual o serviço de Gerenciamento de API precisa ser configurado. Nenhum (Valor Padrão) significa que o serviço de Gerenciamento de API não faz parte de nenhuma Rede Virtual, Externo significa que a implantação do Gerenciamento de API é configurada dentro de uma Rede Virtual com um Ponto de Extremidade voltado para a Internet e Interno significa que a implantação do Gerenciamento de API é configurada dentro de uma Rede Virtual com um Ponto de Extremidade Voltado para a Intranet apenas. 'Externo'
'Interna'
'Nenhuma'

ApiManagementServiceSkuProperties

Designação Descrição Valor
capacidade Capacidade do SKU (número de unidades implantadas do SKU). Para Consumo, a capacidade de SKU deve ser especificada como 0. int (obrigatório)
Designação Nome do Sku. 'Básico'
'Consumo'
'Desenvolvedor'
'Premium'
'Standard' (obrigatório)

ApimResourceTags

Designação Descrição Valor

ApiVersionConstraint

Designação Descrição Valor
minApiVersion Limite as chamadas de API do plano de controle para o serviço de Gerenciamento de API com versão igual ou mais recente que esse valor. string

CertificateConfiguration

Designação Descrição Valor
certificado Informações do certificado. CertificateInformation
certificatePassword Senha do certificado. string
encodedCertificate Certificado codificado Base64. string
nome_da_loja O local de armazenamento de certificados System.Security.Cryptography.x509certificates.StoreName. Somente Root e CertificateAuthority são locais válidos. «Autoridade certificadora»
'Root' (obrigatório)

CertificateInformation

Designação Descrição Valor
expiração Data de validade do certificado. A data está em conformidade com o seguinte formato: yyyy-MM-ddTHH:mm:ssZ conforme especificado pela norma ISO 8601. string (obrigatório)
Assunto Objeto do certificado. string (obrigatório)
impressão digital Impressão digital do certificado. string (obrigatório)

HostnameConfiguration

Designação Descrição Valor
certificado Informações do certificado. CertificateInformation
certificatePassword Senha do certificado. string
defaultSslBinding Especifique true para configurar o certificado associado a esse nome de host como o certificado SSL padrão. Se um cliente não enviar o cabeçalho SNI, este será o certificado que será contestado. A propriedade é útil se um serviço tiver vários nomes de host personalizados habilitados e precisar decidir sobre o certificado ssl padrão. A configuração só foi aplicada ao tipo de nome de host do proxy. Bool
encodedCertificate Certificado codificado Base64. string
Nome do host Nome do host a ser configurado no serviço de Gerenciamento de Api. string (obrigatório)
keyVaultId Url para o segredo KeyVault que contém o certificado SSL. Se a URL absoluta contendo a versão for fornecida, a atualização automática do certificado ssl não funcionará. Isso requer que o serviço de Gerenciamento de Api seja configurado com MSI. O segredo deve ser do tipo application/x-pkcs12 string
negociarClientCertificate Especifique true para sempre negociar o certificado do cliente no nome do host. O valor padrão é false. Bool
tipo Tipo de nome de host. 'DeveloperPortal'
'Gestão'
'Portal'
'Procuração'
'Scm' (obrigatório)

Microsoft.ApiManagement/serviço

Designação Descrição Valor
identidade Identidade de serviço gerenciado do serviço de Gerenciamento de Api. ApiManagementServiceIdentity
Localização Localização do recurso. string (obrigatório)
Designação O nome do recurso string

Restrições:
Comprimento mínimo = 1
Comprimento máximo = 1
Padrão = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (obrigatório)
propriedades Propriedades do serviço de Gerenciamento de API. ApiManagementServiceProperties (obrigatório)
SKU Propriedades de SKU do serviço de Gerenciamento de API. ApiManagementServiceSkuProperties (obrigatório)
Etiquetas Tags de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos

UserIdentityProperties

Designação Descrição Valor
ID do cliente O ID do cliente da identidade atribuída ao usuário. string
principalId O id principal da identidade atribuída ao usuário. string

VirtualNetworkConfiguration

Designação Descrição Valor
subnetResourceId O ID de recurso completo de uma sub-rede em uma rede virtual na qual implantar o serviço de Gerenciamento de API. string

Restrições:
Padrão = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

Exemplos de início rápido

Os exemplos de início rápido a seguir implantam esse tipo de recurso.

Arquivo Bicep Descrição
Application Gateway com gerenciamento interno de API e de aplicativos Web Gateway de Aplicativo roteando tráfego da Internet para uma instância de Gerenciamento de API de rede virtual (modo interno) que atende uma API Web hospedada em um Aplicativo Web do Azure.
Criar uma instância de Gerenciamento de API de camada Premium multirregional Este modelo demonstra como criar uma instância de Gerenciamento de API com locais adicionais. O local principal é o mesmo que o local do grupo de recursos. Para locais adicionais, o modelo mostra NorthCentralUs e East US2. O local principal deve ser diferente dos locais adicionais.
Criar uma instância de Gerenciamento de API com o MSI Identity Este modelo cria uma instância de desenvolvedor do Gerenciamento de API do Azure com uma Identidade MSI
Criar uma instância de Gerenciamento de API usando um modelo Este modelo cria uma instância de desenvolvedor do Gerenciamento de API do Azure
Criar um serviço de Gerenciamento de API com um ponto de extremidade privado Este modelo criará um serviço de Gerenciamento de API, uma rede virtual e um ponto de extremidade privado expondo o serviço de Gerenciamento de API à rede virtual.
Criar um serviço de gerenciamento de API com SSL a partir do KeyVault Este modelo implanta um serviço de Gerenciamento de API configurado com Identidade Atribuída pelo Usuário. Ele usa essa identidade para buscar o certificado SSL do KeyVault e o mantém atualizado verificando a cada 4 horas.
Criar gerenciamento de API em rede virtual interna com do App Gateway Este modelo demonstra como Criar uma instância do Gerenciamento de API do Azure em uma rede privada protegida pelo Gateway de Aplicativo do Azure.
Implantar o Gerenciamento de API em VNet externa com IP público Este modelo demonstra como criar uma instância do Gerenciamento de API do Azure na camada Premium dentro da sub-rede da sua rede virtual no modo externo e configurar regras NSG recomendadas na sub-rede. A instância é implantada em duas zonas de disponibilidade. O modelo também configura um endereço IP público da sua assinatura.
Implantar o Gerenciamento de API em VNet interna com IP público Este modelo demonstra como criar uma instância do Gerenciamento de API do Azure na camada Premium dentro da sub-rede da sua rede virtual no modo interno e configurar regras NSG recomendadas na sub-rede. A instância é implantada em duas zonas de disponibilidade. O modelo também configura um endereço IP público da sua assinatura.
implantar o gerenciamento de API em zonas de disponibilidade Este modelo cria uma instância premium do Gerenciamento de API do Azure e implanta em uma zona de disponibilidade
Implantar o Gerenciamento de API com um Cache do Azure externo para Redis Este modelo demonstra como criar uma instância do Gerenciamento de API do Azure na camada de Consumo com uma instância externa do Cache do Azure para Redis como o cache externo do Gerenciamento de API.
Porta Frontal Standard/Premium com origem API Management Este modelo cria um Front Door Premium e uma instância de Gerenciamento de API, e usa uma política NSG e global de Gerenciamento de API para validar que o tráfego passou pela origem do Front Door.

Definição de recurso de modelo ARM

O tipo de recurso de serviço pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.ApiManagement/service, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.ApiManagement/service",
  "apiVersion": "2019-12-01",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
        "clientId": "string",
        "principalId": "string"
      }
    }
  },
  "location": "string",
  "properties": {
    "additionalLocations": [
      {
        "disableGateway": "bool",
        "location": "string",
        "sku": {
          "capacity": "int",
          "name": "string"
        },
        "virtualNetworkConfiguration": {
          "subnetResourceId": "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",
        "defaultSslBinding": "bool",
        "encodedCertificate": "string",
        "hostName": "string",
        "keyVaultId": "string",
        "negotiateClientCertificate": "bool",
        "type": "string"
      }
    ],
    "notificationSenderEmail": "string",
    "publisherEmail": "string",
    "publisherName": "string",
    "virtualNetworkConfiguration": {
      "subnetResourceId": "string"
    },
    "virtualNetworkType": "string"
  },
  "sku": {
    "capacity": "int",
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores de propriedade

Localização Adicional

Designação Descrição Valor
disableGateway Propriedade válida apenas para um serviço de Gerenciamento de Api implantado em vários locais. Isso pode ser usado para desabilitar o gateway nesse local adicional. Bool
Localização O nome do local da região adicional entre as regiões do Data Center do Azure. string (obrigatório)
SKU Propriedades de SKU do serviço de Gerenciamento de API. ApiManagementServiceSkuProperties (obrigatório)
virtualNetworkConfiguration Configuração de rede virtual para o local. VirtualNetworkConfiguration

ApiManagementServiceBasePropertiesCustomProperties

Designação Descrição Valor

ApiManagementServiceIdentity

Designação Descrição Valor
tipo O tipo de identidade usado para o recurso. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada implicitamente e um conjunto de identidades atribuídas pelo usuário. O tipo 'Nenhum' removerá todas as identidades do serviço. 'Nenhuma'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities A lista de identidades de usuário associadas ao recurso. A identidade do usuário
as referências de chave de dicionário serão ids de recurso ARM no formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

Designação Descrição Valor

ApiManagementServiceProperties

Designação Descrição Valor
adicionalLocalizações Locais de datacenter adicionais do serviço de Gerenciamento de API. AdicionalLocalização[]
apiVersionConstraint Restrição de versão da Apis do Plano de Controle para o serviço de Gerenciamento de API. ApiVersionConstraint
Certificados Lista de certificados que precisam ser instalados no serviço de gerenciamento de API. O máximo de certificados suportados que podem ser instalados é 10. CertificateConfiguration []
customProperties Propriedades personalizadas do serviço de Gerenciamento de API.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 desativará o TLS_RSA_WITH_3DES_EDE_CBC_SHA de codificação para todos os TLS(1.0, 1.1 e 1.2).
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 pode ser usada para desativar apenas o TLS 1.1.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 pode ser usada para desabilitar o TLS 1.0 em um serviço de Gerenciamento de API.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 pode ser usada para desativar apenas o TLS 1.1 para comunicações com back-ends.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 pode ser usada para desativar o TLS 1.0 para comunicações com back-ends.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 pode ser usada para habilitar o protocolo HTTP2 em um serviço de Gerenciamento de API.

Não especificar nenhuma dessas propriedades na operação PATCH redefinirá os valores das propriedades omitidas para seus padrões. Para todas as configurações, exceto Http2, o valor padrão é True se o serviço tiver sido criado em ou antes de 1º de abril de 2018 e False contrário. O valor padrão da configuração Http2 é False.

Você pode desativar qualquer uma das próximas cifras usando as configurações 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.

Por exemplo: Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. O valor padrão é true para todos eles.

Observação: as próximas cifras não podem ser desabilitadas, pois são exigidas pelos componentes internos do 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 Propriedade válida apenas para um serviço de Gerenciamento de Api implantado em vários locais. Isso pode ser usado para desabilitar o gateway na região mestre. Bool
enableClientCertificate Propriedade destinada apenas a ser usada para o Serviço de SKU de Consumo. Isso impõe um certificado de cliente a ser apresentado em cada solicitação ao gateway. Isso também permite a capacidade de autenticar o certificado na política no gateway. Bool
hostnameConfigurations Configuração personalizada de nome de host do serviço de Gerenciamento de API. HostnameConfiguration[]
notificaçãoRemetenteE-mail Endereço de e-mail a partir do qual a notificação será enviada. string

Restrições:
Comprimento máximo =
publisherE-mail E-mail do editor. string

Restrições:
Comprimento máximo = (obrigatório)
Nome do editor Nome do editor. string

Restrições:
Comprimento máximo = (obrigatório)
virtualNetworkConfiguration Configuração de rede virtual do serviço de Gerenciamento de API. VirtualNetworkConfiguration
virtualNetworkType O tipo de VPN no qual o serviço de Gerenciamento de API precisa ser configurado. Nenhum (Valor Padrão) significa que o serviço de Gerenciamento de API não faz parte de nenhuma Rede Virtual, Externo significa que a implantação do Gerenciamento de API é configurada dentro de uma Rede Virtual com um Ponto de Extremidade voltado para a Internet e Interno significa que a implantação do Gerenciamento de API é configurada dentro de uma Rede Virtual com um Ponto de Extremidade Voltado para a Intranet apenas. 'Externo'
'Interna'
'Nenhuma'

ApiManagementServiceSkuProperties

Designação Descrição Valor
capacidade Capacidade do SKU (número de unidades implantadas do SKU). Para Consumo, a capacidade de SKU deve ser especificada como 0. int (obrigatório)
Designação Nome do Sku. 'Básico'
'Consumo'
'Desenvolvedor'
'Premium'
'Standard' (obrigatório)

ApimResourceTags

Designação Descrição Valor

ApiVersionConstraint

Designação Descrição Valor
minApiVersion Limite as chamadas de API do plano de controle para o serviço de Gerenciamento de API com versão igual ou mais recente que esse valor. string

CertificateConfiguration

Designação Descrição Valor
certificado Informações do certificado. CertificateInformation
certificatePassword Senha do certificado. string
encodedCertificate Certificado codificado Base64. string
nome_da_loja O local de armazenamento de certificados System.Security.Cryptography.x509certificates.StoreName. Somente Root e CertificateAuthority são locais válidos. «Autoridade certificadora»
'Root' (obrigatório)

CertificateInformation

Designação Descrição Valor
expiração Data de validade do certificado. A data está em conformidade com o seguinte formato: yyyy-MM-ddTHH:mm:ssZ conforme especificado pela norma ISO 8601. string (obrigatório)
Assunto Objeto do certificado. string (obrigatório)
impressão digital Impressão digital do certificado. string (obrigatório)

HostnameConfiguration

Designação Descrição Valor
certificado Informações do certificado. CertificateInformation
certificatePassword Senha do certificado. string
defaultSslBinding Especifique true para configurar o certificado associado a esse nome de host como o certificado SSL padrão. Se um cliente não enviar o cabeçalho SNI, este será o certificado que será contestado. A propriedade é útil se um serviço tiver vários nomes de host personalizados habilitados e precisar decidir sobre o certificado ssl padrão. A configuração só foi aplicada ao tipo de nome de host do proxy. Bool
encodedCertificate Certificado codificado Base64. string
Nome do host Nome do host a ser configurado no serviço de Gerenciamento de Api. string (obrigatório)
keyVaultId Url para o segredo KeyVault que contém o certificado SSL. Se a URL absoluta contendo a versão for fornecida, a atualização automática do certificado ssl não funcionará. Isso requer que o serviço de Gerenciamento de Api seja configurado com MSI. O segredo deve ser do tipo application/x-pkcs12 string
negociarClientCertificate Especifique true para sempre negociar o certificado do cliente no nome do host. O valor padrão é false. Bool
tipo Tipo de nome de host. 'DeveloperPortal'
'Gestão'
'Portal'
'Procuração'
'Scm' (obrigatório)

Microsoft.ApiManagement/serviço

Designação Descrição Valor
apiVersion A versão api '2019-12-01'
identidade Identidade de serviço gerenciado do serviço de Gerenciamento de Api. ApiManagementServiceIdentity
Localização Localização do recurso. string (obrigatório)
Designação O nome do recurso string

Restrições:
Comprimento mínimo = 1
Comprimento máximo = 1
Padrão = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (obrigatório)
propriedades Propriedades do serviço de Gerenciamento de API. ApiManagementServiceProperties (obrigatório)
SKU Propriedades de SKU do serviço de Gerenciamento de API. ApiManagementServiceSkuProperties (obrigatório)
Etiquetas Tags de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos
tipo O tipo de recurso 'Microsoft.ApiManagement/serviço'

UserIdentityProperties

Designação Descrição Valor
ID do cliente O ID do cliente da identidade atribuída ao usuário. string
principalId O id principal da identidade atribuída ao usuário. string

VirtualNetworkConfiguration

Designação Descrição Valor
subnetResourceId O ID de recurso completo de uma sub-rede em uma rede virtual na qual implantar o serviço de Gerenciamento de API. string

Restrições:
Padrão = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

Modelos de início rápido

Os modelos de início rápido a seguir implantam esse tipo de recurso.

Modelo Descrição
Application Gateway com gerenciamento interno de API e de aplicativos Web

Implantar no Azure
Gateway de Aplicativo roteando tráfego da Internet para uma instância de Gerenciamento de API de rede virtual (modo interno) que atende uma API Web hospedada em um Aplicativo Web do Azure.
Criar uma instância de Gerenciamento de API de camada Premium multirregional

Implantar no Azure
Este modelo demonstra como criar uma instância de Gerenciamento de API com locais adicionais. O local principal é o mesmo que o local do grupo de recursos. Para locais adicionais, o modelo mostra NorthCentralUs e East US2. O local principal deve ser diferente dos locais adicionais.
Crie uma instância de Gerenciamento de API e todos os subrecursos usando o modelo

Implantar no Azure
Este modelo demonstra como criar um serviço de Gerenciamento de API e configurar subentidades
Criar uma instância de Gerenciamento de API com o MSI Identity

Implantar no Azure
Este modelo cria uma instância de desenvolvedor do Gerenciamento de API do Azure com uma Identidade MSI
Criar uma instância de Gerenciamento de API usando um modelo

Implantar no Azure
Este modelo cria uma instância de desenvolvedor do Gerenciamento de API do Azure
Criar uma instância de Gerenciamento de API com nomes de host personalizados

Implantar no Azure
Este modelo demonstra como criar uma instância do Gerenciamento de API do Azure com nome de host personalizado para portal e vários nomes de host personalizados para proxy
Criar um serviço de Gerenciamento de API com um ponto de extremidade privado

Implantar no Azure
Este modelo criará um serviço de Gerenciamento de API, uma rede virtual e um ponto de extremidade privado expondo o serviço de Gerenciamento de API à rede virtual.
Criar um serviço de gerenciamento de API com SSL a partir do KeyVault

Implantar no Azure
Este modelo implanta um serviço de Gerenciamento de API configurado com Identidade Atribuída pelo Usuário. Ele usa essa identidade para buscar o certificado SSL do KeyVault e o mantém atualizado verificando a cada 4 horas.
Criar e monitorar a instância de Gerenciamento de API

Implantar no Azure
Este modelo cria uma instância do serviço de Gerenciamento de API do Azure e do espaço de trabalho do Log Analytics e configura o monitoramento para seu serviço de Gerenciamento de API com o Log Analytics
Criar gerenciamento de API em rede virtual interna com do App Gateway

Implantar no Azure
Este modelo demonstra como Criar uma instância do Gerenciamento de API do Azure em uma rede privada protegida pelo Gateway de Aplicativo do Azure.
Criar gerenciamento de API com proxy ssl personalizado usando KeyVault

Implantar no Azure
Este modelo demonstra como Criar uma instância do Gerenciamento de API do Azure e configurar o nome de host personalizado para proxy com certificado ssl do keyvault.
Criar a Porta da Frente do Azure em frente ao de Gerenciamento de API do Azure

Implantar no Azure
Este exemplo demonstra como usar o Azure Front Door como um balanceador de carga global na frente do Gerenciamento de API do Azure.
Implantar o Gerenciamento de API em VNet externa com IP público

Implantar no Azure
Este modelo demonstra como criar uma instância do Gerenciamento de API do Azure na camada Premium dentro da sub-rede da sua rede virtual no modo externo e configurar regras NSG recomendadas na sub-rede. A instância é implantada em duas zonas de disponibilidade. O modelo também configura um endereço IP público da sua assinatura.
Implantar o Gerenciamento de API em VNet interna com IP público

Implantar no Azure
Este modelo demonstra como criar uma instância do Gerenciamento de API do Azure na camada Premium dentro da sub-rede da sua rede virtual no modo interno e configurar regras NSG recomendadas na sub-rede. A instância é implantada em duas zonas de disponibilidade. O modelo também configura um endereço IP público da sua assinatura.
implantar o gerenciamento de API em zonas de disponibilidade

Implantar no Azure
Este modelo cria uma instância premium do Gerenciamento de API do Azure e implanta em uma zona de disponibilidade
Implantar o Gerenciamento de API com um Cache do Azure externo para Redis

Implantar no Azure
Este modelo demonstra como criar uma instância do Gerenciamento de API do Azure na camada de Consumo com uma instância externa do Cache do Azure para Redis como o cache externo do Gerenciamento de API.
Porta Frontal Standard/Premium com origem API Management

Implantar no Azure
Este modelo cria um Front Door Premium e uma instância de Gerenciamento de API, e usa uma política NSG e global de Gerenciamento de API para validar que o tráfego passou pela origem do Front Door.

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso de serviço pode ser implantado com operações que visam:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.ApiManagement/service, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ApiManagement/service@2019-12-01"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
        clientId = "string"
        principalId = "string"
      }
    }
  }
  location = "string"
  sku = {
    capacity = int
    name = "string"
  }
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    properties = {
      additionalLocations = [
        {
          disableGateway = bool
          location = "string"
          sku = {
            capacity = int
            name = "string"
          }
          virtualNetworkConfiguration = {
            subnetResourceId = "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"
          defaultSslBinding = bool
          encodedCertificate = "string"
          hostName = "string"
          keyVaultId = "string"
          negotiateClientCertificate = bool
          type = "string"
        }
      ]
      notificationSenderEmail = "string"
      publisherEmail = "string"
      publisherName = "string"
      virtualNetworkConfiguration = {
        subnetResourceId = "string"
      }
      virtualNetworkType = "string"
    }
  })
}

Valores de propriedade

Localização Adicional

Designação Descrição Valor
disableGateway Propriedade válida apenas para um serviço de Gerenciamento de Api implantado em vários locais. Isso pode ser usado para desabilitar o gateway nesse local adicional. Bool
Localização O nome do local da região adicional entre as regiões do Data Center do Azure. string (obrigatório)
SKU Propriedades de SKU do serviço de Gerenciamento de API. ApiManagementServiceSkuProperties (obrigatório)
virtualNetworkConfiguration Configuração de rede virtual para o local. VirtualNetworkConfiguration

ApiManagementServiceBasePropertiesCustomProperties

Designação Descrição Valor

ApiManagementServiceIdentity

Designação Descrição Valor
tipo O tipo de identidade usado para o recurso. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada implicitamente e um conjunto de identidades atribuídas pelo usuário. O tipo 'Nenhum' removerá todas as identidades do serviço. 'Nenhuma'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentities A lista de identidades de usuário associadas ao recurso. A identidade do usuário
as referências de chave de dicionário serão ids de recurso ARM no formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

Designação Descrição Valor

ApiManagementServiceProperties

Designação Descrição Valor
adicionalLocalizações Locais de datacenter adicionais do serviço de Gerenciamento de API. AdicionalLocalização[]
apiVersionConstraint Restrição de versão da Apis do Plano de Controle para o serviço de Gerenciamento de API. ApiVersionConstraint
Certificados Lista de certificados que precisam ser instalados no serviço de gerenciamento de API. O máximo de certificados suportados que podem ser instalados é 10. CertificateConfiguration []
customProperties Propriedades personalizadas do serviço de Gerenciamento de API.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 desativará o TLS_RSA_WITH_3DES_EDE_CBC_SHA de codificação para todos os TLS(1.0, 1.1 e 1.2).
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 pode ser usada para desativar apenas o TLS 1.1.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 pode ser usada para desabilitar o TLS 1.0 em um serviço de Gerenciamento de API.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 pode ser usada para desativar apenas o TLS 1.1 para comunicações com back-ends.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 pode ser usada para desativar o TLS 1.0 para comunicações com back-ends.
A configuração Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 pode ser usada para habilitar o protocolo HTTP2 em um serviço de Gerenciamento de API.

Não especificar nenhuma dessas propriedades na operação PATCH redefinirá os valores das propriedades omitidas para seus padrões. Para todas as configurações, exceto Http2, o valor padrão é True se o serviço tiver sido criado em ou antes de 1º de abril de 2018 e False contrário. O valor padrão da configuração Http2 é False.

Você pode desativar qualquer uma das próximas cifras usando as configurações 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.

Por exemplo: Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. O valor padrão é true para todos eles.

Observação: as próximas cifras não podem ser desabilitadas, pois são exigidas pelos componentes internos do 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 Propriedade válida apenas para um serviço de Gerenciamento de Api implantado em vários locais. Isso pode ser usado para desabilitar o gateway na região mestre. Bool
enableClientCertificate Propriedade destinada apenas a ser usada para o Serviço de SKU de Consumo. Isso impõe um certificado de cliente a ser apresentado em cada solicitação ao gateway. Isso também permite a capacidade de autenticar o certificado na política no gateway. Bool
hostnameConfigurations Configuração personalizada de nome de host do serviço de Gerenciamento de API. HostnameConfiguration[]
notificaçãoRemetenteE-mail Endereço de e-mail a partir do qual a notificação será enviada. string

Restrições:
Comprimento máximo =
publisherE-mail E-mail do editor. string

Restrições:
Comprimento máximo = (obrigatório)
Nome do editor Nome do editor. string

Restrições:
Comprimento máximo = (obrigatório)
virtualNetworkConfiguration Configuração de rede virtual do serviço de Gerenciamento de API. VirtualNetworkConfiguration
virtualNetworkType O tipo de VPN no qual o serviço de Gerenciamento de API precisa ser configurado. Nenhum (Valor Padrão) significa que o serviço de Gerenciamento de API não faz parte de nenhuma Rede Virtual, Externo significa que a implantação do Gerenciamento de API é configurada dentro de uma Rede Virtual com um Ponto de Extremidade voltado para a Internet e Interno significa que a implantação do Gerenciamento de API é configurada dentro de uma Rede Virtual com um Ponto de Extremidade Voltado para a Intranet apenas. 'Externo'
'Interna'
'Nenhuma'

ApiManagementServiceSkuProperties

Designação Descrição Valor
capacidade Capacidade do SKU (número de unidades implantadas do SKU). Para Consumo, a capacidade de SKU deve ser especificada como 0. int (obrigatório)
Designação Nome do Sku. 'Básico'
'Consumo'
'Desenvolvedor'
'Premium'
'Standard' (obrigatório)

ApimResourceTags

Designação Descrição Valor

ApiVersionConstraint

Designação Descrição Valor
minApiVersion Limite as chamadas de API do plano de controle para o serviço de Gerenciamento de API com versão igual ou mais recente que esse valor. string

CertificateConfiguration

Designação Descrição Valor
certificado Informações do certificado. CertificateInformation
certificatePassword Senha do certificado. string
encodedCertificate Certificado codificado Base64. string
nome_da_loja O local de armazenamento de certificados System.Security.Cryptography.x509certificates.StoreName. Somente Root e CertificateAuthority são locais válidos. «Autoridade certificadora»
'Root' (obrigatório)

CertificateInformation

Designação Descrição Valor
expiração Data de validade do certificado. A data está em conformidade com o seguinte formato: yyyy-MM-ddTHH:mm:ssZ conforme especificado pela norma ISO 8601. string (obrigatório)
Assunto Objeto do certificado. string (obrigatório)
impressão digital Impressão digital do certificado. string (obrigatório)

HostnameConfiguration

Designação Descrição Valor
certificado Informações do certificado. CertificateInformation
certificatePassword Senha do certificado. string
defaultSslBinding Especifique true para configurar o certificado associado a esse nome de host como o certificado SSL padrão. Se um cliente não enviar o cabeçalho SNI, este será o certificado que será contestado. A propriedade é útil se um serviço tiver vários nomes de host personalizados habilitados e precisar decidir sobre o certificado ssl padrão. A configuração só foi aplicada ao tipo de nome de host do proxy. Bool
encodedCertificate Certificado codificado Base64. string
Nome do host Nome do host a ser configurado no serviço de Gerenciamento de Api. string (obrigatório)
keyVaultId Url para o segredo KeyVault que contém o certificado SSL. Se a URL absoluta contendo a versão for fornecida, a atualização automática do certificado ssl não funcionará. Isso requer que o serviço de Gerenciamento de Api seja configurado com MSI. O segredo deve ser do tipo application/x-pkcs12 string
negociarClientCertificate Especifique true para sempre negociar o certificado do cliente no nome do host. O valor padrão é false. Bool
tipo Tipo de nome de host. 'DeveloperPortal'
'Gestão'
'Portal'
'Procuração'
'Scm' (obrigatório)

Microsoft.ApiManagement/serviço

Designação Descrição Valor
identidade Identidade de serviço gerenciado do serviço de Gerenciamento de Api. ApiManagementServiceIdentity
Localização Localização do recurso. string (obrigatório)
Designação O nome do recurso string

Restrições:
Comprimento mínimo = 1
Comprimento máximo = 1
Padrão = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (obrigatório)
propriedades Propriedades do serviço de Gerenciamento de API. ApiManagementServiceProperties (obrigatório)
SKU Propriedades de SKU do serviço de Gerenciamento de API. ApiManagementServiceSkuProperties (obrigatório)
Etiquetas Tags de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft.ApiManagement/service@2019-12-01"

UserIdentityProperties

Designação Descrição Valor
ID do cliente O ID do cliente da identidade atribuída ao usuário. string
principalId O id principal da identidade atribuída ao usuário. string

VirtualNetworkConfiguration

Designação Descrição Valor
subnetResourceId O ID de recurso completo de uma sub-rede em uma rede virtual na qual implantar o serviço de Gerenciamento de API. string

Restrições:
Padrão = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$