首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我从哪里获得我的实际Azure网站部署密码?

我从哪里获得我的实际Azure网站部署密码?
EN

Stack Overflow用户
提问于 2016-06-05 06:50:18
回答 2查看 20.7K关注 0票数 45

在Visual studio 2015中,当我将我的网站/Webapp发布到Azure时,我能够自动创建一个新的发布配置文件(通过输入我的个人Azure帐户凭据),这将创建.pubxml.pubxml.user文件。部署用户名的格式为"$websiteName“,密码由一长串项目符号表示。.pubxml.user文件包含实际的密码,它经过加密,只有我的Visual Studio可以读取它,通过使用我的本地Windows用户帐户解密它-我作为一个人,没有办法看到它。此外,将从源代码管理中排除.user文件(但.pubxml文件包含在源代码管理中)。

当我的团队中的另一个人尝试部署网站时,他们会得到相同的部署设置,但系统会提示他们输入"$website“帐户的密码。我不知道从哪里获取此密码- Azure管理门户不显示此密码。

如果用户打开门户并选择重置发布配置文件,则他们可以下载一个新的.pubxml文件,其中包含加密的密码,我知道只有他们的个人Azure凭据才能解密该密码,但这会中断我和其他用户的部署,因为现在他们保存的密码(在.user文件中)已失效。

我知道这是一个与Azure门户上的“部署凭据”刀片不同的username+password,因为目前网站没有设置部署凭据,此外,如果我要设置一个,用户名是不同的。门户网站声明这些凭据无论如何都是用于FTP访问的-没有提到Web Deploy功能。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-06-06 21:33:38

您可以通过门户或PowerShell/CLI获取当前凭据。

Azure门户

在门户网站上,webapp刀片顶部有一个按钮,用于下载发布配置文件(不是部署凭证刀片,而是主web应用刀片)。

Azure PowerShell

首先,确保安装了Azure PowerShell cmdlet:https://docs.microsoft.com/en-us/powershell/azure/install-azurerm-ps?view=azurermps-6.3.0

  1. 打开一个提升的PowerShell窗口。
  2. 输入$PSVersionTable.PSVersion。确保输出显示您的主要版本为5或更高版本。如果这个命令给你一个错误,那么你正在运行PowerShell v1,这在这一点上是旧的。
  3. 输入Install-Module -Name AzureRM (你可能会被提示更新NuGet,在这种情况下你应该)
  4. 等待它完成save Connect-AzureRmAccount并完成身份验证过程。
  5. 运行这个命令将发布配置文件保存到磁盘上的一个文件中(为了可读性增加了换行符,实际上将其放在一行中)。根据需要设置$WebAppName$ResourceGroupName

Get- $ResourceGroupName发布-Format $ResourceGroupName -Name $WebAppName -OutputFile creds.xml -Format WebDeploy

.publishsettings文件

.publishsettings文件是一个XML文件(没有换行符)。在里面,你会发现一个具有这种结构的文档。使用publishMethod="MSDeploy"<publishProfile>元素中查找userPWD属性。不要使用FTP凭证(在第二个<publishProfile>元素中),因为用户名是不同的。

userPWD属性值未加密,但base64 (或base62?)完全随机字节的编码。您可以将此值直接复制并粘贴到Visual Studio的发布向导中的凭据提示中。

代码语言:javascript
复制
<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>
票数 67
EN

Stack Overflow用户

发布于 2019-03-28 17:44:52

如果您不熟悉PowerShell,可以尝试下面的说明,使用azure cli获取部署用户名和密码。

代码语言:javascript
复制
az webapp deployment list-publishing-profiles --name your_web_app_name --resource-group your_resource_group

您还可以添加--query来检索"userPWD“

代码语言:javascript
复制
az webapp deployment list-publishing-profiles --name your_web_app_name --resource-group your_resource_group --query '[].userPWD' -o tsv

输出将如下所示

oMarhPTTJc6F7muHfz11232342342342342420tv5Lwikf1Xc

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37635783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档