Angenommen, ich möchte https://golang.org
programmatisch werden. Derzeit hat golang.org (ssl) ein schlechtes Zertifikat, das an *.appspot.com
So ausgestellt wird, wenn ich dies ausführe:
package main
import (
"log"
"net/http"
)
func main() {
_, err := http.Get("https://golang.org/")
if err != nil {
log.Fatal(err)
}
}
Ich bekomme (wie ich erwartet hatte)
Get https://golang.org/: certificate is valid for *.appspot.com, *.*.appspot.com, appspot.com, not golang.org
Jetzt möchte ich diesem Zertifikat selbst vertrauen (stellen Sie sich ein selbst ausgestelltes Zertifikat vor, mit dem ich Fingerabdrücke usw. validieren kann): Wie kann ich eine Anfrage stellen und das Zertifikat validieren / vertrauen?
Ich muss wahrscheinlich openssl verwenden, um das Zertifikat herunterzuladen, es in meine Datei zu laden und tls.Config
struct zu füllen !?