Chrome 58+では、SSL証明書でのCNのサポートが廃止されました。つまり、少なくとも私のマシンでは、IIS Expressは常にセキュリティ警告をスローします。
Chrom 58+で動作する証明書の場合、IIS Express SSL証明書を変更するにはどうすればよいですか?
クリスの答えが問題を解決します、ありがとう!私のチーム全体がこの問題を抱えていたため、Chrisの答えの手順を実行するための小さなPowershellスクリプトを作成しました。
https://Gist.github.com/camieleggermont/5b2971a96e80a658863106b21c479988
これを昇格モードで実行すると、うまくいきませんでした。
これは私がこれを修正した方法です。もっと簡単な方法があるかもしれません(あると確信しています!)
ステップ1-Windows PowerShellを開き(管理モードで)、次のような証明書を生成します。
New-SelfSignedCertificate -DnsName "localhost", "localhost" -CertStoreLocation "cert:\LocalMachine\My"
Thumb印を安全に保管してください。
ステップ2-コマンドプロンプトを開き(管理モードで)、これらのコマンドを実行します。
1つ目は、ポート44300-44399の現在のIIS Express証明書を削除します。
for /L %i in (44300,1,44399) do netsh http delete sslcert ipport=0.0.0.0:%i
次に、これらのポートに新しい証明書を追加します。 明らかにthumb印を変更する。
for /L %i in (44300,1,44399) do netsh http add sslcert ipport=0.0.0.0:%i certhash=33459ADA4D5329673604F43A073B7F43084818A7 appid={214124cd-d05b-4309-9af9-9caa44b2b74a}
Appidは、IIS Express 10用です。 IIS Express appidが最初のものと同じであることを確認することをお勧めします。これを行うには、次を実行します。
netsh http show sslcert
ステップ-IIS ExpressとChromeを再起動し、Chromeでサイトの1つを実行します。
再びセキュリティ警告が表示されます。ページに進み、設定>詳細設定、HTTPS/SSL証明書の管理に進みます。ここで、個人から証明書をエクスポートし、証明書を信頼されたルート証明機関にインポートし(.p7bとして実行しました)、Chromeを再起動します。
サイトをもう一度試してください-これで安全になります。
CertmgrのChrome以外でもこのすべてを実行できます。
編集:certmgrを使用した上記の手順3の代替手順:
Visual Studioで修正されるまでこの設定を使用しています。
chrome:// flags /#allow-insecure-localhost
毎回セキュリティ例外を許可する必要がなくなりますが、ブラウザバーにSSLが無効(赤)として表示されます。
Chrisが提供するソリューションがこのトリックを行います(ありがとう!)が、最終的にはビジュアルスタジオチームがこれを修正する必要があります。この問題に注意を向けるためにここで投票できます: https://developercommunity.visualstudio.com/content/problem/48596/visual-studio-2017-151-264037-crashing-during-code。 html
より視覚的に修正する方法は、Jexus Managerを使用して、
ブログ投稿 で正確な手順を文書化しました。