使用 PowerShell 將自訂 TLS/SSL 憑證繫結至 Web 應用程式
此範例指令碼會在 App Service 中建立 Web 應用程式及其相關的資源,然後將自訂網域名稱的 TLS/SSL 憑證加以繫結。
您可以視需要使用 Azure PowerShell 指南 \(英文\) 中的指示來安裝 Azure PowerShell,然後執行 Connect-AzAccount
來建立與 Azure 的連線。 此外,請確定:
- 已使用
az login
命令建立與 Azure 的連線。 - 您可以存取網域註冊機構的 DNS 設定頁面。
- 對於想要上傳並繫結的 TLS/SSL 憑證,您具備有效的 .PFX 檔案和其密碼。
範例指令碼
注意
建議您使用 Azure Az PowerShell 模組來與 Azure 互動。 若要開始使用,請參閱 安裝 Azure PowerShell。 若要了解如何移轉至 Az PowerShell 模組,請參閱將 Azure PowerShell 從 AzureRM 移轉至 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
清除部署
在執行過指令碼範例之後,您可以使用下列命令來移除資源群組、Web 應用程式和所有相關資源。
Remove-AzResourceGroup -Name myResourceGroup -Force
指令碼說明
此指令碼會使用下列命令。 下表中的每個命令都會連結至命令特定的文件。
Command | 注意 |
---|---|
New-AzResourceGroup | 建立用來存放所有資源的資源群組。 |
New-AzAppServicePlan | 建立 App Service 方案。 |
New-AzWebApp | 建立 Web 應用程式。 |
Set-AzAppServicePlan | 修改 App Service 方案來變更其定價層。 |
Set-AzWebApp | 修改 Web 應用程式的組態。 |
New-AzWebAppSSLBinding | 建立 Web 應用程式的 TLS/SSL 憑證繫結。 |
下一步
如需有關 Azure PowerShell 模組的詳細資訊,請參閱 Azure PowerShell 文件。
您可以在 Azure PowerShell 範例中找到適用於 App Service Web Apps 的其他 Azure PowerShell 範例。