SSMSでセキュリティ強化! 記憶されたログインとパスワードのリストを削除する方法

2024-04-09

SQL Server Management Studio で記憶されたログインとパスワードのリストを削除する方法

SQL Server Management Studio (SSMS) は、SQL Server データベースを管理するためのツールです。SSMS には、接続先のサーバーのログイン情報とパスワードを記憶する機能があります。これは便利ですが、セキュリティ上のリスクもあります。

この文書では、SSMS で記憶されたログインとパスワードのリストを削除する方法について説明します。

方法

方法 1:SSMS の設定を使用する

  1. SSMS を起動します。
  2. ツール メニューから オプション を選択します。
  3. 接続 ページを選択します。
  4. 接続履歴 セクションで 記憶されたパスワードをクリア をクリックします。
  5. OK をクリックします。

方法 2:レジストリを編集する

  1. Windows キー + R キーを押して ファイル名を指定して実行 ダイアログボックスを開きます。
  2. regedit と入力し、OK をクリックします。
  3. 次のレジストリキーに移動します。
HKEY_CURRENT_USER\Software\Microsoft\SQL Server Management Studio\18.0\Tools\Servers
  1. Servers キーを削除します。

方法 3:SQL Server Management Studio のデータベースを使用する

  1. 次のクエリを実行します。
DELETE FROM sys.sql_logins
WHERE is_guest = 0
AND is_ms_shipped = 0

注意事項

  • 方法 2 と方法 3 は、上級者向けの操作です。レジストリやデータベースを誤って編集すると、システムトラブルが発生する可能性があります。
  • 方法 1 は、最も安全な方法です。
  • SSMS でログイン情報を記憶させたくない場合は、接続 ダイアログボックスで パスワードを保存しない オプションを選択します。

関連用語

  • SQL Server
  • SSMS
  • ログイン
  • パスワード
  • セキュリティ
  • 認証



DELETE FROM sys.sql_logins
WHERE is_guest = 0
AND is_ms_shipped = 0

解説

このクエリは、sys.sql_logins テーブルから、ゲストログインと Microsoft が提供するログインを除くすべてのログインを削除します。

  • このクエリを実行する前に、データベースのバックアップを取ることをお勧めします。
  • このクエリは、sysadmin 権限を持つユーザーのみ実行できます。

代替方法

  • SSMS の オブジェクトエクスプローラーセキュリティ フォルダを展開し、ログイン フォルダを選択します。
  • 削除したいログインを右クリックし、削除 を選択します。



SSMS のログインとパスワードのリストを削除するサードパーティ製ツールもいくつかあります。これらのツールを使用する場合は、ツールの使用方法と注意事項をよく読んでから実行してください。

方法 5:Windows 資格情報マネージャーを使用する

Windows 資格情報マネージャーには、SSMS が保存したログイン情報を含む、すべての Windows 資格情報が保存されています。Windows 資格情報マネージャーを使用して、SSMS のログイン情報を削除することもできます。

手順

  1. rundll32.exe keymgr.dll, KRShowKeyMgr と入力し、OK をクリックします。
  2. Windows 資格情報マネージャー ダイアログボックスで 汎用資格情報 を選択します。
  3. 削除したい SSMS のログイン情報を見つけ、削除 をクリックします。
  • 方法 4 と方法 5 は、自己責任で実行してください。

SSMS で記憶されたログインとパスワードのリストを削除するには、いくつかの方法があります。どの方法を選択するかは、ご自身の環境とニーズに合わせて判断してください。

改善点

  • すべての方法について、注意事項を追加しました。
  • サンプルコードの解説に、クエリを実行する前にデータベースのバックアップを取ることを推奨する文を追加しました。
  • サンプルコードの代替方法を追加しました。
  • その他の方法として、サードパーティ製ツールと Windows 資格情報マネージャーを使用する方法を追加しました。
  • 各方法の参考資料へのリンクを追加しました。

sql-server security authentication


SQL、SQL Server、データベースのパフォーマンスチューニングの秘訣

インデックスは、データベース内のデータを効率的に検索するための構造です。適切なインデックスを作成することで、クエリの実行速度を大幅に向上させることができます。よく使用される列にインデックスを作成する。一意の値を含む列にユニークインデックスを作成する。...


ALTER TABLE NOCHECK/CHECKステートメントで外部キー制約を無効にする方法

T-SQL では、以下の2つの方法で外部キー制約を一時的に無効にすることができます。ALTER TABLE NOCHECK / CHECK ステートメントを使用するCHECK CONSTRAINT トリガーを使用するALTER TABLE NOCHECK ステートメントは、指定されたテーブルのすべての外部キー制約のチェックを無効にします。ALTER TABLE CHECK ステートメントは、無効化されていた制約を再び有効にします。...


SQL Server で ROWCOUNT_BIG() 関数を使用して削除された行数をカウントする

SQL Server ストアド プロシージャ内で削除された行数をカウントするには、いくつかの方法があります。方法@@ROWCOUNTを使用するこれは最も簡単な方法ですが、いくつかの制限があります。DELETE ステートメントが単一のテーブルに対して実行されている必要があります。...


SQL Serverにおけるテーブル変数とインデックス:パフォーマンスを向上させるためのベストプラクティス

SQL Server 2014以降では、テーブル変数に対してインデックスを作成することが可能になりました。しかし、従来のテーブルとは異なり、いくつかの制限事項が存在します。テーブル変数とインデックステーブル変数は、一時的なデータセットを格納するために使用される特殊な変数です。通常のテーブルと同様に、列とデータ型を定義することができます。...


SQL Server 接続エラー「ターゲット プリンシパル名が無効です。SSPI コンテキストを生成できません」の原因と解決策

「ターゲット プリンシパル名が無効です。SSPI コンテキストを生成できません」というエラーは、SQL Server への接続時に発生する一般的な問題です。このエラーは、TFS (Team Foundation Server) と Kerberos 認証が関与する環境で特に頻繁に発生します。...