Een aangepast TLS/SSL-certificaat koppelen aan een web-app met PowerShell

Met dit voorbeeldscript wordt een web-app in App Service gemaakt met de bijbehorende resources, waarna het TLS/SSL-certificaat van een aangepaste domeinnaam daaraan wordt gekoppeld.

Installeer zo nodig de Azure PowerShell volgens de instructies in de Azure PowerShell handleiding en voer vervolgens Connect-AzAccount uit om verbinding te maken met Azure. Controleer ook of:

  • Een verbinding met Azure is gemaakt met behulp van de opdracht az login.
  • U hebt toegang tot de pagina voor DNS-configuratie van uw domeinregistrar.
  • U hebt een geldig .PFX-bestand en het bijbehorende wachtwoord voor het TLS/SSL-certificaat dat u wilt uploaden en koppelen.

Voorbeeldscript

Notitie

U wordt aangeraden de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

$fqdn="<Replace with your custom domain name>"
$pfxPath="<Replace with path to your .PFX file>"
$pfxPassword="<Replace with your .PFX password>"
$webappname="mywebapp$(Get-Random)"
$location="West Europe"

# Create a resource group.
New-AzResourceGroup -Name $webappname -Location $location

# Create an App Service plan in Free tier.
New-AzAppServicePlan -Name $webappname -Location $location `
-ResourceGroupName $webappname -Tier Free

# Create a web app.
$webapp = New-AzWebApp -Name $webappname -Location $location -AppServicePlan $webappname `
-ResourceGroupName $webappname

Write-Host "Sign in to your domain provider's website and configure the following records:"
Write-Host "A CNAME record that maps $fqdn to $webappname.azurewebsites.net"
Write-Host "A TXT record that maps asuid.$fqdn to the domain verification ID $($webapp.CustomDomainVerificationId)"
Read-Host "Press [Enter] key when ready ..."

# Before continuing, go to your DNS configuration UI for your custom domain and follow the 
# instructions at https://aka.ms/appservicecustomdns to configure a CNAME record for the 
# hostname "www" and point it your web app's default domain name.

# Upgrade App Service plan to Basic tier (minimum required by custom SSL certificates)
Set-AzAppServicePlan -Name $webappname -ResourceGroupName $webappname `
-Tier Basic

# Add a custom domain name to the web app. 
Set-AzWebApp -Name $webappname -ResourceGroupName $webappname `
-HostNames @($fqdn,"$webappname.azurewebsites.net")

# Upload and bind the SSL certificate to the web app.
New-AzWebAppSSLBinding -WebAppName $webappname -ResourceGroupName $webappname -Name $fqdn `
-CertificateFilePath $pfxPath -CertificatePassword $pfxPassword -SslState SniEnabled

Opschonen van implementatie

Nadat het voorbeeldscript is uitgevoerd, kan de volgende opdracht worden gebruikt om de resourcegroep, web-app en alle gerelateerde resources te verwijderen.

Remove-AzResourceGroup -Name myResourceGroup -Force

Uitleg van het script

In dit script worden de volgende opdrachten gebruikt. Elke opdracht in de tabel is een koppeling naar specifieke documentatie over de opdracht.

Opdracht Opmerkingen
New-AzResourceGroup Hiermee maakt u een resourcegroep waarin alle resources worden opgeslagen.
New-AzAppServicePlan Hiermee maakt u een App Service-plan.
New-AzWebApp Hiermee maakt u een webtoepassing.
Set-AzAppServicePlan Hiermee bewerkt u een App Service-plan om de prijscategorie te wijzigen.
Set-AzWebApp Hiermee wijzigt u de configuratie van een web-app.
New-AzWebAppSSLBinding Hiermee maakt u een TLS/SSL-certificaatbinding voor een web-app.

Volgende stappen

Zie voor meer informatie over de Azure PowerShell-module de documentatie van Azure PowerShell.

Meer voorbeelden voor Azure Powershell voor Azure App Service Web Apps vindt u in de voorbeelden van Azure PowerShell.