【发布时间】:2023-03-30 04:50:01
【问题描述】:
我有一个 .NET Core 2.2 Web 项目,我想通过命令行将它发布到不同服务器上的 IIS。
为此,我在我的项目 (Properties/PublishProfiles/myProfile.pubxml) 中创建了发布配置文件。对于用户名/密码,我输入了允许我发布到该服务器的凭据。我选择保存密码。密码已加密并保存到 myProfile.pubxml.user 我现在可以轻松地从 Visual Studio 发布,而无需输入用户名/密码。
大多数答案似乎都集中在运行以下命令的想法上:
dotnet publish -c Release /p:PublishProfile=Properties\PublishProfiles\myProfile.pubxml
问题是这个命令似乎忽略了用户名/密码,导致MSDEPLOY : error Code: ERROR_USER_NOT_ADMIN. The remote server returned an error : (401) Unauthorized.
有没有办法让dotnet publish 获取用户名/密码以便发布操作成功?
【问题讨论】:
-
USER_NOT_ADMIN 在尝试命令之前尝试以管理员身份运行 cmd 提示符。有可能涉及一些 rpc 魔法,并且可能需要本地管理员才能使用。瞎猜:)
-
@Davesoft 这是我尝试的第一件事。不幸的是,我什至无法使用这些凭据打开命令提示符窗口 - 公司策略已锁定该用户。
-
@AngryHacker 你有没有找到解决这个问题的办法?
-
@marcobirchler 不,最终使用 Jenkins/Octopus 进行部署。