1

自己署名証明書を作成し、その証明書を使用して SQL Server 2012 を起動しようとしていますが、プロパティが見つからないというエラー オブジェクトで失敗します。サービスがまったく開始されません。

しかし、証明書を削除したところ、SQL Server を起動できました。

しかし、Encrypt=true、Trust Certificate=true で SQL Server に接続しようとしたところ、SQL Server Client は SQL Server に接続できました。SQL Server は 2012 年以降、自己署名証明書を自動的に使用しますか?

Encrypt = true および Trust Certificate = false に設定すると、同様に信頼エラーが発生します。インストールしたときに SQL Server 2012 に証明書をインストールしていません。

  1. SQL Server クライアント ライブラリのバグですか? 証明書がなく、接続が実際には安全でない場合でも、パラメーター Encrypt = true および Trust = true で接続していること。
  2. 構成されていない場合、SQL Server 2012 は自己署名証明書を自動的に使用しますか?
4

1 に答える 1

3

あなたの質問に対するコメントに書いたことを繰り返すことしかできません。詳細を投稿しない限り、おそらく誰もあなたを直接助けることはできません。

SQL Server で使用できる証明書の追加情報については、thisおよびthisまたはthisを参照してください。

ここでは、証明書のプロパティと作成される秘密鍵に関する情報を確認できます。AT_KEYEXCHANGEキーについては、 KeySpec オプションを使用することが非常に重要です。後でオプションを変更するのは難しいです ( certutil.exe-importPFX と を使用すると可能ですAT_KEYEXCHANGEが、非常にトリッキーです)。たとえば、コア署名に使用する必要がある自己署名証明書にはAT_SIGNATURE、反対の KeySpec オプションが必要です。したがって、未知の自己署名証明書を取得して、SSL 暗号化に使用できることを期待することはできません。MakeCert.exeユーティリティを使用して新しい証明書を作成し、インストールしてから、SQL Server 構成マネージャーを使用して SQL Server で使用できるように構成することをお勧めします。

この記事またはの記事に、MakeCert.exe を使用して SQL Server で使用できる自己署名証明書を作成する方法に関する追加情報が記載されています。

于 2012-10-28T08:59:35.037 に答える