Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
winhttp-Request scheitert an Zertifikatsproblemen |
02.01.2020 11:00:42 |
Thomas1000 |
|
|
|
02.01.2020 14:56:36 |
Werner |
|
|
|
02.01.2020 16:11:34 |
Mase |
|
|
|
03.01.2020 03:09:20 |
Gast76501 |
|
|
|
03.01.2020 10:12:40 |
Gast89156 |
|
|
Von:
Thomas1000 |
Datum:
02.01.2020 11:00:42 |
Views:
1194 |
Rating:
|
Antwort:
|
Thema:
winhttp-Request scheitert an Zertifikatsproblemen |
Hallo werte Gemeinde!
Eine kleine Herausforderung für VBA/Access/Zertifikats-Profis:
Für eine Access-Datenbank brauche ich Zugriff auf die API von SAP. Die benötigten Aufrufe wurden bereits erfolgreich via Postman getestet und funktionieren einwandfrei.
Ähnliche Schnittstellen zu JIRA und Confluence (ebenfalls über https - sogar beim selben Kunden!) habe ich bereits erfolgreich umgesetzt - OHNE Zertifikate anzugeben!
Mit folgendem Code versuche ich den Zugriff:
Code:
Dim SAP As New WinHttp.WinHttpRequest
Dim json As String
Dim SAPuser As String
Dim SAPpw As String
SAPuser = ""
SAPpw = ""
json = json & "{"
json = json & " ""top"": ""1"""
json = json & "}"
payload = "/API_PURCHASEREQ_PROCESS_SRV/A_PurchaseRequisitionHeader"
myURL = "https://xxxxxx.yyyyyyyyy.com:20400/sap/opu/odata/sap" & payload
(Server nur im lokalen Netz erreichbar - was mit Postman auch funktioniert!)
With SAP
.SetClientCertificate "LOCAL_MACHINEMYxxx.yyy.zzz.com"
.Option(4) = 13056 ' SSL-Zertifikate nicht reklamieren (eigentlich...)
.Open "GET", myURL, False
.setRequestHeader "Content-Type", "application/json"
.setRequestHeader "Accept", "application/json"
.setRequestHeader "x-csrf-token", "fetch"
.setRequestHeader "Authorization", "Basic"
.SetCredentials SAPuser, SAPpw, 0
.Send json <== Hier tritt der Fehler auf!
Versuche ich dieses Script aufzurufen, dann bekomme ich - je nach Konstellation eine Fehlermeldung:
1) Kein Client-Zertifikat (oder ungültigen Pfad) übergeben:
==> Die Zertifizierungsstelle ist ungültig oder fehlerhaft (80072f0d)
2) Zertifikat NICHT angegeben UND Option(4) = 13056 (was angeblich Meldungen wegen Zerti-Problemen unterdrücken soll):
==> Beim Verarbeiten des Zertifikats ist ein unbekannter Fehler aufgetreten (80090327)
3) Zertifikat angegeben EGAL ob Option(4) = 13056 aktiv ist oder NICHT:
==> Die Anmeldeinformation im Clientzertifikat wurde nicht erkannt (80072f9a)
Am Proxy dürfte es nicht liegen, da es sich um eine interne Adresse handelt und auch Postman egal ist, ob Proxy aktiviert wurde oder nicht.
Eigentlich hatte ich große Hoffnungen in die Option(4) = 13056 gesetzt, die laut diverser Foren eigentlich Zertifikatsprobleme ignorieren sollte. Ausgeschrieben: Option(WinHttpRequestOption_SslErrorIgnoreFlags) = SslErrorFlag_Ignore_All)
Das Client-Zertifikat wurde vom Unternehmen installiert, aber auch selbst-erstellte und -signierte Zertifikate an gleichem Pfad ergeben genau das selbe Ergebnis.
Wer kann mir Tipps bzw. Denkanstöße geben?
Warum funktioniert die Option(4) nicht?
Kann es am exotischen Port 20400 (auf den ich keinen Einfluss nehmen kann) liegen?
Wer hat mit Access schon erfolgreich eine SAP-API genutzt?!
1000(s) Dank im Voraus!
Thomas Tausend
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
winhttp-Request scheitert an Zertifikatsproblemen |
02.01.2020 11:00:42 |
Thomas1000 |
|
|
|
02.01.2020 14:56:36 |
Werner |
|
|
|
02.01.2020 16:11:34 |
Mase |
|
|
|
03.01.2020 03:09:20 |
Gast76501 |
|
|
|
03.01.2020 10:12:40 |
Gast89156 |
|
|