Ответ 1
Вы можете получить текущие учетные данные через портал или PowerShell/CLI.
Лазурный портал
На портале в верхней части блейда веб-приложения есть кнопка для загрузки профиля публикации (не блейд учетных данных развертывания, а основной блейд веб-приложения).
Azure PowerShell
Сначала убедитесь, что командлеты Azure PowerShell установлены: https://docs.microsoft.com/en-us/powershell/azure/install-azurerm-ps?view=azurermps-6.3.0.
- Откройте окно PowerShell с повышенными правами.
- Введите
$PSVersionTable.PSVersion
. Убедитесь, что вывод показывает, что у вас есть Major версии 5 или новее. Если эта команда выдает ошибку, вы запускаете PowerShell v1, который на данный момент является древним. - Введите
Install-Module -Name AzureRM
(вам может быть предложено обновить NuGet, в этом случае вам следует) - Подождите, пока он закончит установку.
- Введите
Import-Module AzureRM
- Введите
Connect-AzureRmAccount
и завершите процесс аутентификации. -
Запустите эту команду, чтобы сохранить профиль публикации в файле на диске (разрывы строк добавлены для удобства чтения, на самом деле это одна строка). Установите
$WebAppName
и$ResourceGroupName
соответствующим образом:Get-AzureRmWebAppPublishingProfile -ResourceGroupName $ResourceGroupName -Name $WebAppName -OutputFile creds.xml -Format WebDeploy
файл .publishsettings
Файл .publishsettings
представляет собой файл XML (без переносов строк). Внутри вы найдете документ с этой структурой. Найдите атрибут userPWD
в <publishProfile>
с publishMethod="MSDeploy"
. Не используйте учетные данные FTP (во втором <publishProfile>
), потому что имя пользователя другое.
userPWD
атрибута userPWD
не зашифровано, но является base64 (или base62?) Кодированием совершенно случайных байтов. Вы можете скопировать и вставить это значение непосредственно в запрос учетных данных в мастере публикации Visual Studio.
<publishData>
<publishProfile
profileName="SITE - Web Deploy"
publishMethod="MSDeploy"
publishUrl="SITE.scm.azurewebsites.net:443"
msdeploySite="SITE"
userName="$SITE"
userPWD="YOUR PASSWORD IS HERE" <-- This attribute here
destinationAppUrl="http://SITE.azurewebsites.net"
SQLServerDBConnectionString=""
mySQLDBConnectionString=""
hostingProviderForumLink=""
controlPanelLink=""
webSystem="WebSites"
>
<databases />
</publishProfile>
<publishProfile
profileName="SITE - FTP"
publishMethod="FTP"
publishUrl="ftp://SITE.ftp.azurewebsites.windows.net/site/wwwroot"
ftpPassiveMode="True"
userName="SITE\$SITE"
userPWD="FTP PASSWORD IS HERE"
destinationAppUrl="http://SITE.azurewebsites.net"
SQLServerDBConnectionString=""
mySQLDBConnectionString=""
hostingProviderForumLink=""
controlPanelLink=""
webSystem="WebSites"
>
<databases />
</publishProfile>
</publishData>