9
votes

I've added a NuGet Source. It needs credentials but when I'm installing a package using install-package packageName nothing happens. I tried the same steps on other PC and it works. I'm using Visual Studio 2017 Professional. Could someone please help me with the issue? My NuGet sources

5
is nuget.org/api/v2 your added NuGet Source? How about change it to https ://api.nuget.org/v3/index.json (Remove the space in the link) and have you try to install the package from Manage NuGet Package UI? Could you provide some detail steps to us to reproduce this issue? Some screenshots would be better.Leo Liu-MSFT
Having the same issue. Trying to update from a team nuget source, password protected. Usually there suppose to be a screen that prompts username + password but it doesn't show up and i get 401 error unauthorized. @Leo-MSFTZiv Weissman

5 Answers

12
votes

This is riddiculous that it does not prompt for credentials.

To make it work I had to do the following:

  1. Download nuget.exe from Nuget download site

  2. Remove my old package source

    Go to NuGet Package Manager for Solution->Settings

enter image description here

Delete your Package Source

enter image description here

  1. Run Command Line

    Go to nuget.exe

enter image description here

  1. Add package source with plain password in the command

    nuget.exe sources Add -Name "YourPackageName" -Source "YourPackageAddress" -Username YourUserName -password YourPassword -StorePasswordInClearText

enter image description here

  1. Done... phew
7
votes

After many attempts to set password, reset password or whatever the only thing that helped me was adding this section to the NuGet.Config (located on the .nuget folder for the main solution)

NuGet.Config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <solution>
    <add key="disableSourceControlIntegration" value="false" />
  </solution>
  <packageSourceCredentials>
    <MySourceName> <!-- Name of nuget package source -->
      <add key="Username" value="..." />
      <add key="ClearTextPassword" value="..." /> <!-- This is for normal password-->
      <!--if encrypted use key="Password"-->
    </MySourceName>
  </packageSourceCredentials>
</configuration>

One important notice - for any change to this file to take effect I had to restart VS

6
votes

If Visual Studio does not prompt for credentials but the logging Output shows that you did not authenticate correctly, then go to

Control Panel\User Accounts\Credential Manager

and click "Windows Credentials". You can remove stored credentials for nuget/github there. If they become invalid - for example because you regenerated a token - Visual Studio does not prompt to overwrite the invalid credentials, but after removing the credentials and restarting Visual Studio you do get the prompt.

Image of Windows Credential Manager with nuget and github entries

I've documented more troubleshooting related to the NuGet.Config in this issue: https://github.com/verybadcat/CSharpMath/issues/168

Source for solving this specific problem:

1
votes

Remove the source from the Nuget Package Manager and add it with a new name.

0
votes

Credentials popup might be not coming because you have earlier entered some other credentials or some other credentials is stored against the NuGet Package. You can goto Credentials Manager in your PC and check for all NuGet Credentials. If you found any, Please remove them from there. And, then try to restart Visual Studio and enter the package source and Url again. This time you will get the popup to add credentials for sure.