web-dev-qa-db-ja.com

IdentityServer:検証手順に従って、リモート証明書が無効です

OWinとThinktecture Identity Serverを使用してSSOを設定しようとしていますが、SSL証明書を取得することができません。少なくともそれが問題だと思う。 Visual Studioにいるときはすべて正常に動作しますが、マシンでIISを使用しようとすると、「検証手順に従ってリモート証明書が無効です」というエラーが表示されます。 veはIISを使用してみましたが、クライアントはVisual Studioで実行されているインスタンスをトークン認証機関として扱うため、同じエラーが発生します。

30
Bryan Flynn

私の場合、サンプル(ID3v2用)を処理しようとして、ローカルで実行されている証明書エラーを取得しようとしていました。一部のサンプルはowinを介してセルフホスティングを行うこともあるため、ホスト側の証明書をどこで取得しているかさえわかりません。

とにかく、私の修正は、証明書を信頼されたルートにコピーすることでした:

  1. Windowsの[スタート]ボタン、MMC.EXEを実行
  2. ファイル、スナップインの追加:証明書
  3. [コンピューターアカウントを使用]、[ローカルコンピューター]、[OK]
  4. 個人/証明書の下に移動します
  5. [localhost]を右クリックして、[信頼されたルート]にドラッグアンドドロップします。
  6. 「コピー」を選択

できた楽しい。

63
Jester

私のために多くの時間を費やした後、解決策は非常に簡単でした

Certmgr.mscを開きました--->信頼されたルート証明機関からローカルホスト証明書を削除しました。

次に、(IDサーバーを実行した後)ソリューションを開いて、Visual Studioを実行し、IIS Express(SSL)に新しい証明書を生成するかどうかを尋ねられました。[はい]をクリックすると、正常に動作し始めました。

6
Misha Beskin

ローカルコンピューターの信頼されたルート証明機関ストアに使用する証明書IISを追加する必要があります。

2
Mike B

信頼できる人のストアへの証明書の追加は、作成者が提供する 例のreadmeファイル に従って十分です。

ルートストアはCA用であり、そこに何かを追加すると、その機関は信頼されるだけでなく、それによって署名された証明書も自動的に信頼されるため、運用シナリオではより良いはずです。

Microsoft reference から詳細を確認できます。 2ストアの短い説明の抜粋:
ルート:信頼されたルート証明機関(CA)の証明書ストア。
TrustedPeople:直接信頼できる人とリソースの証明書ストア。

追伸:私はそれをテストし、動作するようにしました。私のシナリオでは、マシンAにISと、マシンAとBでISを使用する一連のWebアプリケーションがあります。マシンBのIIS証明書は、 1つはAとISによって使用されていましたが、マシンBの信頼できる人のストアに追加しただけで、「証明書エラー」は消えました。

1
Naigel

上記の設定が完了し、URLを「 https:// localhost 」として指定したにもかかわらず、代わりに「 https:// MachineName "。つまり、マシン名は証明書の「発行先」の値と一致する必要があります

1

.Net Coreの場合、TrustServerCertificate = FalseをTrustServerCertificate = Trueに変更すると、以下のように問題が解決します。

"DataConnect": "Server=tcp:127.0.0.1,1433;Initial Catalog=dbName;Persist Security Info=False;User ID=username;Password=password;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;"
0