Я использовал следующий PowerShell, после того как копался в вики kudu и заменял несколько элементов более новыми методами.
Он формирует строку «http basic authentication» с использованием учетных данных публикации, полученных с сайта, а затем используетчтобы отправить запрос DELETE к API-интерфейсу Kudu.
В частности, если вы используете Powershell 6, вам не нужно будет составлять базовую строку аутентификации, поскольку Invoke-RestMethod powershell 6 может сделать это за вас.
function Get-KuduSiteBasicAuthString
{
[CmdletBinding()]
param (
[Parameter(Mandatory = $true)]
$ResourceGroupName,
[Parameter(Mandatory = $true)]
$Name
)
$response = Get-AzureRmWebAppPublishingProfile -ResourceGroupName $ResourceGroupName -Name $Name
$publishingCredentials = [xml]$response
$username = $publishingCredentials.publishData.publishProfile[0].userName
$password = $publishingCredentials.publishData.publishProfile[0].userPWD
$credentialsString = "{0}:{1}" -f $username, $password
$credentialsAsByteArray = [Text.Encoding]::ASCII.GetBytes($credentialsString)
"Basic {0}" -f [Convert]::ToBase64String($credentialsAsByteArray)
}
$ResourceGroupName = "your resource group name"
$ApplicationName = "your app name"
$kuduAuthString = Get-KuduSiteBasicAuthString -ResourceGroupName $ResourceGroupName -Name $ApplicationName
$apiUrl = "https://" + $ApplicationName + ".scm.azurewebsites.net/api/continuouswebjobs/ApplicationInsightsProfiler2"
Invoke-RestMethod -Uri $apiUrl -Headers @{ 'Authorization' = $kuduAuthString } -Method Delete -Verbose