Servizio Microsoft.ApiManagement 2019-12-01
- più recenti
- 2024-06-01-preview
- 2024-05-01
- 2023-09-01-preview
- 2023-05-01-preview
- 2023-03-01-preview
-
09-09-2022 - 2022-08-01
- 2022-04-01-preview
- 2021-12-01-preview
- 2021-08-01
- 2021-04-01-preview
- 2021-01-01-preview
- 2020-12-01
- 2020-06-01-preview
- 2019-12-01
- 2019-12-01-preview
- 2019-01-01
- 2018-06-01-preview
- 2018-01-01
- 2017-03-01
- 10-10-2016
- 2016-07-07
Definizione di risorsa Bicep
Il tipo di risorsa del servizio può essere distribuito con operazioni destinate a:
Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.
Formato risorsa
Per creare una risorsa Microsoft.ApiManagement/service, aggiungere il bicep seguente al modello.
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'
}
}
Valori delle proprietà
AdditionalLocation
Nome | Descrizione | Valore |
---|---|---|
disableGateway | Proprietà valida solo per un servizio Gestione API distribuito in più posizioni. Può essere usato per disabilitare il gateway in questa posizione aggiuntiva. | Bool |
ubicazione | Nome della località dell'area aggiuntiva tra le aree del data center di Azure. | stringa (obbligatorio) |
Sku | Proprietà SKU del servizio Gestione API. | ApiManagementServiceSkuProperties (obbligatorio) |
virtualNetworkConfiguration | Configurazione della rete virtuale per il percorso. | VirtualNetworkConfiguration |
ApiManagementServiceBasePropertiesProprietà personalizzate
Nome | Descrizione | Valore |
---|
ApiManagementServiceIdentity
Nome | Descrizione | Valore |
---|---|---|
digitare | Tipo di identità usata per la risorsa. Il tipo 'SystemAssigned, UserAssigned' include sia un'identità creata in modo implicito che un set di identità assegnate dall'utente. Il tipo 'None' rimuoverà tutte le identità dal servizio. | 'Nessuno' 'SystemAssigned' 'SystemAssigned, UserAssigned' 'UserAssigned' (obbligatorio) |
userAssignedIdentities | Elenco di identità utente associate alla risorsa. Identità utente I riferimenti alle chiavi del dizionario saranno GLI ID risorsa ARM nel formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. |
ApiManagementServiceIdentityUserAssignedIdentities |
ApiManagementServiceIdentityUserAssignedIdentities
Nome | Descrizione | Valore |
---|
ApiManagementServiceProperties
Nome | Descrizione | Valore |
---|---|---|
additionalLocations | Località del data center aggiuntive del servizio Gestione API. | AdditionalLocation [] |
apiVersionConstraint | Vincolo di versione delle API del piano di controllo per il servizio Gestione API. | ApiVersionConstraint |
Certificati | Elenco di certificati che devono essere installati nel servizio Gestione API. Il numero massimo di certificati supportati che è possibile installare è 10. | CertificateConfiguration[] |
customProperties | Proprietà personalizzate del servizio Gestione API. L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 disabiliterà il TLS_RSA_WITH_3DES_EDE_CBC_SHA di crittografia per tutti i protocolli TLS(1.0, 1.1 e 1.2).L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 può essere usata per disabilitare solo TLS 1.1.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 può essere usata per disabilitare TLS 1.0 in un servizio Gestione API.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 può essere usata per disabilitare solo TLS 1.1 per le comunicazioni con back-end.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 può essere usata per disabilitare TLS 1.0 per le comunicazioni con back-end.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 può essere usata per abilitare il protocollo HTTP2 in un servizio Gestione API.Se non si specifica alcuna di queste proprietà nell'operazione PATCH, i valori delle proprietà verranno reimpostati sui valori predefiniti. Per tutte le impostazioni ad eccezione di Http2, il valore predefinito è True se il servizio è stato creato il 1° aprile 2018 e False in caso contrario. Il valore predefinito dell'impostazione Http2 è False .È possibile disabilitare una delle crittografie successive usando le impostazioni 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. Ad esempio: Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256 :false . Il valore predefinito è true per tutti.Nota: le crittografie successive non possono essere disabilitate perché sono richieste dai componenti interni di 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 |
ApiManagementServiceBasePropertiesProprietà personalizzate |
disableGateway | Proprietà valida solo per un servizio Gestione API distribuito in più posizioni. Può essere usato per disabilitare il gateway nell'area master. | Bool |
enableClientCertificate | La proprietà deve essere usata solo per il servizio SKU a consumo. In questo modo viene applicato un certificato client da presentare a ogni richiesta al gateway. In questo modo è anche possibile autenticare il certificato nei criteri nel gateway. | Bool |
hostnameConfigurations | Configurazione del nome host personalizzato del servizio Gestione API. | HostnameConfiguration[] |
notificationSenderEmail | Indirizzo di posta elettronica da cui verrà inviata la notifica. | corda Vincoli: Lunghezza massima = |
publisherEmail | Posta elettronica dell'editore. | corda Vincoli: Lunghezza massima = (obbligatorio) |
publisherName | Nome server di pubblicazione. | corda Vincoli: Lunghezza massima = (obbligatorio) |
virtualNetworkConfiguration | Configurazione della rete virtuale del servizio Gestione API. | VirtualNetworkConfiguration |
virtualNetworkType | Tipo di VPN in cui deve essere configurato il servizio Gestione API. Nessuno (valore predefinito) significa che il servizio Gestione API non fa parte di alcuna rete virtuale, esternamente indica che la distribuzione di Gestione API è configurata all'interno di una rete virtuale con un endpoint con connessione Internet e internal significa che la distribuzione di Gestione API è configurata solo all'interno di una rete virtuale con un endpoint intranet. | 'External' 'Interno' 'Nessuno' |
ApiManagementServiceSkuProperties
Nome | Descrizione | Valore |
---|---|---|
capacità | Capacità dello SKU (numero di unità distribuite dello SKU). Per la capacità SKU a consumo deve essere specificato come 0. | int (obbligatorio) |
nome | Nome dello SKU. | 'Basic' 'Consumo' 'Developer' 'Premium' 'Standard' (obbligatorio) |
ApimResourceTags
Nome | Descrizione | Valore |
---|
ApiVersionConstraint
Nome | Descrizione | Valore |
---|---|---|
minApiVersion | Limitare le chiamate API del piano di controllo al servizio Gestione API con versione uguale o successiva a questo valore. | corda |
CertificateConfiguration
Nome | Descrizione | Valore |
---|---|---|
certificato | Informazioni sul certificato. | CertificateInformation |
certificatePassword | Password certificato. | corda |
encodedCertificate | Certificato con codifica Base64. | corda |
storeName | Percorso dell'archivio certificati System.Security.Cryptography.x509certificates.StoreName. Solo Root e CertificateAuthority sono posizioni valide. | 'CertificateAuthority' 'Root' (obbligatorio) |
CertificateInformation
Nome | Descrizione | Valore |
---|---|---|
scadenza | Data di scadenza del certificato. La data è conforme al formato seguente: yyyy-MM-ddTHH:mm:ssZ come specificato dallo standard ISO 8601. |
stringa (obbligatorio) |
Oggetto | Oggetto del certificato. | stringa (obbligatorio) |
Identificazione personale | Identificazione personale del certificato. | stringa (obbligatorio) |
HostnameConfiguration
Nome | Descrizione | Valore |
---|---|---|
certificato | Informazioni sul certificato. | CertificateInformation |
certificatePassword | Password certificato. | corda |
defaultSslBinding | Specificare true per configurare il certificato associato a questo nome host come certificato SSL predefinito. Se un client non invia l'intestazione SNI, questo sarà il certificato che verrà contestato. La proprietà è utile se un servizio dispone di più nomi host personalizzati abilitati e deve decidere il certificato SSL predefinito. L'impostazione viene applicata solo al tipo nome host proxy. | Bool |
encodedCertificate | Certificato con codifica Base64. | corda |
hostName | Nome host da configurare nel servizio Gestione API. | stringa (obbligatorio) |
keyVaultId | URL del segreto KeyVault contenente il certificato SSL. Se viene fornito l'URL assoluto contenente la versione, l'aggiornamento automatico del certificato SSL non funzionerà. Questo richiede che il servizio Gestione API sia configurato con l'identità del servizio gestito. Il segreto deve essere di tipo 'applicazione/x-pkcs12 | corda |
negotiateClientCertificate | Specificare true per negoziare sempre il certificato client nel nome host. Il valore predefinito è false. | Bool |
digitare | Tipo nome host. | 'DeveloperPortal' 'Gestione' 'Portal' 'Proxy' 'Scm' (obbligatorio) |
Microsoft.ApiManagement/service
Nome | Descrizione | Valore |
---|---|---|
identità | Identità del servizio gestito del servizio Gestione API. | ApiManagementServiceIdentity |
ubicazione | Percorso della risorsa. | stringa (obbligatorio) |
nome | Nome della risorsa | corda Vincoli: Lunghezza minima = 1 Lunghezza massima = 1 Pattern = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (obbligatorio) |
proprietà | Proprietà del servizio Gestione API. | ApiManagementServiceProperties (obbligatorio) |
Sku | Proprietà SKU del servizio Gestione API. | ApiManagementServiceSkuProperties (obbligatorio) |
Tag | Tag delle risorse | Dizionario di nomi e valori di tag. Vedere tag nei modelli |
UserIdentityProperties
Nome | Descrizione | Valore |
---|---|---|
clientId | ID client dell'identità assegnata dall'utente. | corda |
principalId | ID principale dell'identità assegnata dall'utente. | corda |
VirtualNetworkConfiguration
Nome | Descrizione | Valore |
---|---|---|
subnetResourceId | ID risorsa completo di una subnet in una rete virtuale in cui distribuire il servizio Gestione API. | corda Vincoli: Pattern = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$ |
Esempi di avvio rapido
Gli esempi di avvio rapido seguenti distribuiscono questo tipo di risorsa.
Bicep File | Descrizione |
---|---|
gateway applicazione con gestione API interna e app Web | Il gateway applicazione instrada il traffico Internet a un'istanza di Gestione API di rete virtuale (modalità interna) che supporta un'API Web ospitata in un'app Web di Azure. |
Creare un'istanza di Gestione API di livello Premium multiregion | Questo modello illustra come creare un'istanza di Gestione API con posizioni aggiuntive. La posizione primaria corrisponde alla posizione del gruppo di risorse. Per altre posizioni, il modello mostra NorthCentralUs e Stati Uniti orientali 2. La posizione primaria deve essere diversa da posizioni aggiuntive. |
Creare un'istanza di Gestione API con identità MSI | Questo modello crea un'istanza per sviluppatori di Gestione API di Azure con un'identità MSI |
Creare un'istanza di Gestione API usando un modello | Questo modello crea un'istanza per sviluppatori di Gestione API di Azure |
Creare un servizio Gestione API con un endpoint privato | Questo modello creerà un servizio Gestione API, una rete virtuale e un endpoint privato che espone il servizio Gestione API alla rete virtuale. |
Creare un servizio Gestione API con SSL da KeyVault | Questo modello distribuisce un servizio Gestione API configurato con identità assegnata dall'utente. Usa questa identità per recuperare il certificato SSL da KeyVault e lo mantiene aggiornato controllando ogni 4 ore. |
Creare Gestione API nella rete virtuale interna con il gateway app | Questo modello illustra come creare un'istanza di Gestione API di Azure in una rete privata protetta dal gateway applicazione di Azure. |
Distribuire Gestione API in una rete virtuale esterna con IP pubblico | Questo modello illustra come creare un'istanza di Gestione API di Azure nel livello Premium all'interno della subnet della rete virtuale in modalità esterna e configurare le regole del gruppo di sicurezza di rete consigliate nella subnet. L'istanza viene distribuita in due zone di disponibilità. Il modello configura anche un indirizzo IP pubblico dalla sottoscrizione. |
Distribuire Gestione API nella rete virtuale interna con ip pubblico | Questo modello illustra come creare un'istanza di Gestione API di Azure nel livello Premium all'interno della subnet della rete virtuale in modalità interna e configurare le regole del gruppo di sicurezza di rete consigliate nella subnet. L'istanza viene distribuita in due zone di disponibilità. Il modello configura anche un indirizzo IP pubblico dalla sottoscrizione. |
Distribuire Gestione API in zone di disponibilità | Questo modello crea un'istanza Premium di Gestione API di Azure e viene distribuita in una zona di disponibilità |
Distribuire Gestione API con un'istanza esterna di Cache Redis di Azure | Questo modello illustra come creare un'istanza di Gestione API di Azure nel livello a consumo con un'istanza esterna di Cache Redis di Azure come cache esterna di Gestione API. |
Frontdoor Standard/Premium con di origine di Gestione API | Questo modello crea un'istanza di Frontdoor Premium e di Gestione API e usa un gruppo di sicurezza di rete e un criterio di Gestione API globale per verificare che il traffico provenga dall'origine di Frontdoor. |
Definizione di risorsa del modello di Resource Manager
Il tipo di risorsa del servizio può essere distribuito con operazioni destinate a:
Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.
Formato risorsa
Per creare una risorsa Microsoft.ApiManagement/service, aggiungere il codice JSON seguente al modello.
{
"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"
}
}
Valori delle proprietà
AdditionalLocation
Nome | Descrizione | Valore |
---|---|---|
disableGateway | Proprietà valida solo per un servizio Gestione API distribuito in più posizioni. Può essere usato per disabilitare il gateway in questa posizione aggiuntiva. | Bool |
ubicazione | Nome della località dell'area aggiuntiva tra le aree del data center di Azure. | stringa (obbligatorio) |
Sku | Proprietà SKU del servizio Gestione API. | ApiManagementServiceSkuProperties (obbligatorio) |
virtualNetworkConfiguration | Configurazione della rete virtuale per il percorso. | VirtualNetworkConfiguration |
ApiManagementServiceBasePropertiesProprietà personalizzate
Nome | Descrizione | Valore |
---|
ApiManagementServiceIdentity
Nome | Descrizione | Valore |
---|---|---|
digitare | Tipo di identità usata per la risorsa. Il tipo 'SystemAssigned, UserAssigned' include sia un'identità creata in modo implicito che un set di identità assegnate dall'utente. Il tipo 'None' rimuoverà tutte le identità dal servizio. | 'Nessuno' 'SystemAssigned' 'SystemAssigned, UserAssigned' 'UserAssigned' (obbligatorio) |
userAssignedIdentities | Elenco di identità utente associate alla risorsa. Identità utente I riferimenti alle chiavi del dizionario saranno GLI ID risorsa ARM nel formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. |
ApiManagementServiceIdentityUserAssignedIdentities |
ApiManagementServiceIdentityUserAssignedIdentities
Nome | Descrizione | Valore |
---|
ApiManagementServiceProperties
Nome | Descrizione | Valore |
---|---|---|
additionalLocations | Località del data center aggiuntive del servizio Gestione API. | AdditionalLocation [] |
apiVersionConstraint | Vincolo di versione delle API del piano di controllo per il servizio Gestione API. | ApiVersionConstraint |
Certificati | Elenco di certificati che devono essere installati nel servizio Gestione API. Il numero massimo di certificati supportati che è possibile installare è 10. | CertificateConfiguration[] |
customProperties | Proprietà personalizzate del servizio Gestione API. L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 disabiliterà il TLS_RSA_WITH_3DES_EDE_CBC_SHA di crittografia per tutti i protocolli TLS(1.0, 1.1 e 1.2).L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 può essere usata per disabilitare solo TLS 1.1.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 può essere usata per disabilitare TLS 1.0 in un servizio Gestione API.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 può essere usata per disabilitare solo TLS 1.1 per le comunicazioni con back-end.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 può essere usata per disabilitare TLS 1.0 per le comunicazioni con back-end.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 può essere usata per abilitare il protocollo HTTP2 in un servizio Gestione API.Se non si specifica alcuna di queste proprietà nell'operazione PATCH, i valori delle proprietà verranno reimpostati sui valori predefiniti. Per tutte le impostazioni ad eccezione di Http2, il valore predefinito è True se il servizio è stato creato il 1° aprile 2018 e False in caso contrario. Il valore predefinito dell'impostazione Http2 è False .È possibile disabilitare una delle crittografie successive usando le impostazioni 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. Ad esempio: Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256 :false . Il valore predefinito è true per tutti.Nota: le crittografie successive non possono essere disabilitate perché sono richieste dai componenti interni di 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 |
ApiManagementServiceBasePropertiesProprietà personalizzate |
disableGateway | Proprietà valida solo per un servizio Gestione API distribuito in più posizioni. Può essere usato per disabilitare il gateway nell'area master. | Bool |
enableClientCertificate | La proprietà deve essere usata solo per il servizio SKU a consumo. In questo modo viene applicato un certificato client da presentare a ogni richiesta al gateway. In questo modo è anche possibile autenticare il certificato nei criteri nel gateway. | Bool |
hostnameConfigurations | Configurazione del nome host personalizzato del servizio Gestione API. | HostnameConfiguration[] |
notificationSenderEmail | Indirizzo di posta elettronica da cui verrà inviata la notifica. | corda Vincoli: Lunghezza massima = |
publisherEmail | Posta elettronica dell'editore. | corda Vincoli: Lunghezza massima = (obbligatorio) |
publisherName | Nome server di pubblicazione. | corda Vincoli: Lunghezza massima = (obbligatorio) |
virtualNetworkConfiguration | Configurazione della rete virtuale del servizio Gestione API. | VirtualNetworkConfiguration |
virtualNetworkType | Tipo di VPN in cui deve essere configurato il servizio Gestione API. Nessuno (valore predefinito) significa che il servizio Gestione API non fa parte di alcuna rete virtuale, esternamente indica che la distribuzione di Gestione API è configurata all'interno di una rete virtuale con un endpoint con connessione Internet e internal significa che la distribuzione di Gestione API è configurata solo all'interno di una rete virtuale con un endpoint intranet. | 'External' 'Interno' 'Nessuno' |
ApiManagementServiceSkuProperties
Nome | Descrizione | Valore |
---|---|---|
capacità | Capacità dello SKU (numero di unità distribuite dello SKU). Per la capacità SKU a consumo deve essere specificato come 0. | int (obbligatorio) |
nome | Nome dello SKU. | 'Basic' 'Consumo' 'Developer' 'Premium' 'Standard' (obbligatorio) |
ApimResourceTags
Nome | Descrizione | Valore |
---|
ApiVersionConstraint
Nome | Descrizione | Valore |
---|---|---|
minApiVersion | Limitare le chiamate API del piano di controllo al servizio Gestione API con versione uguale o successiva a questo valore. | corda |
CertificateConfiguration
Nome | Descrizione | Valore |
---|---|---|
certificato | Informazioni sul certificato. | CertificateInformation |
certificatePassword | Password certificato. | corda |
encodedCertificate | Certificato con codifica Base64. | corda |
storeName | Percorso dell'archivio certificati System.Security.Cryptography.x509certificates.StoreName. Solo Root e CertificateAuthority sono posizioni valide. | 'CertificateAuthority' 'Root' (obbligatorio) |
CertificateInformation
Nome | Descrizione | Valore |
---|---|---|
scadenza | Data di scadenza del certificato. La data è conforme al formato seguente: yyyy-MM-ddTHH:mm:ssZ come specificato dallo standard ISO 8601. |
stringa (obbligatorio) |
Oggetto | Oggetto del certificato. | stringa (obbligatorio) |
Identificazione personale | Identificazione personale del certificato. | stringa (obbligatorio) |
HostnameConfiguration
Nome | Descrizione | Valore |
---|---|---|
certificato | Informazioni sul certificato. | CertificateInformation |
certificatePassword | Password certificato. | corda |
defaultSslBinding | Specificare true per configurare il certificato associato a questo nome host come certificato SSL predefinito. Se un client non invia l'intestazione SNI, questo sarà il certificato che verrà contestato. La proprietà è utile se un servizio dispone di più nomi host personalizzati abilitati e deve decidere il certificato SSL predefinito. L'impostazione viene applicata solo al tipo nome host proxy. | Bool |
encodedCertificate | Certificato con codifica Base64. | corda |
hostName | Nome host da configurare nel servizio Gestione API. | stringa (obbligatorio) |
keyVaultId | URL del segreto KeyVault contenente il certificato SSL. Se viene fornito l'URL assoluto contenente la versione, l'aggiornamento automatico del certificato SSL non funzionerà. Questo richiede che il servizio Gestione API sia configurato con l'identità del servizio gestito. Il segreto deve essere di tipo 'applicazione/x-pkcs12 | corda |
negotiateClientCertificate | Specificare true per negoziare sempre il certificato client nel nome host. Il valore predefinito è false. | Bool |
digitare | Tipo nome host. | 'DeveloperPortal' 'Gestione' 'Portal' 'Proxy' 'Scm' (obbligatorio) |
Microsoft.ApiManagement/service
Nome | Descrizione | Valore |
---|---|---|
apiVersion | Versione dell'API | '2019-12-01' |
identità | Identità del servizio gestito del servizio Gestione API. | ApiManagementServiceIdentity |
ubicazione | Percorso della risorsa. | stringa (obbligatorio) |
nome | Nome della risorsa | corda Vincoli: Lunghezza minima = 1 Lunghezza massima = 1 Pattern = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (obbligatorio) |
proprietà | Proprietà del servizio Gestione API. | ApiManagementServiceProperties (obbligatorio) |
Sku | Proprietà SKU del servizio Gestione API. | ApiManagementServiceSkuProperties (obbligatorio) |
Tag | Tag delle risorse | Dizionario di nomi e valori di tag. Vedere tag nei modelli |
digitare | Tipo di risorsa | 'Microsoft.ApiManagement/service' |
UserIdentityProperties
Nome | Descrizione | Valore |
---|---|---|
clientId | ID client dell'identità assegnata dall'utente. | corda |
principalId | ID principale dell'identità assegnata dall'utente. | corda |
VirtualNetworkConfiguration
Nome | Descrizione | Valore |
---|---|---|
subnetResourceId | ID risorsa completo di una subnet in una rete virtuale in cui distribuire il servizio Gestione API. | corda Vincoli: Pattern = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$ |
Modelli di avvio rapido
I modelli di avvio rapido seguenti distribuiscono questo tipo di risorsa.
Sagoma | Descrizione |
---|---|
gateway applicazione con gestione API interna e app Web |
Il gateway applicazione instrada il traffico Internet a un'istanza di Gestione API di rete virtuale (modalità interna) che supporta un'API Web ospitata in un'app Web di Azure. |
Creare un'istanza di Gestione API di livello Premium multiregion |
Questo modello illustra come creare un'istanza di Gestione API con posizioni aggiuntive. La posizione primaria corrisponde alla posizione del gruppo di risorse. Per altre posizioni, il modello mostra NorthCentralUs e Stati Uniti orientali 2. La posizione primaria deve essere diversa da posizioni aggiuntive. |
Creare un'istanza di Gestione API e tutte le risorse secondarie usando modello |
Questo modello illustra come creare un servizio Gestione API e configurare le sottoentità |
Creare un'istanza di Gestione API con identità MSI |
Questo modello crea un'istanza per sviluppatori di Gestione API di Azure con un'identità MSI |
Creare un'istanza di Gestione API usando un modello |
Questo modello crea un'istanza per sviluppatori di Gestione API di Azure |
Creare un'istanza di Gestione API con nomi host personalizzati |
Questo modello illustra come creare un'istanza di Gestione API di Azure con il nome host personalizzato per il portale e più nomi host personalizzati per il proxy |
Creare un servizio Gestione API con un endpoint privato |
Questo modello creerà un servizio Gestione API, una rete virtuale e un endpoint privato che espone il servizio Gestione API alla rete virtuale. |
Creare un servizio Gestione API con SSL da KeyVault |
Questo modello distribuisce un servizio Gestione API configurato con identità assegnata dall'utente. Usa questa identità per recuperare il certificato SSL da KeyVault e lo mantiene aggiornato controllando ogni 4 ore. |
Creare e monitorare l'istanza di Gestione API |
Questo modello crea un'istanza del servizio Gestione API di Azure e dell'area di lavoro Log Analytics e configura il monitoraggio per il servizio Gestione API con Log Analytics |
Creare Gestione API nella rete virtuale interna con il gateway app |
Questo modello illustra come creare un'istanza di Gestione API di Azure in una rete privata protetta dal gateway applicazione di Azure. |
Creare Gestione API con ssl proxy personalizzato con KeyVault |
Questo modello illustra come creare un'istanza di Gestione API di Azure e configurare il nome host personalizzato per il proxy con certificato SSL dall'insieme di credenziali delle chiavi. |
Creare frontdoor di Azure davanti a Gestione API di Azure |
Questo esempio illustra come usare Frontdoor di Azure come servizio di bilanciamento del carico globale davanti a Gestione API di Azure. |
Distribuire Gestione API in una rete virtuale esterna con IP pubblico |
Questo modello illustra come creare un'istanza di Gestione API di Azure nel livello Premium all'interno della subnet della rete virtuale in modalità esterna e configurare le regole del gruppo di sicurezza di rete consigliate nella subnet. L'istanza viene distribuita in due zone di disponibilità. Il modello configura anche un indirizzo IP pubblico dalla sottoscrizione. |
Distribuire Gestione API nella rete virtuale interna con ip pubblico |
Questo modello illustra come creare un'istanza di Gestione API di Azure nel livello Premium all'interno della subnet della rete virtuale in modalità interna e configurare le regole del gruppo di sicurezza di rete consigliate nella subnet. L'istanza viene distribuita in due zone di disponibilità. Il modello configura anche un indirizzo IP pubblico dalla sottoscrizione. |
Distribuire Gestione API in zone di disponibilità |
Questo modello crea un'istanza Premium di Gestione API di Azure e viene distribuita in una zona di disponibilità |
Distribuire Gestione API con un'istanza esterna di Cache Redis di Azure |
Questo modello illustra come creare un'istanza di Gestione API di Azure nel livello a consumo con un'istanza esterna di Cache Redis di Azure come cache esterna di Gestione API. |
Frontdoor Standard/Premium con di origine di Gestione API |
Questo modello crea un'istanza di Frontdoor Premium e di Gestione API e usa un gruppo di sicurezza di rete e un criterio di Gestione API globale per verificare che il traffico provenga dall'origine di Frontdoor. |
Definizione di risorsa Terraform (provider AzAPI)
Il tipo di risorsa del servizio può essere distribuito con operazioni destinate a:
- gruppi di risorse
Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.
Formato risorsa
Per creare una risorsa Microsoft.ApiManagement/service, aggiungere il codice Terraform seguente al modello.
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"
}
})
}
Valori delle proprietà
AdditionalLocation
Nome | Descrizione | Valore |
---|---|---|
disableGateway | Proprietà valida solo per un servizio Gestione API distribuito in più posizioni. Può essere usato per disabilitare il gateway in questa posizione aggiuntiva. | Bool |
ubicazione | Nome della località dell'area aggiuntiva tra le aree del data center di Azure. | stringa (obbligatorio) |
Sku | Proprietà SKU del servizio Gestione API. | ApiManagementServiceSkuProperties (obbligatorio) |
virtualNetworkConfiguration | Configurazione della rete virtuale per il percorso. | VirtualNetworkConfiguration |
ApiManagementServiceBasePropertiesProprietà personalizzate
Nome | Descrizione | Valore |
---|
ApiManagementServiceIdentity
Nome | Descrizione | Valore |
---|---|---|
digitare | Tipo di identità usata per la risorsa. Il tipo 'SystemAssigned, UserAssigned' include sia un'identità creata in modo implicito che un set di identità assegnate dall'utente. Il tipo 'None' rimuoverà tutte le identità dal servizio. | 'Nessuno' 'SystemAssigned' 'SystemAssigned, UserAssigned' 'UserAssigned' (obbligatorio) |
userAssignedIdentities | Elenco di identità utente associate alla risorsa. Identità utente I riferimenti alle chiavi del dizionario saranno GLI ID risorsa ARM nel formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. |
ApiManagementServiceIdentityUserAssignedIdentities |
ApiManagementServiceIdentityUserAssignedIdentities
Nome | Descrizione | Valore |
---|
ApiManagementServiceProperties
Nome | Descrizione | Valore |
---|---|---|
additionalLocations | Località del data center aggiuntive del servizio Gestione API. | AdditionalLocation [] |
apiVersionConstraint | Vincolo di versione delle API del piano di controllo per il servizio Gestione API. | ApiVersionConstraint |
Certificati | Elenco di certificati che devono essere installati nel servizio Gestione API. Il numero massimo di certificati supportati che è possibile installare è 10. | CertificateConfiguration[] |
customProperties | Proprietà personalizzate del servizio Gestione API. L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 disabiliterà il TLS_RSA_WITH_3DES_EDE_CBC_SHA di crittografia per tutti i protocolli TLS(1.0, 1.1 e 1.2).L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 può essere usata per disabilitare solo TLS 1.1.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 può essere usata per disabilitare TLS 1.0 in un servizio Gestione API.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 può essere usata per disabilitare solo TLS 1.1 per le comunicazioni con back-end.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 può essere usata per disabilitare TLS 1.0 per le comunicazioni con back-end.L'impostazione Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 può essere usata per abilitare il protocollo HTTP2 in un servizio Gestione API.Se non si specifica alcuna di queste proprietà nell'operazione PATCH, i valori delle proprietà verranno reimpostati sui valori predefiniti. Per tutte le impostazioni ad eccezione di Http2, il valore predefinito è True se il servizio è stato creato il 1° aprile 2018 e False in caso contrario. Il valore predefinito dell'impostazione Http2 è False .È possibile disabilitare una delle crittografie successive usando le impostazioni 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. Ad esempio: Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256 :false . Il valore predefinito è true per tutti.Nota: le crittografie successive non possono essere disabilitate perché sono richieste dai componenti interni di 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 |
ApiManagementServiceBasePropertiesProprietà personalizzate |
disableGateway | Proprietà valida solo per un servizio Gestione API distribuito in più posizioni. Può essere usato per disabilitare il gateway nell'area master. | Bool |
enableClientCertificate | La proprietà deve essere usata solo per il servizio SKU a consumo. In questo modo viene applicato un certificato client da presentare a ogni richiesta al gateway. In questo modo è anche possibile autenticare il certificato nei criteri nel gateway. | Bool |
hostnameConfigurations | Configurazione del nome host personalizzato del servizio Gestione API. | HostnameConfiguration[] |
notificationSenderEmail | Indirizzo di posta elettronica da cui verrà inviata la notifica. | corda Vincoli: Lunghezza massima = |
publisherEmail | Posta elettronica dell'editore. | corda Vincoli: Lunghezza massima = (obbligatorio) |
publisherName | Nome server di pubblicazione. | corda Vincoli: Lunghezza massima = (obbligatorio) |
virtualNetworkConfiguration | Configurazione della rete virtuale del servizio Gestione API. | VirtualNetworkConfiguration |
virtualNetworkType | Tipo di VPN in cui deve essere configurato il servizio Gestione API. Nessuno (valore predefinito) significa che il servizio Gestione API non fa parte di alcuna rete virtuale, esternamente indica che la distribuzione di Gestione API è configurata all'interno di una rete virtuale con un endpoint con connessione Internet e internal significa che la distribuzione di Gestione API è configurata solo all'interno di una rete virtuale con un endpoint intranet. | 'External' 'Interno' 'Nessuno' |
ApiManagementServiceSkuProperties
Nome | Descrizione | Valore |
---|---|---|
capacità | Capacità dello SKU (numero di unità distribuite dello SKU). Per la capacità SKU a consumo deve essere specificato come 0. | int (obbligatorio) |
nome | Nome dello SKU. | 'Basic' 'Consumo' 'Developer' 'Premium' 'Standard' (obbligatorio) |
ApimResourceTags
Nome | Descrizione | Valore |
---|
ApiVersionConstraint
Nome | Descrizione | Valore |
---|---|---|
minApiVersion | Limitare le chiamate API del piano di controllo al servizio Gestione API con versione uguale o successiva a questo valore. | corda |
CertificateConfiguration
Nome | Descrizione | Valore |
---|---|---|
certificato | Informazioni sul certificato. | CertificateInformation |
certificatePassword | Password certificato. | corda |
encodedCertificate | Certificato con codifica Base64. | corda |
storeName | Percorso dell'archivio certificati System.Security.Cryptography.x509certificates.StoreName. Solo Root e CertificateAuthority sono posizioni valide. | 'CertificateAuthority' 'Root' (obbligatorio) |
CertificateInformation
Nome | Descrizione | Valore |
---|---|---|
scadenza | Data di scadenza del certificato. La data è conforme al formato seguente: yyyy-MM-ddTHH:mm:ssZ come specificato dallo standard ISO 8601. |
stringa (obbligatorio) |
Oggetto | Oggetto del certificato. | stringa (obbligatorio) |
Identificazione personale | Identificazione personale del certificato. | stringa (obbligatorio) |
HostnameConfiguration
Nome | Descrizione | Valore |
---|---|---|
certificato | Informazioni sul certificato. | CertificateInformation |
certificatePassword | Password certificato. | corda |
defaultSslBinding | Specificare true per configurare il certificato associato a questo nome host come certificato SSL predefinito. Se un client non invia l'intestazione SNI, questo sarà il certificato che verrà contestato. La proprietà è utile se un servizio dispone di più nomi host personalizzati abilitati e deve decidere il certificato SSL predefinito. L'impostazione viene applicata solo al tipo nome host proxy. | Bool |
encodedCertificate | Certificato con codifica Base64. | corda |
hostName | Nome host da configurare nel servizio Gestione API. | stringa (obbligatorio) |
keyVaultId | URL del segreto KeyVault contenente il certificato SSL. Se viene fornito l'URL assoluto contenente la versione, l'aggiornamento automatico del certificato SSL non funzionerà. Questo richiede che il servizio Gestione API sia configurato con l'identità del servizio gestito. Il segreto deve essere di tipo 'applicazione/x-pkcs12 | corda |
negotiateClientCertificate | Specificare true per negoziare sempre il certificato client nel nome host. Il valore predefinito è false. | Bool |
digitare | Tipo nome host. | 'DeveloperPortal' 'Gestione' 'Portal' 'Proxy' 'Scm' (obbligatorio) |
Microsoft.ApiManagement/service
Nome | Descrizione | Valore |
---|---|---|
identità | Identità del servizio gestito del servizio Gestione API. | ApiManagementServiceIdentity |
ubicazione | Percorso della risorsa. | stringa (obbligatorio) |
nome | Nome della risorsa | corda Vincoli: Lunghezza minima = 1 Lunghezza massima = 1 Pattern = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (obbligatorio) |
proprietà | Proprietà del servizio Gestione API. | ApiManagementServiceProperties (obbligatorio) |
Sku | Proprietà SKU del servizio Gestione API. | ApiManagementServiceSkuProperties (obbligatorio) |
Tag | Tag delle risorse | Dizionario di nomi e valori di tag. |
digitare | Tipo di risorsa | "Microsoft.ApiManagement/service@2019-12-01" |
UserIdentityProperties
Nome | Descrizione | Valore |
---|---|---|
clientId | ID client dell'identità assegnata dall'utente. | corda |
principalId | ID principale dell'identità assegnata dall'utente. | corda |
VirtualNetworkConfiguration
Nome | Descrizione | Valore |
---|---|---|
subnetResourceId | ID risorsa completo di una subnet in una rete virtuale in cui distribuire il servizio Gestione API. | corda Vincoli: Pattern = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$ |