ホームページ > バックエンド開発 > Golang > Windows XP 上の Golang 1.9.2 では「x509: 不明な機関によって署名された証明書」が報告されるのに、ブラウザでは報告されないのはなぜですか?

Windows XP 上の Golang 1.9.2 では「x509: 不明な機関によって署名された証明書」が報告されるのに、ブラウザでは報告されないのはなぜですか?

DDD
リリース: 2024-11-12 15:52:02
オリジナル
679 人が閲覧しました

Why Does Golang 1.9.2 on Windows XP Report

Golang HTTP x509: 証明書の不明な権限に関するエラー

最近、バックエンド システムにアクセスしようとすると、問題が発生することがありました。 Windows XP で Golang 1.9.2 を使用します。 Windows や Linux などの最新のオペレーティング システムでは問題なく機能するにもかかわらず、Windows XP でコードを実行しているユーザーは次のエラーに遭遇しました: 「x509: 不明な機関によって署名された証明書。」

Firefox ESR と Firefox ESR を使用したブラウザベースのテストChromium ブラウザでは、同じ Windows XP 環境から同じ URL にアクセスしても、証明書関連の問題が発生しないことが明らかになりました。特に、影響を受ける SSL 証明書は有効なままであり、信頼できる認証局によって署名されています。

一部の個人は、InsecureSkipVerify パラメーターを使用して TLS 検証をオーバーライドすることで、この問題の解決を試みています。

import ("net/http"; "crypto/tls")

tr := &http.Transport{
    TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
}
client := &http.Client{Transport: tr}
resp, err := client.Get("https://someurl:443/")
ログイン後にコピー

ただし、この方法は効果がないことが証明されています。 TLS 検証のオーバーライドは、アプリケーションを中間者攻撃などの潜在的な脅威にさらす可能性があるため、慎重に行う必要があることに注意することが重要です。

同じ問題が発生している場合は、次のことを確認してください。 InsecureSkipVerify パラメータが正しく設定されている。誤って「InsecureSkyVerify」に設定してしまった可能性があります。正しいコード スニペットは次のとおりです:

// NewAPIClient - creates a new API client
func NewAPIClient() Client {
    c := &APIClient{}

    tr := &http.Transport{
        TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
    }
    c.client = &http.Client{Transport: tr}
    return c
}
ログイン後にコピー

TLS 検証のオーバーライドは、テスト目的でのみ、または厳格なカスタム検証対策と組み合わせて検討する必要があることに注意してください。

以上がWindows XP 上の Golang 1.9.2 では「x509: 不明な機関によって署名された証明書」が報告されるのに、ブラウザでは報告されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート