私はこの自己署名証明書をいくつかのブラウザー(Chrome、Firefox、Edge、IE)で機能させるために何週間も努力してきました。
証明書を作成してtrusted root certificate
としてインストールすることができましたが、すべてのブラウザーで、テスト環境(xamppを使用するWebサイト)を使用できるようにするためにセキュリティをバイパスする必要があります。
今日はEdgeとIE(成功せず))に焦点を当てましたが、chromeの手順が少し異なるため、=で機能するようにします。 chrome明日。
私は次のように、新しいものを作成することと、古い(動作している)ものを複製することの両方を試みました:
新しい証明書を作成するには、管理者としてPowerShellを開き、次のようにします。
New-SelfSignedCertificate -DnsName "127.0.0.1", "localhost" -CertStoreLocation "cert:\LocalMachine\My"
このようにエクスポートされます 説明 。
クローンを作成するために、この例を使用しました ドキュメント 。
次に、certlm.msc
を使用して「信頼されたルート証明書」に証明書をインポートしました。
しかし、EdgeとIEでエラーコードDLG_FLAGS_INVALID_CA
とDLG_FLAGS_SEC_CERT_CN_INVALID
を取得しました。
誰かがこれを機能させる手順を知っていますか?
ネットを探していましたが、見つかりませんでした。
私は同様のことをしようとしていて、以下を機能させました:
New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname localhost -FriendlyName "Dev localhost" -NotAfter (Get-Date).AddMonths(240) -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.1")
'NotAfter'パラメータは、証明書を20年に延長します。 「TextExtension」パラメータは、「サーバー認証」のみの証明書を構成します。これがないと、デフォルトでクライアント認証+サーバー認証になります。私は調査していませんが、クライアント認証が問題を引き起こしているようです(ほとんどのオンラインの例では言及されていないため、これは奇妙です。私は one でした)。
これにより、LocalComputer\PersonalとLocalComputer\Intermediate証明機関の両方に証明書が作成されます。また、IISで証明書を選択することもできます。
サイトを実際に実行するには、証明書が信頼されたルート証明機関に入る必要があります。これを行うには、証明書をエクスポート/インポートするか、IEのサイトにナビゲーションし、赤いセキュリティ領域をクリックして、画面を操作して証明書をインポートします。上記のリンクは、インポート/エクスポートのアプローチを示しています。
最後の注意:
HTH