2017-10-06 116 views
1

我有一个使用加密密码的发布配置文件的.NET框架项目。所以我有两个发布文件:.pubxml和.pubxml.user(这个包含加密的密码)。将加密密码传递给msbuild

但是,如果我运行的MSBuild是这样的:

msbuild <project>.csproj /p:DeployOnBuild /p:PublishProfile=<file>.pubxml 

我得到一个401身份验证错误。

是否有可能以某种方式传递加密密码,或告诉msbuild使用.pubxml.user文件?

+0

此问题的任何更新?你有解决这个问题吗?如果没有,请让我知道这个问题的最新状态。 –

+0

不,不幸的是我认为你的回答是对的,所以我直接将密码传递给命令 – KeL666

回答

0

是否有可能以某种方式传递加密的密码,或告诉msbuild使用.pubxml.user文件?

通过MSBuild命令行传递加密密码是不可能的。正如您所说,.pubxml.user文件包含加密形式的密码。当您使用MSBuild命令行进行部署时,无法通过MSBuild访问此文件

此外,据我所知,加密密码用于每个帐户和每台机器。因此,当您将项目部署到其他计算机或帐户时,将项目部署到其他计算机或帐户时,加密密码将会失效。

所以我们需要通过与MSBuild的命令行的实际名称和密码;

msbuild <path-to-project-file> /p:DeployOnBuild=true /p:PublishProfile=<Publish Profile> /p:Username=<ACTUAL_USERNAME> /p:Password=<ACTUAL_PASSWORD> 

Sayed`s answerthis document的更详细信息。

希望这会有所帮助。

相关问题