サーバーの認証モードの変更
適用対象: SQL Server
この記事では、SQL Server で SQL Server Management Studio または Transact-SQL を使用して、サーバーの認証モードを変更する方法について説明します。 SQL Server データベース エンジン はインストール中に、 [Windows 認証モード] または [SQL Server 認証モードと Windows 認証モード] のいずれかに設定されます。 インストール後は、認証モードをいつでも変更できます。
インストール中に [Windows 認証モード] を選択した場合、sa
ログインは無効となり、パスワードはセットアップによって割り当てられます。 後で認証モードを [SQL Server 認証モードと Windows 認証モード] に変更しても、sa
ログインは無効のままです。 sa
ログインを使用するには、ALTER LOGIN
ステートメントを使用して、 sa
ログインを有効にし、新しいパスワードを割り当ててください。 sa
ログインは、SQL Server 認証を使用しないとサーバーに接続できません。
解説
sa
アカウントは、よく知られた SQL Server アカウントで、悪意のあるユーザーの攻撃対象となることが少なくありません。 sa
アカウントは、アプリケーションで必要とされない限り、有効にしないでください。 sa
ログインには、複雑なパスワードを使用することが重要です。
SSMS または Transact-SQL を使用して sa
ログインを有効にすることができます。
オブジェクト エクスプローラーで、[セキュリティ]、[ログイン] の順に展開し、[sa] を右クリックして [プロパティ] を選択します。
[全般] ページで、
sa
ログインのパスワード作成と確認が必要になる場合があります。[状態] ページで、[ログイン] の [有効] を選択し、[OK] を選択します。
SQL Server Management Studio で認証モードを変更する
SQL Server Management Studio (SSMS) のオブジェクト エクスプローラーで、サーバーを右クリックし、[プロパティ] を選択します。
[セキュリティ] ページの [サーバー認証]で、新しいサーバーの認証モードを選択し、[OK] を選択します。
[SQL Server Management Studio] ダイアログ ボックスで、SQL Server の再起動が必要であるというメッセージに対して [OK] を選択します。
オブジェクト エクスプローラーでサーバーを右クリックし、[再起動] を選択します。 SQL Server エージェントも再起動する必要があります (実行されている場合)。
例
注意事項
次の例では、拡張ストアド プロシージャを使用して、サーバー レジストリを変更します。 レジストリの変更の方法を誤った場合、深刻な問題が発生することがあります。 これらの問題が起きた場合、オペレーティング システムを再インストールしなければならない場合があります。 Microsoft は、これらの問題を解決できることを保証できません。 レジストリはユーザー自身の責任において変更してください。
認証モードを変更するために必要なアクセス許可は、sysadmin または CONTROL SERVER です。
A. 認証を Windows のみに変更する
サーバーの認証を Windows のみに変更する:
USE [master] GO EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode', REG_DWORD, 1; GO
sa
アカウントを無効にする:USE [master] GO ALTER LOGIN sa DISABLE; GO
B. 認証を混合モードに変更する (Windows と SQL)
sa
アカウントを有効にし、強力なパスワードを設定する:USE [master] GO ALTER LOGIN sa ENABLE; GO ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>'; GO
サーバーの認証を混合モードに変更する:
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode', REG_DWORD, 2; GO