Das Entfernen der erinnerten Login und Passwort-Liste in SQL Server Management Studio
-
20-08-2019 - |
Frage
Ich habe vor kurzem verwendet unseres Unternehmens Ersatz Laptop (dass ein allgemeiner Benutzer eingerichtet hat), während Mine repariert wurde. Ich habe die „Kennwort speichern“ Option in SQL Server Management Studio überprüft, wenn Sie sich bei der Datenbank anzumelden.
Ich brauche das Login und Passwort zu löschen, die ich verwendet habe, um die nächste Person zu verhindern, die den Laptop verwenden, meine Login-Namen und Passwörter verwenden. Wie kann ich das tun?
Keine korrekte Lösung
Andere Tipps
Eine andere Antwort hier erwähnt auch seit 2012 Sie im Cache gespeicherte Login via entfernen entfernen Wie im Cache gespeicherten Servernamen aus der Verbindung mit dem Server Dialog entfernen? . Nur bestätigte dies in MRU-Liste löschen arbeitet in 2016 und 2017 in Ordnung.
SQL Server Management Studio 2017 Löschen Sie die Datei
C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\14.0\SqlStudio.bin
SQL Server Management Studio 2016 Löschen Sie die Datei
C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\13.0\SqlStudio.bin
SQL Server Management Studio 2014 Löschen Sie die Datei
C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\12.0\SqlStudio.bin
SQL Server Management Studio 2012 Löschen Sie die Datei
C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\11.0\SqlStudio.bin
SQL Server Management Studio 2008 löschen Sie die Datei C:\Users\%username%\AppData\Roaming\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin
SQL Server Management Studio 2005 löschen Sie die Datei - wie oben Antwort, aber der Vista-Pfad.
C:\Users\%username%\AppData\Roaming\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat
Dies sind Profilpfade für Vista / 7/8.
EDIT:
Beachten Sie, AppData
ist ein versteckter Ordner. Sie müssen versteckte Ordner im Explorer zeigen.
EDIT: Sie können drücken Sie einfach vom Server / Benutzername löschen Dropdown (bestätigt für SSMS v18.0 zu arbeiten). Ursprüngliche Quelle von https://blog.sqlauthority.com/2013/04/17/sql-server-remove-cached-login-from-ssms-connect-dialog-sql-in-sixty-seconds -049 / , die erwähnt, dass diese Funktion seit 2012 verfügbar ist!
Für diejenigen, für die SSMS 2012 Lösung suchen ... sehen Sie diese Antwort:
gecached Login 2012 entfernen
Im Wesentlichen im Jahr 2012, können Sie den Server aus der Serverliste Dropdown löschen, die alle zwischengespeicherten Anmeldungen für diesen Server löscht.
Funktioniert auch in v17 (Build 14.x).
In meinem Szenario wollte ich nur einen bestimmten Benutzernamen / Passwort aus der Liste entfernen, die ich viele andere gespeicherte Verbindungen hatte nicht vergessen wollen. Es stellt sich heraus die SqlStudio.bin
Datei andere diskutieren, hier ist eine .NET binäre Serialisierung der Microsoft.SqlServer.Management.UserSettings.SqlStudio
-Klasse, die deserialisiert werden kann, verändert und neu serialisiert auf bestimmte Einstellungen zu ändern.
Entfernung des spezifischen Login Um das zu erreichen, habe ich eine neue C # .Net 4.6.1 Konsolenanwendung und hinzugefügt einen Verweis auf den Namespace, die in der folgenden DLL befinden: C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio\Microsoft.SqlServer.Management.UserSettings.dll
(Ihr Weg leicht auf SSMS Version abweichen kann)
Von dort aus konnte ich einfach erstellen und die Einstellungen ändern, wie gewünscht:
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using Microsoft.SqlServer.Management.UserSettings;
class Program
{
static void Main(string[] args)
{
var settingsFile = new FileInfo(@"C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\13.0\SqlStudio.bin");
// Backup our original file just in case...
File.Copy(settingsFile.FullName, settingsFile.FullName + ".backup");
BinaryFormatter fmt = new BinaryFormatter();
SqlStudio settings = null;
using(var fs = settingsFile.Open(FileMode.Open))
{
settings = (SqlStudio)fmt.Deserialize(fs);
}
// The structure of server types / servers / connections requires us to loop
// through multiple nested collections to find the connection to be removed.
// We start here with the server types
var serverTypes = settings.SSMS.ConnectionOptions.ServerTypes;
foreach (var serverType in serverTypes)
{
foreach (var server in serverType.Value.Servers)
{
// Will store the connection for the provided server which should be removed
ServerConnectionSettings removeConn = null;
foreach (var conn in server.Connections)
{
if (conn.UserName == "adminUserThatShouldBeRemoved")
{
removeConn = conn;
break;
}
}
if (removeConn != null)
{
server.Connections.RemoveItem(removeConn);
}
}
}
using (var fs = settingsFile.Open(FileMode.Create))
{
fmt.Serialize(fs, settings);
}
}
}
Für SQL Server Management Studio 2008
-
Sie müssen gehen C: \ Dokumente und Einstellungen \% username% \ Anwendungs Data \ Microsoft \ Microsoft SQL Server \ 100 \ Tools \ Shell
-
Löschen SqlStudio.bin
Löschen:
C: \ Dokumente und Einstellungen \% Ihres Benutzername% \ Anwendungsdaten \ Microsoft \ Microsoft SQL Server \ 90 \ Tools \ Shell \ mru.dat "
In XP, die .mru.dat Datei in C: \ Dokumente und Einstellungen \ Name \ Anwendungsdaten \ Microsoft \ Microsoft SQL Server \ 90 \ Tools \ ShellSEM
Allerdings, das Entfernen es wird nichts tun.
die Liste in XP zu entfernen, schneiden Sie die sqlstudio bin-Datei von C: \ Dokumente und Einstellungen \ Name \ Anwendungsdaten \ Microsoft \ Microsoft SQL Server \ 100 \ Tools \ Shell und fügen Sie ihn auf Ihrem Desktop
.Versuchen Sie SQL
Wenn es funktioniert hat, dann löschen Sie die sqlstudio bin-Datei vom Desktop aus.
Ganz einfach:)
Dies funktioniert für SQL Server Management Studio v18.0
Die Datei „SqlStudio.bin“ scheint nicht mehr zu existieren. Statt meine Einstellungen alle in dieser Datei gespeichert werden:
C:\Users\*********\AppData\Roaming\Microsoft\SQL Server Management Studio\18.0\UserSettings.xml
- Öffnen Sie es in jedem Texteditor wie Notepad ++
- ctrl + f für den Benutzernamen entfernt werden
- löschen Sie den gesamten
<Element>.......</Element>
Block dass ihn umgibt.
Wie Gluecks wies darauf hin, nicht mehr SqlStudio.bin
in Microsoft SQL Server Management Studio 18 . Ich fand auch dieses UserSettings.xml
in C:\Users\userName\AppData\Roaming\Microsoft\SQL Server Management Studio\18.0
. Aber das Entfernen der <Element>
enthält die Anmeldeinformationen funktionieren scheint nicht, es kommt gleich wieder auf der XML-Datei, wenn ich schließen und wieder öffnen wieder.
Es stellte sich heraus, müssen Sie zuerst die SQL Server Management Studio schließen , dann bearbeiten Sie die UserSettings.xml
Datei in Ihrem bevorzugten Editor, zum Beispiel Visual Studio-Code. Ich denke, es ist im Cache irgendwo in SSMS neben dieser XML-Datei ?! Und es ist nicht auf Control Panel\All Control Panel Items\Credential Manager\Windows Credentials
.