Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.024 Beiträge
 
Delphi 12 Athens
 
#4

AW: Corona-App mit Delphi und fehlende Zertifikatsprüfung

  Alt 2. Apr 2020, 13:48
In dem Fall wird eine Exception ausgelöst.
Delphi-Quellcode:
procedure THTTPClient.DoValidateServerCertificate(LRequest: THTTPRequest);
var
  LServerCertAccepted: Boolean;
  LServerCertificate: TCertificate;
begin
  LServerCertAccepted := False;
  if Assigned(FValidateServerCertificateCallback) or Assigned(FValidateServerCertificateEvent) then
  begin
    LServerCertificate := DoGetSSLCertificateFromServer(LRequest);
    if not LServerCertificate.IsDefined then
      raise ENetHTTPCertificateException.CreateRes(@SNetHttpGetServerCertificate);
    if Assigned(FValidateServerCertificateCallback) then
      FValidateServerCertificateCallback(Self, LRequest, LServerCertificate, LServerCertAccepted)
    else
      FValidateServerCertificateEvent(Self, LRequest, LServerCertificate, LServerCertAccepted);
  end
  else
    raise ENetHTTPCertificateException.CreateRes(@SNetHttpInvalidServerCertificate);
  if not LServerCertAccepted then
    raise ENetHTTPCertificateException.CreateRes(@SNetHttpServerCertificateNotAccepted)
  else
    DoServerCertificateAccepted(LRequest);
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat