New-AzApiManagement

Crea una distribuzione Gestione API.

Sintassi

New-AzApiManagement
   -ResourceGroupName <String>
   -Name <String>
   -Location <String>
   -Organization <String>
   -AdminEmail <String>
   [-Sku <string>]
   [-Capacity <Int32>]
   [-VpnType <PsApiManagementVpnType>]
   [-VirtualNetwork <PsApiManagementVirtualNetwork>]
   [-Tag <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
   [-AdditionalRegions <PsApiManagementRegion[]>]
   [-CustomHostnameConfiguration <PsApiManagementCustomHostNameConfiguration[]>]
   [-SystemCertificateConfiguration <PsApiManagementSystemCertificate[]>]
   [-SslSetting <PsApiManagementSslSetting>]
   [-SystemAssignedIdentity]
   [-UserAssignedIdentity <String[]>]
   [-EnableClientCertificate]
   [-Zone <String[]>]
   [-DisableGateway <Boolean>]
   [-MinimalControlPlaneApiVersion <String>]
   [-PublicNetworkAccess <String>]
   [-PublicIpAddressId <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Descrizione

Il cmdlet New-AzApiManagement crea una distribuzione Gestione API in Azure Gestione API.

Esempio

Esempio 1: Creare un servizio di Gestione API livello sviluppatore

New-AzApiManagement -ResourceGroupName "ContosoGroup02" -Name "ContosoApi2" -Location "Central US" -Organization "Contoso" -AdminEmail "admin@contoso.com"

PublicIPAddresses                     : {104.43.240.65}
PrivateIPAddresses                    :
Id                                    : /subscriptions/a200340d-6b82-494d-9dbf-687ba6e33f9e/resourceGroups/ContosoGroup02/providers/Microsoft.ApiManagement/service/ContosoApi2
Name                                  : ContosoApi2
Location                              : Central US
Sku                                   : Developer
Capacity                              : 1
CreatedTimeUtc                        : 2/24/2020 10:34:12 PM
ProvisioningState                     : Succeeded
RuntimeUrl                            : https://contosoapi2.azure-api.net
RuntimeRegionalUrl                    : https://contosoapi2-centralus-01.regional.azure-api.net
PortalUrl                             : https://contosoapi2.portal.azure-api.net
DeveloperPortalUrl                    : https://contosoapi2.developer.azure-api.net
ManagementApiUrl                      : https://contosoapi2.management.azure-api.net
ScmUrl                                : https://contosoapi2.scm.azure-api.net
PublisherEmail                        : admin@contoso.com
OrganizationName                      : Contoso
NotificationSenderEmail               : apimgmt-noreply@mail.windowsazure.com
VirtualNetwork                        :
VpnType                               : None
PortalCustomHostnameConfiguration     :
ProxyCustomHostnameConfiguration      : {contosoapi2.azure-api.net}
ManagementCustomHostnameConfiguration :
ScmCustomHostnameConfiguration        :
DeveloperPortalHostnameConfiguration  :
SystemCertificates                    :
Tags                                  : {}
AdditionalRegions                     : {}
SslSetting                            : Microsoft.Azure.Commands.ApiManagement.Models.PsApiManagementSslSetting
Identity                              :
EnableClientCertificate               :
ResourceGroupName                     : ContosoGroup02

Questo comando crea un servizio di Gestione API livello sviluppatore. Il comando specifica l'organizzazione e l'indirizzo dell'amministratore. Il comando non specifica il parametro SKU . Di conseguenza, il cmdlet usa il valore predefinito developer.

Esempio 2: Creare un servizio di livello Standard con tre unità

New-AzApiManagement -ResourceGroupName "ContosoGroup02" -Name "ContosoApi" -Location "Central US" -Organization "Contoso" -AdminEmail "admin@contoso.com" -Sku Standard -Capacity 3

Questo comando crea un servizio di livello Standard Gestione API con tre unità.

Esempio 3: Creare un servizio livello a consumo

New-AzApiManagement -ResourceGroupName Api-Default-North-Europe -Name consumptionskuservice -Location 'West Europe' -Sku Consumption -Organization microsoft -AdminEmail contoso@contoso.com -SystemAssignedIdentity -EnableClientCertificate

PublicIPAddresses                     :
PrivateIPAddresses                    :
Id                                    : /subscriptions/subid/resourceGroups/Api-Default-North-Europe/providers/Microsoft.ApiManagement/service/consumptionskuservice
Name                                  : consumptionskuservice
Location                              : West Europe
Sku                                   : Consumption
Capacity                              : 0
ProvisioningState                     : Succeeded
RuntimeUrl                            : https://consumptionskuservice.azure-api.net
PortalCustomHostnameConfiguration     :
ProxyCustomHostnameConfiguration      : {consumptionskuservice.azure-api.net}
ManagementCustomHostnameConfiguration :
ScmCustomHostnameConfiguration        :
DeveloperPortalHostnameConfiguration  :
SystemCertificates                    :
Tags                                  : {}
AdditionalRegions                     : {}
SslSetting                            : Microsoft.Azure.Commands.ApiManagement.Models.PsApiManagementSslSetting
Identity                              : Microsoft.Azure.Commands.ApiManagement.Models.PsApiManagementServiceIdentity
EnableClientCertificate               : True
ResourceGroupName                     : Api-Default-North-Europe

Questo comando crea un livello di consumo Gestione API servizio con il certificato client abilitato in Europa occidentale.

Esempio 4: Creare un servizio Gestione API e Abilitare il protocollo TLS 1.0

$enableTls=@{"Tls10" = "True"}
$sslSetting = New-AzApiManagementSslSetting -FrontendProtocol $enableTls -BackendProtocol $enableTls
New-AzApiManagement -ResourceGroupName Api-Default-CentralUS -Name "testtlspowershell" -Sku Standard -Location "CentralUS" -Organization "Microsoft" -AdminEmail "bar@contoso.com" -SslSetting $sslSetting

PublicIPAddresses                     : {23.99.140.18}
PrivateIPAddresses                    :
Id                                    : /subscriptions/subid/resourceGroups/Api-Default-CentralUS/providers/Microsoft.ApiManagement/service/testtlspowershell
Name                                  : testtlspowershell
Location                              : Central US
Sku                                   : Standard
Capacity                              : 1
ProvisioningState                     : Succeeded
RuntimeUrl                            : https://testtlspowershell.azure-api.net
RuntimeRegionalUrl                    : https://testtlspowershell-centralus-01.regional.azure-api.net
PortalUrl                             : https://testtlspowershell.portal.azure-api.net
ManagementApiUrl                      : https://testtlspowershell.management.azure-api.net
ScmUrl                                : https://testtlspowershell.scm.azure-api.net
PublisherEmail                        : bar@contoso.com
OrganizationName                      : Microsoft
NotificationSenderEmail               : apimgmt-noreply@mail.windowsazure.com
VirtualNetwork                        :
VpnType                               : None
PortalCustomHostnameConfiguration     :
ProxyCustomHostnameConfiguration      : {testtlspowershell.azure-api.net}
ManagementCustomHostnameConfiguration :
ScmCustomHostnameConfiguration        :
DeveloperPortalHostnameConfiguration  :
SystemCertificates                    :
Tags                                  : {}
AdditionalRegions                     : {}
SslSetting                            : Microsoft.Azure.Commands.ApiManagement.Models.PsApiManagementSslSetting
Identity                              :
EnableClientCertificate               :
ResourceGroupName                     : Api-Default-CentralUS

Questo comando crea un servizio Gestione API SKU Standard e Abilita TLS 1.0 nel client front-end al gateway ApiManagement e al client back-end tra Il gateway ApiManagement e il back-end.

Esempio 5: Creare un servizio di Gestione API in zone di disponibilità

New-AzApiManagement -ResourceGroupName "contoso-rg" -Name "apim-test-pshell-azs" -Location "Central US" -Organization "Contoso" -AdminEmail "admin@contoso.com" -Sku Premium -Capacity 3 -Zone @("1","2","3")

PublicIPAddresses                     : {52.238.252.170}
PrivateIPAddresses                    :
Id                                    : /subscriptions/aa7def4e-6bcd-4b28-b8d5-7613a618e753/resourceGroups/contoso-rg/providers/Microsoft.ApiManagement/service/apim-test-pshell-azs
Name                                  : apim-test-pshell-azs
Location                              : Central US
Sku                                   : Premium
Capacity                              : 3
CreatedTimeUtc                        : 7/30/2021 7:47:12 PM
ProvisioningState                     : Succeeded
RuntimeUrl                            : https://apim-test-pshell-azs.azure-api.net
RuntimeRegionalUrl                    : https://apim-test-pshell-azs-centralus-01.regional.azure-api.net
PortalUrl                             : https://apim-test-pshell-azs.portal.azure-api.net
DeveloperPortalUrl                    : https://apim-test-pshell-azs.developer.azure-api.net
ManagementApiUrl                      : https://apim-test-pshell-azs.management.azure-api.net
ScmUrl                                : https://apim-test-pshell-azs.scm.azure-api.net
PublisherEmail                        : admin@contoso.com
OrganizationName                      : Contoso
NotificationSenderEmail               : apimgmt-noreply@mail.windowsazure.com
VirtualNetwork                        :
VpnType                               : None
PortalCustomHostnameConfiguration     :
ProxyCustomHostnameConfiguration      : {apim-test-pshell-azs.azure-api.net}
ManagementCustomHostnameConfiguration :
ScmCustomHostnameConfiguration        :
DeveloperPortalHostnameConfiguration  :
SystemCertificates                    :
Tags                                  : {}
AdditionalRegions                     : {}
SslSetting                            : Microsoft.Azure.Commands.ApiManagement.Models.PsApiManagementSslSetting
Identity                              :
EnableClientCertificate               :
Zone                                  : {1, 2, 3}
DisableGateway                        : False
MinimalControlPlaneApiVersion         :
ResourceGroupName                     : contoso-rg

Questo comando crea un servizio Gestione API SKU Premium in zone

Esempio 6: Creare un servizio di Gestione API in modalità interna in Rete virtuale con Stv2

$virtualNetwork = New-AzApiManagementVirtualNetwork -SubnetResourceId "/subscriptions/4f5285a3-9fd7-40ad-91b1-d8fc3823983d/resourceGroups/contosogroup/providers/Microsoft.Network/virtualNetworks/apimvnet/subnets/ps"
$publicIpAddressId = "/subscriptions/4f5285a3-9fd7-40ad-91b1-d8fc3823983d/resourceGroups/contosogroup/providers/Microsoft.Network/publicIPAddresses/apim-external-vnet-ipv4"
New-AzApiManagement -ResourceGroupName "contosogroup" -Location "West US2" -Name "pstestinternalvnet2" -Organization "Contoso" -AdminEmail "admin@contoso.com" -VirtualNetwork $virtualNetwork -VpnType "Internal" -Sku "Premium" -PublicIpAddressId $publicIpAddressId

PublicIPAddresses                     : {20.99.249.73}
PrivateIPAddresses                    : {10.0.2.4}
Id                                    : /subscriptions/4f5285a3-9fd7-40ad-91b1-d8fc3823983d/resourceGroups/contosogroup/providers/Microsoft.ApiManagement/service/pstestinternalvnet2
Name                                  : pstestinternalvnet2
Location                              : West US 2
Sku                                   : Premium
Capacity                              : 1
CreatedTimeUtc                        : 3/24/2022 11:09:57 PM
ProvisioningState                     : Succeeded
RuntimeUrl                            : https://pstestinternalvnet2.azure-api.net
RuntimeRegionalUrl                    : https://pstestinternalvnet2-westus2-01.regional.azure-api.net
PortalUrl                             : https://pstestinternalvnet2.portal.azure-api.net
DeveloperPortalUrl                    : https://pstestinternalvnet2.developer.azure-api.net
ManagementApiUrl                      : https://pstestinternalvnet2.management.azure-api.net
ScmUrl                                : https://pstestinternalvnet2.scm.azure-api.net
PublisherEmail                        : admin@contoso.com
OrganizationName                      : Contoso
NotificationSenderEmail               : apimgmt-noreply@mail.windowsazure.com
VirtualNetwork                        : Microsoft.Azure.Commands.ApiManagement.Models.PsApiManagementVirtualNetwork
VpnType                               : Internal
PortalCustomHostnameConfiguration     :
ProxyCustomHostnameConfiguration      : {pstestinternalvnet2.azure-api.net}
ManagementCustomHostnameConfiguration :
ScmCustomHostnameConfiguration        :
DeveloperPortalHostnameConfiguration  :
SystemCertificates                    :
Tags                                  : {}
AdditionalRegions                     : {}
SslSetting                            : Microsoft.Azure.Commands.ApiManagement.Models.PsApiManagementSslSetting
Identity                              :
EnableClientCertificate               :
Zone                                  :
DisableGateway                        :
MinimalControlPlaneApiVersion         :
PublicIpAddressId                     : /subscriptions/4f5285a3-9fd7-40ad-91b1-d8fc3823983d/resourceGroups/contosogroup/providers/Microsoft.Network/publicIPAddresses/apim-external-vnet-ipv4
PlatformVersion                       : stv2
PublicNetworkAccess                   : Enabled
PrivateEndpointConnections            :
ResourceGroupName                     : contosogroup

Il cmdlet distribuisce il servizio Gestione API in Rete virtuale usando la versione della piattaforma stv2.

Esempio 7: Creare un servizio Gestione API per una rete virtuale esterna per Stv1

$virtualNetwork = New-AzApiManagementVirtualNetwork -SubnetResourceId "/subscriptions/a8ff56dc-3bc7-4174-b1e8-3726ab15d0e2/resourceGroups/ContosoGroup/providers/Microsoft.Network/virtualNetworks/westUsVirtualNetwork/subnets/backendSubnet"
New-AzApiManagement -ResourceGroupName "ContosoGroup" -Location "West US" -Name "ContosoApi" -Organization Contoso -AdminEmail admin@contoso.com -VirtualNetwork $virtualNetwork -VpnType "External" -Sku "Premium"

Questo comando crea un servizio di Gestione API di livello Premium in una subnet di rete virtuale di Azure con un endpoint gateway esterno con un'area master negli Stati Uniti occidentali nel modello stv1

Parametri

-AdditionalRegions

Aree di distribuzione aggiuntive di Azure Gestione API.

Type:PsApiManagementRegion[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-AdminEmail

Specifica l'indirizzo di posta elettronica di origine per tutte le notifiche inviate dal sistema Gestione API.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Capacity

Specifica la capacità sku del servizio azure Gestione API. Il valore predefinito è uno (1).

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-CustomHostnameConfiguration

Configurazioni personalizzate dei nomi host. Il valore predefinito è $null. Passando $null verrà impostato il nome host predefinito.

Type:PsApiManagementCustomHostNameConfiguration[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

Credenziali, account, tenant e sottoscrizione usati per la comunicazione con Azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisableGateway

Flag destinato solo a essere usato per le distribuzioni apiManagement per SKU Premium e reti virtuali non interne. Ciò è utile nel caso in cui si voglia evitare la rotazione di un'area del gateway. Può anche essere usato per mantenere una nuova area in modalità passiva, testarla e quindi renderla attiva in un secondo momento.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableClientCertificate

Il flag deve essere usato solo per il servizio ApiManagement 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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Location

Specifica il percorso in cui creare il servizio Gestione API. Per ottenere percorsi validi, usare il cmdlet Get-AzResourceProvider -ProviderNamespace "Microsoft.ApiManagement" | dove {$_. ResourceTypes[0]. ResourceTypeName -eq "service"} | Posizioni dell'oggetto Select

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-MinimalControlPlaneApiVersion

Versione minima delle API del piano di controllo per consentire la gestione del servizio Gestione API.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Specifica un nome per la distribuzione Gestione API.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Organization

Specifica il nome di un'organizzazione. Gestione API usa questo indirizzo nel portale per sviluppatori nelle notifiche tramite posta elettronica.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PublicIpAddressId

Sku Standard PublicIpAddress ResoureId per l'integrazione in stv2 Rete virtuale Distribuzioni

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PublicNetworkAccess

Indica se l'accesso all'endpoint pubblico è consentito per questo servizio. I valori possibili includono: 'Enabled', 'Disabled'

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

Specifica il nome del gruppo di risorse in cui questo cmdlet crea una distribuzione Gestione API.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Sku

Livello del servizio Azure Gestione API. I valori validi sono Developer, Basic, Standard, Premium e Consumption. Il valore predefinito è Developer.

Type:Nullable<T>[PsApiManagementSku]
Accepted values:Developer, Basic, Standard, Premium, Consumption
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SslSetting

Impostazione SSL del servizio ApiManagement. Il valore predefinito è $null

Type:PsApiManagementSslSetting
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SystemAssignedIdentity

Generare e assegnare un'identità di Azure Active Directory per questo server da usare con i servizi di gestione delle chiavi come Azure KeyVault.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SystemCertificateConfiguration

Certificati rilasciati dalla CA interna da installare nel servizio. Il valore predefinito è $null.

Type:PsApiManagementSystemCertificate[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Tag

Dizionario tag.

Type:Dictionary<TKey,TValue>[System.String,System.String]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-UserAssignedIdentity

Assegnare identità utente a questo server per l'uso con servizi di gestione delle chiavi come Azure KeyVault.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VirtualNetwork

Rete virtuale Configurazione dell'area di distribuzione master di Azure Gestione API.

Type:PsApiManagementVirtualNetwork
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VpnType

Rete virtuale Tipo di distribuzione ApiManagement. I valori validi sono

  • "Nessuno" (valore predefinito. ApiManagement non fa parte di alcun Rete virtuale")
  • "Esterno" (La distribuzione ApiManagement è configurata all'interno di un Rete virtuale con un endpoint con connessione Internet)
  • "Interno" (la distribuzione ApiManagement viene configurata all'interno di un Rete virtuale con un endpoint con connessione Intranet)
Type:PsApiManagementVpnType
Accepted values:None, External, Internal
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Zone

Elenco delle zone di disponibilità che indicano dove viene distribuito il servizio Gestione API.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Input

String

Nullable<T>[[Microsoft.Azure.Commands.ApiManagement.Models.PsApiManagementSku, Microsoft.Azure.PowerShell.Cmdlets.ApiManagement, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]

Nullable<T>[[System.Int32, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

PsApiManagementVirtualNetwork

Dictionary<TKey,TValue>[[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

PsApiManagementRegion[]

PsApiManagementCustomHostNameConfiguration[]

PsApiManagementSystemCertificate[]

Output

PsApiManagement