75

I just tried to access a folder like so:

\\somecomputeronmynetwork\somelocation$

When going to this location I'm prompted for a user name and password.

I put one in, and it let me in fine.

Now I need to remove that login, so I can try a different user name and password.

What's the easiest way to do this?

Nate
  • 3,388
Joseph
  • 1,776

11 Answers11

65

Open a command prompt or from start/run type:

net use \\somecomputeronmynetwork\somelocation$ /delete

You can also use the following command to list "remembered" connections:

net use
CodeNaked
  • 113
Nate
  • 3,388
54
  1. Open your start menu, in the search bar type:

    manage passwords
    
  2. You will see an application called Manage Windows Credentials.
  3. Open up this application from there you can check/edit/delete your saved network credentials.

It won't work if your Windows doesn't have login password, so put a password on it

chicks
  • 3,915
  • 10
  • 29
  • 37
JamesK
  • 1,666
9

Windows tries to prevent logging on to the same server with different credentials at the same time, for some obscure "security reason".

This interception happens on the client side, not the server side.

You can circumvent this by using the server“s IP Address instead of the Servername. Personally, I do this in the command line:

net use * \\myservername\mysharename /user:mydomain\theotheruser * /persistent:no
==> error - security reasons

net use * \\x.y.z.z'\mysharename /user:mydomain\theotheruser * /persistent:no
==> just fine

This way, you can even connect twice to the same share, with different credentials. Incredibly useful when you try to debug user permission problems from the user's computer. Even works to connect to, say c$, on your own computer with admin rights.

You remove a share my either right-clicking it, or net use x: /delete

But: This does not remove your client's presumed connection to the server. Just browsing to the server in the explorer, without even connecting a share does count, and prevents you from using another credential to log onto that server, unless you disguise the name.

According to Microsoft, this is a feature.

Posipiet
  • 1,745
  • 14
  • 13
6

All saved passwords for Windows 7 are saved in Credential Manager.

Control Panel\All Control Panel Items\Credential Manager

If you authenticate with a username and password to a network location, that username and password will remain cached for your logon session. You will need to log off and back on before you can re-authenticate.

Lewis
  • 707
6

To remove a connection to a PC where it was made to access a folder and the User was cached (ie remains active) must be rigorously used the following procedure (step-by-step):

  1. access the folder with User / Password

2 Close all windows explorer of the machine

3 Open the command prompt

4 Execute the command

Net use * /del

*** Should be done in this sequence, otherwise can not works. For example, if the command prompt is already open (before the windows explorer) command will not work.

6

I use bogus credentials to really disable access.

net use * /d /y
net use "\\10.0.0.5\c$" "badpassword" /user:"baduser"
net use * /d /y

that seems to overwrite the old credentials and forces explorer to attempt to use the new bad credentials.

4

Try this it may work on Windows 7 [it works on XP]. Just type this in the Start->Run-> control keymgr.dll
It'll open up a window where in the stored password & usernames will be stored, you'll be able to delete from there.

Athreya
  • 49
2

Maybe it's specific to Windows 10, but I also needed to do klist purge. So the short answer would be:

net use * /delete
klist purge
mivk
  • 4,924
2

You could, of course, remove your connection by doing

net use \\somemachine\someshare /d

But you probably want to re-connect eventually too. Furthermore, if you have cached credentials to the network share, then when you re-establish the connection you may find yourself fighting one of these errors:

System error 1272 has occurred.

You can't access this shared folder because your organization's security policies block unauthenticated guest access. These policies help protect your PC from unsafe or malicious devices on the network.

or

System error 1219 has occurred.

Multiple connections to a server or shared resource by the same user, using more than one user name, are not allowed. Disconnect all previous connections to the server or shared resource and try again.

So instead I suggest fixing the problem without rebooting by doing this:

net stop workstation
net start workstation

This has the added bonus that although you will disconnect any existing shares, they won't be forgotten as they would if you had deleted them with something like net use * /d.

If you don't like command line stuff, you can alternatively restart the Workstation service by going to Services directly:

  • Tap Windows key, type services, press Enter
  • Locate the service named "Workstation". right-click it and choose restart.

Then try your net use \\somemachine\someshare /user:someuser command again to get re-prompted for credentials.

Wyck
  • 140
1

I have also discovered from @rocketsarefast's answer that Windows will clear the old network credentials when there is a new login attempt.

However, his net use "\\10.0.0.5\c$" "badpassword" /user:"baduser" command is way too slow, especially when the client has to wait up to several seconds for the server to respond with a rejection, which is terrible and inconvenient.

For my use case, I was able to use the Win32 API to map the network share \\Server\Share to the S:\ drive. It disconnects the drive first and then prompts the user with the Windows network login dialog so that the person can logout and login as a different user.

Here is the C code main.c:

#ifndef UNICODE
#define UNICODE
#endif

#define WINVER 0x0500
#define _WIN32_WINNT 0x0500
#define _WIN32_IE 0x0500

#pragma comment(lib, L"mpr.lib")

#include <windows.h>
//#include <stdio.h>

int wmain(const size_t argc, const wchar_t** argv) {
    NETRESOURCE networkResource = {0};
    networkResource.dwType = RESOURCETYPE_DISK;
    networkResource.lpLocalName = L"S:";
    networkResource.lpRemoteName = L"\\\\Server\\Share";
    networkResource.lpProvider = NULL;

    DWORD result = 0;
    result = WNetCancelConnection2(networkResource.lpLocalName, CONNECT_UPDATE_PROFILE, TRUE);
//    wprintf(L"WNetCancelConnection2 result: %d\n", result);

    result = WNetAddConnection2(&networkResource, NULL, NULL, CONNECT_INTERACTIVE | CONNECT_PROMPT);
//    wprintf(L"WNetAddConnection2 result: %d\n", result);

//    getchar();

    return EXIT_SUCCESS;
}

Here is the CMakeLists.txt:

cmake_minimum_required(VERSION 3.7)
project(MapNetworkDrive)

set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c11 -g3 -pedantic -Wall -Wextra -O0")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${GCC_COVERAGE_LINK_FLAGS} -municode -mwindows")

set(SOURCE_FILES main.c)
add_executable(MapNetworkDrive ${SOURCE_FILES})
target_link_libraries(MapNetworkDrive mpr.lib)

Compile using MinGW-w64 - for 32 and 64 bit Windows:

As an alternative to C, here is an easy C# tutorial on the API:

XP1
  • 131
1

In Windows 10 (Powershell 5+) you can now also use Remove-SmbMapping.

Remove-SmbMapping -RemotePath \\somecomputeronmynetwork\somelocation$

Also check out Get-Command *Smb*.

hansvb
  • 21