1

SQLServer2012をスタンドアロンインスタンスとしてWindows8Enterpriseエディションにインストールしています。混合モードで実行されています。現在ログインしているアカウントはローカルMACHINE\Administratorsのメンバーであり、ローカルBUILTIN\Administratorsグループはsysadminロールにあります。適切な方法として、現在のユーザーは、同じくsysadminロールにあるMACHINE\SQLAdminsグループにも属しています。

ショートカットからSQLServerManagement Studio(SSMS)を起動すると、Windows認証を使用できません。次のエラーが発生します。

TITLE: Connect to Server
Cannot connect to INSTANCENAME.
ADDITIONAL INFORMATION:
Login failed for user 'MACHINE\user'. (Microsoft SQL Server, Error: 18456)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=18456&LinkId=20476

実際、ショートカットからLinqPadを起動すると、Windows認証に依存する接続文字列を使用してサーバーに接続できません。

ただし、RunAs Administratorを使用して昇格された特権でSSMSまたはLinqPadを実行すると、Windows認証を使用でき、期待どおりのエクスペリエンスが得られます。

または、RunAsコマンドをSSMSショートカットに含めることもできます。

C:\Windows\System32\runas.exe /USER:MACHINE\user "C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\Ssms.exe"

驚いたことに、ショートカットをダブルクリックすると、現在のユーザーのパスワードを入力するように求められます。ただし、その再認証が行われると、SSMSは現在のユーザーのWindows認証を許可します。

問題は、ショートカットをダブルクリックしたときにSSMSが実行されているユーザーは何ですか。最終的には、最初に特権を昇格せずに、LinqPadやSSMS、またはWindows認証を使用してデータベースに接続するその他のアプリを実行するにはどうすればよいですか。

4

2 に答える 2

2

使用するときにSQLServerをインストールしたユーザーの資格情報を提供する可能性はありますRun asか?

このSOの質問の2番目の回答を参照してください:

以前のバージョンのSQLでは、BUILTIN\Administratorsグループにsysadminロールが与えられていました。SQL 2008では、ローカル管理者にはデフォルトでログイン権限が付与されていません。インストールを実行するユーザーのみがデフォルトのsa権限になります。インストール中にユーザーを追加するオプションがありますが、追加しなかったようです。

saとしてログインし、必要なWindowsログイン(ローカル管理者アカウントなど)を構成する必要があります。

同じことが起こりました。ユーザーアカウントがローカル管理者でしたが、SQLServerをインストールした人がWindowsアカウントをSQLServerログインに手動で追加するまでログインできませんでした。

于 2012-11-01T21:09:33.467 に答える
0

以前のバージョンのSQLでは、BUILTIN\Administratorsグループにsysadminロールが与えられていました。SQL 2008では、ローカル管理者にはデフォルトでログイン権限が付与されていません。インストールを実行するユーザーのみがデフォルトのsa権限になります。インストール中にユーザーを追加するオプションがありますが、追加しなかったようです。

于 2015-12-28T10:12:55.103 に答える