如何在将nuget包发布到本地服务器时传递凭据?

时间:2016-11-07 09:35:19

标签: visual-studio-2015 nuget

我已将凭据添加到nuget.config,如下所示:

<packageSources>
  <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
  <add key="internal" value="http://internal.server/nuget" />
</packageSources>
<packageSourceCredentials>
  <internal>
    <add key="Username" value="myuser" />
    <add key="ClearTextPassword" value="mypassword" />
 </internal>
</packageSourceCredentials>

我可以在此内部服务器上成功浏览包。使用的用户是服务器的本地管理员。

现在我尝试使用Nuget Deploy发布包。使用的命令行是:

nuget push "C:\mypath\mydll.nupkg" -s "http://internal.server/nuget" "apikey"

但是,我收到了错误:

  

部署nuPkg文件时出错:远程服务器返回错误:(401)未经授权。   安全包中没有可用的凭据

由于我应该以本地管理员身份发布,因此我应该在托管nuget服务器的IIS服务器上拥有足够的权限。

我是否需要在nupkg

中明确传递权限

1 个答案:

答案 0 :(得分:0)

您确定这是NuGet包服务器的问题吗?在我看来,您可能只是将IIS配置为不允许匿名访问。