Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(150)

Unified Diff: extensions/common/api/web_request.json

Issue 2156763003: Extend the webRequest.onCompleted event details object with TLS/SSL information Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Consistently use key constants for dict fields and simplify validation error reporting Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: extensions/common/api/web_request.json
diff --git a/extensions/common/api/web_request.json b/extensions/common/api/web_request.json
index 4e314eb6c07e49ffad370b43061cae3b4f3b8505..11e27c4ea020acf100dea7dba26fee87857071bb 100644
--- a/extensions/common/api/web_request.json
+++ b/extensions/common/api/web_request.json
@@ -150,6 +150,161 @@
}
},
"description": "Contains data uploaded in a URL request."
+ },
+ {
+ "id": "SSLVersions",
+ "type": "string",
+ "enum": ["UNKNOWN", "SSL 2.0", "SSL 3.0", "TLS 1.0", "TLS 1.1", "TLS 1.2", "TLS 1.3", "QUIC"]
+ },
+ {
+ "id": "ValidationErrors",
+ "type": "string",
+ "enum": ["ERR_CERT_REVOKED", "ERR_CERT_INVALID", "ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN", "ERR_CERT_AUTHORITY_INVALID", "ERR_CERT_COMMON_NAME_INVALID", "ERR_CERT_NAME_CONSTRAINT_VIOLATION", "ERR_CERT_WEAK_SIGNATURE_ALGORITHM", "ERR_CERT_WEAK_KEY", "ERR_CERT_DATE_INVALID", "ERR_CERT_VALIDITY_TOO_LONG", "ERR_CERT_UNABLE_TO_CHECK_REVOCATION", "ERR_CERT_NO_REVOCATION_MECHANISM"]
+ },
+ {
+ "id": "DistinguishedName",
+ "type": "object",
+ "properties": {
+ "commonName": {
+ "type": "string",
+ "optional": true,
+ "description": "Subject Common Name."
+ },
+ "localityName": {
+ "type": "string",
+ "optional": true,
+ "description": "Subject Locality Name."
+ },
+ "stateOrProvinceName": {
+ "type": "string",
+ "optional": true,
+ "description": "Subject State or Province Name."
+ },
+ "countryName": {
+ "type": "string",
+ "optional": true,
+ "description": "Subject Country Name."
+ },
+ "streetAddresses": {
+ "type": "array",
+ "items": { "type": "string" },
+ "optional": true,
+ "description": "Subject Street Addresses."
+ },
+ "organizationNames": {
+ "type": "array",
+ "items": { "type": "string" },
+ "optional": true,
+ "description": "Subject Organization Names."
+ },
+ "organizationUnitNames": {
+ "type": "array",
+ "items": { "type": "string" },
+ "optional": true,
+ "description": "Subject Organization Unit."
+ }
+ }
+ },
+ {
+ "id": "Certificate",
+ "type": "object",
+ "properties": {
+ "raw": {
+ "type": "binary",
+ "optional": true,
+ "description": "ArrayBuffer containing the DER encoded certificate."
+ },
+ "serialNumber": {
+ "type": "string",
+ "description": "The serial number of the certificate."
+ },
+ "subject": {
+ "$ref": "DistinguishedName",
+ "description": "The subject of the certificate."
+ },
+ "issuer": {
+ "$ref": "DistinguishedName",
+ "optional": true,
+ "description": "The subject of the issuer certificate."
+ },
+ "expired": {
+ "type": "boolean",
+ "description": "True if the certificate is expired."
+ },
+ "notBefore": {
+ "type": "number",
+ "description": "notBefore time of the certificate."
+ },
+ "notAfter": {
+ "type": "number",
+ "description": "notAfter time of the certificate."
+ },
+ "dnsNames": {
+ "type": "array",
+ "items": { "type": "string" },
+ "optional": true,
+ "description": "Array of DNS names contained in the certificate."
+ },
+ "ipAddresses": {
+ "type": "array",
+ "items": { "type": "string" },
+ "optional": true,
+ "description": "Array of IP Addresses contained in the certificate."
+ }
+ }
+ },
+ {
+ "id": "SSLInfo",
+ "type": "object",
+ "properties": {
+ "cipherSuite": {
+ "type": "string",
+ "description" :"Name of cipher suite used."
+ },
+ "sslVersion": {
+ "$ref": "SSLVersions",
+ "description": "The version of TLS used."
+ },
+ "sentChain": {
+ "type": "array",
+ "optional": true,
+ "description": "Array of Certificates that was sent by the server.",
+ "items": {
+ "$ref": "Certificate"
+ }
+ },
+ "builtChain": {
+ "type": "object",
+ "optional": true,
+ "description": "An object containing information about the certificate chain that was built from the sent certificates.",
+ "properties": {
+ "valid": {
+ "type": "boolean",
+ "description": "True if built chain is valid."
+ },
+ "issuedByKnownRoot": {
+ "type": "boolean",
+ "description": "True if the leaf certificate issued by known root."
+ },
+ "extendedValidation": {
+ "type": "boolean",
+ "description": "True if the leaf certificate is EV."
+ },
+ "error": {
+ "$ref": "ValidationErrors",
+ "description": "Validation error for the certificate chain.",
+ "optional": true
+ },
+ "chain": {
+ "type": "array",
+ "description": "Array of Certificates built from the sent chain.",
+ "items": {
+ "$ref": "Certificate"
+ }
+ }
+ }
+ }
+ }
}
],
"functions": [
@@ -525,7 +680,8 @@
"fromCache": {"type": "boolean", "description": "Indicates if this response was fetched from disk cache."},
"statusCode": {"type": "integer", "description": "Standard HTTP status code returned by the server."},
"responseHeaders": {"$ref": "HttpHeaders", "optional": true, "description": "The HTTP response headers that were received along with this response."},
- "statusLine": {"type": "string", "description": "HTTP status line of the response or the 'HTTP/0.9 200 OK' string for HTTP/0.9 responses (i.e., responses that lack a status line) or an empty string if there are no headers."}
+ "statusLine": {"type": "string", "description": "HTTP status line of the response or the 'HTTP/0.9 200 OK' string for HTTP/0.9 responses (i.e., responses that lack a status line) or an empty string if there are no headers."},
+ "sslInfo": {"$ref": "SSLInfo", "optional": true, "description": "Optional information about the underlying SSL/TLS transport, if one was used."}
}
}
],

Powered by Google App Engine
This is Rietveld 408576698