2017-10-06 121 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的更詳細信息。

希望這會有所幫助。

相關問題