web-dev-qa-db-ja.com

Active Directory資格情報を使用したMicrosoft SQL Serverログイン

Microsoft SQL Serverは、Active Directoryドメインの一部であるWindowsサーバーで実行されています。

ユーザー管理を簡単にするために、SQL承認は、この post で説明されているように、Active Directoryユーザーグループを使用して設定されます。

誰もがドメイン内で作業している限り、これは正常に機能します。ユーザーはAD資格情報を使用してコンピューターにログインし、「Windows認証」を使用してSQLサーバーに接続できます。

問題は、ユーザーがActive Directoryドメインの一部ではない他のクライアントコンピューターでも作業していることです(それらをドメインに追加することはできません)。

SQL Serverのログイン画面で説明されているように、AD認証を使用してサーバーにログインするためにAD資格情報を使い続けることを望んでいました。

SQL Server Login Screen

ただし、これは機能していないようです。

Acive Directory Password Authenticationでログインすると、証明書の問題が発生します。エラー:「証明書チェーンは信頼されていない機関によって発行されました。」

Cannot connect to x.x.x.x.

===================================

A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - The certificate chain was issued by an authority that is not trusted.) (.Net SqlClient Data Provider)

------------------------------
For help, click: http://go.Microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=-2146893019&LinkId=20476 (page does not exist)

奇妙なことに、ログインウィンドウで[オプション]設定に移動し、[サーバー証明書を信頼する]チェックボックスをオンにすると、突然サーバーに接続できなくなり、エラーが表示されます。

Cannot connect to x.x.x.x.

===================================

Login failed for user ''. (.Net SqlClient Data Provider)

実現したい設定は可能ですか?もしそうなら、どうすればそれを達成できますか? :)

まとめ:SQLサーバーはADドメインで実行されており、ユーザーはAD資格情報を持っていますが、ADドメインの一部ではないクライアントコンピューターからログインできる必要があります。 AD資格情報。

14
Gilles Lesire

エラーメッセージは、証明書が信頼できない機関によって発行されたというものです。ほとんどの場合、それがADドメインになります。

試してみるとよいいくつかの回避策:

  1. このdba.stackexchange.comの投稿 は、上の接続ウィンドウのオプションボタンをクリックしてTrustServerCertificate=True [追加の接続パラメータ]の下。これは基本的にSSMSに「はい」と伝えているだけです。
  2. それがうまくいかない場合、 このdba.stackexchange.comの投稿 は、Windowsをだますためにrunasを使用することを提案しています。例えば、 runas /netonly /user:domain\username "C:\path_to\ssms.exe"これはSSMSでこれまで行ったことはありませんが、OPがあなたと同じような状況にあるように見えるので、試してみる価値はあります(そして、その人が答えると信じています)。

とにかく、うまくいけば、これらの回避策の1つがうまくいくでしょう。

11

最も簡単な方法は、「Microsoft SQL Server Management Studio」を右クリックするだけです。「詳細」で「別のユーザーとして実行」を選択します。それは私のために働いた。ログイン画面で「Active Directory-パスワード」を選択すると同じことができると思いましたが、残念ながらできませんでした。

1
Peter V