Binda ett anpassat TLS/SSL-certifikat till en webbapp med hjälp av PowerShell
Det här exempelskriptet skapar en webbapp i App Service med dess relaterade resurser och binder sedan TLS/SSL-certifikatet för ett anpassat domännamn till den.
Om det behövs installerar du Azure PowerShell med hjälp av instruktionerna i Azure PowerShell-guiden och kör sedan Connect-AzAccount
för att skapa en anslutning till Azure. Se också till att:
- En anslutning har skapats med Azure med hjälp av kommandot
az login
. - Du har åtkomst till din domänregistrators DNS-konfigurationssida.
- Du har en giltig . PFX-filen och dess lösenord för det TLS/SSL-certifikat som du vill ladda upp och binda.
Exempelskript
Kommentar
Vi rekommenderar att du använder Azure Az PowerShell-modulen för att interagera med Azure. Information om hur du kommer igång finns i Installera Azure PowerShell. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.
$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
Rensa distribution
När skriptet har körts kan följande kommando användas för att ta bort resursgruppen, webbappen och alla relaterade resurser.
Remove-AzResourceGroup -Name myResourceGroup -Force
Förklaring av skript
Det här skriptet använder följande kommandon. Varje kommando i tabellen länkar till kommandospecifik dokumentation.
Command | Kommentar |
---|---|
New-AzResourceGroup | Skapar en resursgrupp där alla resurser lagras. |
New-AzAppServicePlan | Skapar en App Service-plan. |
New-AzWebApp | Skapar en webbapp. |
Set-AzAppServicePlan | Ändrar en App Service-plan för att ändra prisnivån. |
Set-AzWebApp | Ändrar konfigurationen för en webbapp. |
New-AzWebAppSSLBinding | Skapar en TLS/SSL-certifikatbindning för en webbapp. |
Nästa steg
Mer information om Azure PowerShell-modulen finns i Azure PowerShell-dokumentationen.
Fler Azure Powershell-exempel för Azure App Service Web Apps finns i Azure PowerShell-exempel.