Microsoft SQL Serverは、Active Directoryドメインの一部であるWindowsサーバーで実行されています。
ユーザー管理を簡単にするために、SQL承認は、この post で説明されているように、Active Directoryユーザーグループを使用して設定されます。
誰もがドメイン内で作業している限り、これは正常に機能します。ユーザーはAD資格情報を使用してコンピューターにログインし、「Windows認証」を使用してSQLサーバーに接続できます。
問題は、ユーザーがActive Directoryドメインの一部ではない他のクライアントコンピューターでも作業していることです(それらをドメインに追加することはできません)。
SQL Serverのログイン画面で説明されているように、AD認証を使用してサーバーにログインするためにAD資格情報を使い続けることを望んでいました。
ただし、これは機能していないようです。
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資格情報。
エラーメッセージは、証明書が信頼できない機関によって発行されたというものです。ほとんどの場合、それがADドメインになります。
試してみるとよいいくつかの回避策:
TrustServerCertificate=True
[追加の接続パラメータ]の下。これは基本的にSSMSに「はい」と伝えているだけです。runas /netonly /user:domain\username "C:\path_to\ssms.exe"
これはSSMSでこれまで行ったことはありませんが、OPがあなたと同じような状況にあるように見えるので、試してみる価値はあります(そして、その人が答えると信じています)。とにかく、うまくいけば、これらの回避策の1つがうまくいくでしょう。
最も簡単な方法は、「Microsoft SQL Server Management Studio」を右クリックするだけです。「詳細」で「別のユーザーとして実行」を選択します。それは私のために働いた。ログイン画面で「Active Directory-パスワード」を選択すると同じことができると思いましたが、残念ながらできませんでした。