![]() |
Https zertifikat für Indy verstehen
Hallo ich habe eine große PEM datei bekommen in der alles drin stehen sollte was ich brauche.
Kann ich die einfach beim iohandler vom Webservice hinterlegen?
Delphi-Quellcode:
oder musss ich die auseinander nehmen?
FServer := TIdHTTPWebBrokerBridge.Create(self);
if Securemode then Begin LIOHandleSSL := TIdServerIOHandlerSSLOpenSSL.Create(fServer); LIOHandleSSL.SSLOptions.KeyFile := 'c:\webservice\MyDomain.PEM'; LIOHandleSSL.SSLOptions.CertFile := 'c:\webservice\MyDomain.PEM'; LIOHandleSSL.SSLOptions.RootCertFile := 'c:\webservice\MyDomain.PEM'; LIOHandleSSL.OnGetPassword := OnGetSSLPassword; FServer.IOHandler := LIOHandleSSL; end; Folgenden teile hat die PEM datei
Code:
Wie kann ich die Zertifikate unterscheiden?
-----BEGIN CERTIFICATE REQUEST-----
MIIE3 kuddlemuddle N0RSzv4BCuO4Vikw -----END CERTIFICATE REQUEST----- -----BEGIN PRIVATE KEY----- MIIJ Kuddelmuddel 1IXMpm68= -----END PRIVATE KEY----- -----BEGIN CERTIFICATE----- MIIH kuddelmuddel ITyBhlHw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIG Kuddelmuddel xzlIPK1aEn8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF kuddelmuddel teRCBaho1+V -----END CERTIFICATE----- Was von den PEM abschnitten ist welcher x.509 standard? Ich mein wie bekomme ich dort eine Key, Cert und root datei raus? Warum soviele Zertifikate? |
AW: Https zertifikat für Indy verstehen
Zitat:
Ja, die kann man so hinterlegen (siehe ![]() In der Datei sind mehrere Zertifikate, vermutlich handelt es sich um eine Zertifikatskette mit Zertifikaten der 'Intermediate' CAs. Die Datei kann man vermutlich im Explorer über das Kontextmenü öffnen, die Zertifikatsinformationen werden dann angezeigt. |
AW: Https zertifikat für Indy verstehen
In den Beispielen sind es immer 3 Dateien.
Root und key funktionieren woh auch. Aber beim lesen des Cert meldet
Delphi-Quellcode:
Einen Fehler:
IDSSLOpenSSL.IndySSL_CTX_use_certificate_chain_file(ctx :PSSL_CTX; const AFileName: String) : TIdC_INT;
"Zertifikat konnte nicht geladen werden. error:00000000:lib(0):func(0):reason(0)" |
AW: Https zertifikat für Indy verstehen
Zitat:
Ja, die drei Zertifikate und der private key müssen dann per copy & paste in vier einzelne Dateien übernommen werden. Welches der Drei das das Server- und welches das Root-Zertifikat ist ist z.B. wieder mittels Explorer möglich. |
AW: Https zertifikat für Indy verstehen
ist "certificate Request" für irgend etwas wichtig?
|
AW: Https zertifikat für Indy verstehen
Hallo,
ist zwar schon ein wenig was her, aber auch noch nicht zu lange ;-) Zitat:
![]() Grüße Sebastian |
AW: Https zertifikat für Indy verstehen
Wenn du ne PFX-Datei hast kannst du über OpenSSL auch ganz bequem die Teile rausoperieren, die du für die Schnittstelle brauchst. Ich benutz dafür immer folgende Anleitung und das funktioniert einwandfrei:
![]() Einbinden tue ich das ganze dann immer wie folgt:
Delphi-Quellcode:
Wichtig ist in erster Linie vor allem den Key in eine extra Datei zu bekommen (und überspringe den Schritt das Passwort zu dekodieren. Das macht das Programm selbst über das OnGetPassword Event). Wie schon gesagt. Ich bau alle meine APIs auf diese Art und weise und benutz dafür immer die Verlinkte Anleitung und da hab ich bisher nie irgendwelche Probleme mit gehabt.
LIOHandleSSL := TIdServerIOHandlerSSLOpenSSL.Create(FServer);
LIOHandleSSL.SSLOptions.RootCertFile := ''; LIOHandleSSL.SSLOptions.CertFile := 'C:\Cert\cert.crt'; LIOHandleSSL.SSLOptions.KeyFile := 'C:\Cert\key.key'; LIOHandleSSL.SSLOptions.Method:= sslvTLSv1_2; LIOHandleSSL.OnGetPassword := OnGetSSLPassword; FServer.IOHandler := LIOHandleSSL; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz