Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek popisuje, jak pomocí PowerShellu nakonfigurovat vzájemné ověřování ve službě Application Gateway. Vzájemné ověřování znamená, že Služba Application Gateway ověřuje klienta odesílajícího požadavek pomocí klientského certifikátu, který nahrajete do služby Application Gateway.
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Poznámka:
K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Pokud chcete začít, přečtěte si téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
Tento článek vyžaduje modul Azure PowerShell verze 1.0.0 nebo novější. Verzi zjistíte spuštěním příkazu Get-Module -ListAvailable Az. Pokud potřebujete upgrade, přečtěte si téma Instalace modulu Azure PowerShell. Pokud používáte PowerShell místně, musíte také spustit Connect-AzAccount , abyste vytvořili připojení k Azure.
Než začnete
Ke konfiguraci vzájemného ověřování pomocí služby Application Gateway potřebujete klientský certifikát pro nahrání do brány. Klientský certifikát slouží k ověření certifikátu, který klient prezentuje službě Application Gateway. Pro účely testování můžete použít certifikát podepsaný svým držitelem. To se ale nedoporučuje pro produkční úlohy, protože je obtížnější spravovat a nejsou zcela zabezpečené.
Další informace, zejména o tom, jaký druh klientských certifikátů můžete nahrát, najdete v tématu Přehled vzájemného ověřování ve službě Application Gateway.
Vytvoření skupiny zdrojů
Nejprve ve svém předplatném vytvořte novou skupinu prostředků.
$resourceGroup = New-AzResourceGroup -Name $rgname -Location $location -Tags @{ testtag = "APPGw tag"}
Vytvoření virtuální sítě
Nasaďte virtuální síť, do které se má služba Application Gateway nasadit.
$gwSubnet = New-AzVirtualNetworkSubnetConfig -Name $gwSubnetName -AddressPrefix 10.0.0.0/24
$vnet = New-AzVirtualNetwork -Name $vnetName -ResourceGroupName $rgname -Location $location -AddressPrefix 10.0.0.0/16 -Subnet $gwSubnet
$vnet = Get-AzVirtualNetwork -Name $vnetName -ResourceGroupName $rgname
$gwSubnet = Get-AzVirtualNetworkSubnetConfig -Name $gwSubnetName -VirtualNetwork $vnet
Vytvoření veřejné IP adresy
Vytvořte veřejnou IP adresu, která se bude používat se službou Application Gateway.
$publicip = New-AzPublicIpAddress -ResourceGroupName $rgname -name $publicIpName -location $location -AllocationMethod Static -sku Standard
Vytvoření konfigurace PROTOKOLU IP služby Application Gateway
Vytvořte konfigurace IP adres a front-endový port.
$gipconfig = New-AzApplicationGatewayIPConfiguration -Name $gipconfigname -Subnet $gwSubnet
$fipconfig = New-AzApplicationGatewayFrontendIPConfig -Name $fipconfigName -PublicIPAddress $publicip
$port = New-AzApplicationGatewayFrontendPort -Name $frontendPortName -Port 443
Konfigurace protokolu TLS/SSL front-endu
Nakonfigurujte certifikáty TLS/SSL pro službu Application Gateway.
$password = ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force
$sslCertPath = $basedir + "/ScenarioTests/Data/ApplicationGatewaySslCert1.pfx"
$sslCert = New-AzApplicationGatewaySslCertificate -Name $sslCertName -CertificateFile $sslCertPath -Password $password
Konfigurace ověřování klientů
Nakonfigurujte ověřování klientů ve službě Application Gateway. Další informace o tom, jak extrahovat řetězce certifikátů důvěryhodných klientských certifikačních autorit pro použití zde, najdete v tématu jak extrahovat řetězce certifikátů důvěryhodných klientských certifikačních autorit.
Důležité
Ujistěte se, že nahrajete celý řetěz certifikátů certifikační autority klienta do jednoho souboru a pouze jeden řetěz na soubor. Maximální velikost každého nahraného souboru musí být 25 kB nebo menší.
Poznámka:
Od 31. srpna 2025 doporučujeme používat protokol TLS 1.2 se vzájemným ověřováním.
$clientCertFilePath = $basedir + "/ScenarioTests/Data/TrustedClientCertificate.cer"
$trustedClient01 = New-AzApplicationGatewayTrustedClientCertificate -Name $trustedClientCert01Name -CertificateFile $clientCertFilePath
$sslPolicy = New-AzApplicationGatewaySslPolicy -PolicyType Predefined -PolicyName "AppGwSslPolicy20170401S"
$clientAuthConfig = New-AzApplicationGatewayClientAuthConfiguration -VerifyClientCertIssuerDN
$sslProfile01 = New-AzApplicationGatewaySslProfile -Name $sslProfile01Name -SslPolicy $sslPolicy -ClientAuthConfiguration $clientAuthConfig -TrustedClientCertificates $trustedClient01
$listener = New-AzApplicationGatewayHttpListener -Name $listenerName -Protocol Https -SslCertificate $sslCert -FrontendIPConfiguration $fipconfig -FrontendPort $port -SslProfile $sslProfile01
Konfigurace back-endového fondu a nastavení
Nastavení backendového fondu a nastavení pro službu Application Gateway. Volitelně můžete nastavit back-endový důvěryhodný kořenový certifikát pro kompletní šifrování TLS/SSL.
$certFilePath = $basedir + "/ScenarioTests/Data/ApplicationGatewayAuthCert.cer"
$trustedRoot = New-AzApplicationGatewayTrustedRootCertificate -Name $trustedRootCertName -CertificateFile $certFilePath
$pool = New-AzApplicationGatewayBackendAddressPool -Name $poolName -BackendIPAddresses www.microsoft.com, www.bing.com
$poolSetting = New-AzApplicationGatewayBackendHttpSettings -Name $poolSettingName -Port 443 -Protocol Https -CookieBasedAffinity Enabled -PickHostNameFromBackendAddress -TrustedRootCertificate $trustedRoot
Konfigurace pravidla
Nastavte pravidlo ve službě Application Gateway.
$rule = New-AzApplicationGatewayRequestRoutingRule -Name $ruleName -RuleType basic -BackendHttpSettings $poolSetting -HttpListener $listener -BackendAddressPool $pool
Nastavení výchozích zásad TLS/SSL pro budoucí nasluchače
Při nastavování vzájemného ověřování jste nakonfigurovali naslouchátko se specifickou zásadou TLS/SSL. V tomto kroku můžete volitelně nastavit výchozí zásady TLS/SSL pro budoucí naslouchací procesy, které vytvoříte.
$sslPolicyGlobal = New-AzApplicationGatewaySslPolicy -PolicyType Predefined -PolicyName "AppGwSslPolicy20170401"
Vytvoření služby Application Gateway
Pomocí všeho, co jsme vytvořili, nasaďte službu Application Gateway.
$sku = New-AzApplicationGatewaySku -Name Standard_v2 -Tier Standard_v2
$appgw = New-AzApplicationGateway -Name $appgwName -ResourceGroupName $rgname -Zone 1,2 -Location $location -BackendAddressPools $pool -BackendHttpSettingsCollection $poolSetting -FrontendIpConfigurations $fipconfig -GatewayIpConfigurations $gipconfig -FrontendPorts $port -HttpListeners $listener -RequestRoutingRules $rule -Sku $sku -SslPolicy $sslPolicyGlobal -TrustedRootCertificate $trustedRoot -AutoscaleConfiguration $autoscaleConfig -TrustedClientCertificates $trustedClient01 -SslProfiles $sslProfile01 -SslCertificates $sslCert
Upravte zdroje
Pokud už ji nepotřebujete, odeberte skupinu prostředků, aplikační bránu a všechny související prostředky pomocí remove-AzResourceGroup.
Remove-AzResourceGroup -Name $rgname
Prodloužení platnosti certifikátů klientské certifikační autority, jejichž platnost vypršela
V případě, že vypršela platnost certifikátu certifikační autority klienta, můžete certifikát v bráně aktualizovat pomocí následujících kroků:
- Přihlášení k Azure
Connect-AzAccount Select-AzSubscription -Subscription "<sub name>" - Získání konfigurace služby Application Gateway
$gateway = Get-AzApplicationGateway -Name "<gateway-name>" -ResourceGroupName "<resource-group-name>" - Odeberte důvěryhodný klientský certifikát z brány
Remove-AzApplicationGatewayTrustedClientCertificate -Name "<name-of-client-certificate>" -ApplicationGateway $gateway - Přidání nového certifikátu do brány
Add-AzApplicationGatewayTrustedClientCertificate -ApplicationGateway $gateway -Name "<name-of-new-cert>" -CertificateFile "<path-to-certificate-file>" - Aktualizace brány pomocí nového certifikátu
Set-AzApplicationGateway -ApplicationGateway $gateway