webRequest.SecurityInfo
Ein Objekt, das die Sicherheitsmerkmale einer bestimmten Webanfrage beschreibt. Ein Objekt dieses Typs wird von der webRequest.getSecurityInfo()
API zurückgegeben.
Wenn die Anfrage nicht durch TLS gesichert ist, enthält dieses Objekt nur die Eigenschaft state
, deren Wert "insecure"
ist.
Typ
Werte dieses Typs sind Objekte. Sie enthalten die folgenden Eigenschaften:
certificates
-
Array
vonCertificateInfo
. WennwebRequest.getSecurityInfo()
mit der OptioncertificateChain
aufgerufen wurde und diese auftrue
gesetzt ist, wird es einCertificateInfo
Objekt für jedes Zertifikat in der Kette enthalten, vom Serverzertifikat bis einschließlich des Trust-Roots.Andernfalls enthält es ein einzelnes
CertificateInfo
Objekt für das Serverzertifikat. certificateTransparencyStatus
Optional-
String
. Gibt den Certificate Transparency Status für die Verbindung an. Dies kann einen der folgenden Werte annehmen:- "not_applicable"
- "policy_compliant"
- "policy_not_enough_scts"
- "policy_not_diverse_scts"
cipherSuite
Optional-
String
. Verschlüsselungssuite, die für die Verbindung verwendet wird, formatiert gemäß der TLS-Spezifikation: zum Beispiel "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256". errorMessage
Optional-
String
. Falls es ein Problem mit dem TLS-Handshake gab (zum Beispiel, wenn das Zertifikat abgelaufen ist, oder ein vertrauenswürdiger Root nicht gefunden werden konnte, oder ein Zertifikat widerrufen wurde), wirdstatus
"broken" sein und dieerrorMessage
Eigenschaft wird eine Zeichenkette enthalten, die den Fehler beschreibt, entnommen aus der internen Fehlercode-Liste von Firefox.Beachten Sie jedoch, dass Sie derzeit
getSecurityInfo()
nur imonHeaderReceived
Listener aufrufen können und dasonHeaderReceived
Ereignis nicht ausgelöst wird, wenn der Handshake fehlschlägt. In der Praxis wird dies also niemals gesetzt. hsts
Optional-
Boolean
.true
wenn der Host Strict Transport Security verwendet, andernfallsfalse
. isDomainMismatch
Optional-
Boolean
.true
wenn der Domainname des Servers nicht mit dem Domainnamen in seinem Zertifikat übereinstimmt, andernfallsfalse
. isExtendedValidation
Optional-
Boolean
.true
wenn der Server ein Extended Validation Certificate hat, andernfallsfalse
. isNotValidAtThisTime
Optional-
Boolean
.true
wenn die aktuelle Zeit außerhalb des Gültigkeitszeitraums des Serverzertifikats liegt (d.h. das Zertifikat ist abgelaufen oder noch nicht gültig), andernfallsfalse
. isUntrusted
Optional-
Boolean
.true
wenn eine Kette zu einem vertrauenswürdigen Root-Zertifikat nicht konstruiert werden konnte, andernfallsfalse
. keaGroupName
Optional-
String
. Wennstate
"secure" ist, beschreibt dies den Schlüsselaustauschalgorithmus, der in dieser Anfrage verwendet wurde. protocolVersion
Optional-
String
. Version des verwendeten TLS-Protokolls. Einer von:- "TLSv1"
- "TLSv1.1"
- "TLSv1.2"
- "TLSv1.3"
- "unknown" (wenn die Version nicht gültig ist)
secretKeyLength
Optional-
Number
. Die Länge des geheimen Schlüssels in Bits. signatureSchemeName
Optional-
String
. Wennstate
"secure" ist, beschreibt dies das in dieser Anfrage verwendete Signaturschema. state
-
String
. Zustand der Verbindung. Einer von:- "broken": der TLS-Handshake ist fehlgeschlagen (zum Beispiel, das Zertifikat war abgelaufen)
- "insecure": die Verbindung ist keine TLS-Verbindung
- "secure": die Verbindung ist eine sichere TLS-Verbindung
- "weak": die Verbindung ist eine TLS-Verbindung, wird jedoch als schwach betrachtet. Sie können
weaknessReasons
untersuchen, um das Problem zu finden.
Beachten Sie jedoch, dass Sie derzeit
getSecurityInfo()
nur imonHeaderReceived
Listener aufrufen können und dasonHeaderReceived
Ereignis nicht ausgelöst wird, wenn der Handshake fehlschlägt. In der Praxis wird dies also niemals auf "broken" gesetzt sein. usedDelegatedCredentials
Optional-
Boolean
.true
wenn die Verbindung Delegierung von Zertifikaten verwendet hat, andernfallsfalse
. usedEch
Optional-
Boolean
.true
wenn die Verbindung ECH (Encrypted Client Hello) verwendet hat, andernfallsfalse
. usedOcsp
Optional-
Boolean
.true
wenn die Verbindung eine OCSP-Anfrage (Online Certificate Status Protocol) gemacht hat, andernfallsfalse
. usedPrivateDns
Optional-
Boolean
.true
wenn die Verbindung eine private DNS-Abfrage gemacht hat, wie zum Beispiel mit DoH (DNS über HTTPS), andernfallsfalse
. weaknessReasons
Optional-
String
. Wennstate
"weak" ist, zeigt dies den Grund an. Aktuell kann dies nur einen einzigen Wert "cipher" enthalten, der anzeigt, dass die ausgehandelte Verschlüsselungssuite als schwach angesehen wird.
Browser-Kompatibilität
BCD tables only load in the browser