私が最近修理を行っている間に、私たちの会社の予備のラップトップ(一般ユーザーがセットアップされている)を使用しました。データベースにログインするときに、SQL Server Management Studioの[パスワードを保存する]オプションをチェックしました。
ラップトップを使用する次の人がログイン名とパスワードを使用するのを防ぐために、使用したログイン情報とパスワード情報を消去する必要があります。これどうやってするの?
ここでの別の回答では、2012年以降、 [サーバーに接続]ダイアログからキャッシュされたサーバー名を削除する方法? を使用して、キャッシュされたログインを削除できます。 2016年と2017年にMRUリストでこの削除が正常に機能することを確認しました。
SQL Server Management Studio2017ファイルを削除C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\14.0\SqlStudio.bin
SQL Server Management Studio2016ファイルを削除C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\13.0\SqlStudio.bin
SQL Server Management Studio2014ファイルを削除C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\12.0\SqlStudio.bin
SQL Server Management Studio2012ファイルを削除C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\11.0\SqlStudio.bin
SQL Server Management Studio2008ファイルを削除C:\Users\%username%\AppData\Roaming\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin
SQL Server Management Studio2005ファイルを削除します。上記の回答と同じですが、Vistaのパスです。 C:\Users\%username%\AppData\Roaming\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat
これらはVista/7/8のプロファイルパスです。
編集:
注、AppData
は隠しフォルダーです。エクスプローラーで隠しフォルダーを表示する必要があります。
編集:サーバー/ユーザー名ドロップダウンから削除ボタンを押すだけです(SSMS v18.0で機能することが確認されています)。 https://blog.sqlauthority.com/2013/04/17/sql-server-remove-cached-login-from-ssms-connect-dialog-sql-in-sixty-seconds-049からの元のソース/ 2012年以降、この機能が利用可能になると述べました!
SSMS 2012ソリューションをお探しの方は、こちらの回答をご覧ください。
基本的に、2012年にサーバーリストのドロップダウンからサーバーを削除すると、そのサーバーのすべてのキャッシュログインがクリアされます。
V17(ビルド14.x)でも動作します。
私のシナリオでは、リストから特定のユーザー名/パスワードを削除したかっただけで、他の多くの接続は忘れたくありませんでした。他の人がここで議論しているSqlStudio.bin
ファイルは、Microsoft.SqlServer.Management.UserSettings.SqlStudio
クラスの.NETバイナリシリアル化であり、特定の設定を変更するために逆シリアル化、変更、再シリアル化できます。
特定のログインを削除するために、新しいC#.Net 4.6.1コンソールアプリケーションを作成し、次のdllにある名前空間への参照を追加しました:C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio\Microsoft.SqlServer.Management.UserSettings.dll
(パスはSSMSバージョンによって若干異なる場合があります)
そこから、必要に応じて設定を簡単に作成および変更できます。
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);
}
}
}
SQL Server Management Studio 2008の場合
行く必要がありますC:\ Documents and Settings \%username%\ Application Data\Microsoft\Microsoft SQL Server\100\Tools\Shell
削除SqlStudio.bin
削除:
C:\ Documents and Settings \%Your Username%\ Application Data\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat "
XPでは、.mru.datファイルはC:\ Documents and Settings\Name\Application Data\Microsoft\Microsoft SQL Server\90\Tools\ShellSEMにあります
ただし、削除しても何も起こりません。
XPでリストを削除するには、C:\ Documents and Settings\Name\Application Data\Microsoft\Microsoft SQL Server\100\Tools\Shellからsqlstudio binファイルを切り取り、デスクトップに貼り付けます。
SQLを試す
うまくいった場合は、デスクトップからsqlstudio binファイルを削除します。
簡単:)
これは、SQL Server Management Studio v18.0で機能します。
ファイル「SqlStudio.bin」はもう存在しないようです。代わりに、私の設定はすべてこのファイルに保存されます。
C:\Users\*********\AppData\Roaming\Microsoft\SQL Server Management Studio\18.0\UserSettings.xml
<Element>.......</Element>
ブロック全体を削除します。接着剤が指摘したように、Microsoft SQL Server Management Studio 18にSqlStudio.bin
はもうありません。 UserSettings.xml
にもこのC:\Users\userName\AppData\Roaming\Microsoft\SQL Server Management Studio\18.0
が見つかりました。しかし、資格情報を含む<Element>
を削除しても機能しないようです。再度閉じて再度開くと、xmlファイルに戻ります。
判明したのは、最初にSQL Server Management Studioを閉じるが必要です。次に、お気に入りのエディターでUserSettings.xml
ファイルを編集します。 Visual Studioコード。このxmlファイル以外にSSMSのどこかにキャッシュされていると思います!? Control Panel\All Control Panel Items\Credential Manager\Windows Credentials
にはありません。