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

Issue 2161983003: URLRequestContextBuilder should initialize a default CT state (Closed)

Created:
4 years, 5 months ago by Ryan Sleevi
Modified:
4 years, 5 months ago
CC:
chromium-reviews, cbentzel+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

URLRequestContextBuilder should initialize a default CT state When using a URLRequestContextBuilder, the URLRequestContext it built would not be initialized with any Certificate Transparency logs. This is because CT logs are a policy of the embedder. Without any CT logs, all certificates naturally fail any CT policies the embedder has set. With no way to override this on the URLRequestContextBuilder, any CA which has CT compliance enforced on it will be rejected. This is because per-CA policies are enforced at the //net layer as part of a 'secure by default' policy, and thus fail closed. The result is that embedders that used URLRequestContextBuilder, such as Android WebView, rather than building URLRequestContexts themselves, such as Chrome does, would reject certs from some CAs. While this could be overridden by manipulating the TransportSecurityState of the URLRequestContext that was built, doing so would result in a less-secure solution. This CL mitigates it two-fold, by allowing the embedder to specify their own CTVerifier to handle evaluating Certificate Transparency information, and if they fail to, by initializing with the set of logs known to //net and trusted by Chrome according to the Chrome CT policy. This gives embedders a sane default, while still allowing them to override with their own application policies. This doesn't fully bootstrap a CT enforcement for embedders, as things like consistency proof fetching are concepts that extend beyond the URLRequestContext (and handled by the IOThread in Chrome), but offers a reasonable baseline. This also helps ensure things like Expect-CT work consistently for embedders. BUG=628421 Committed: https://crrev.com/0fe709bafb6c31586b2833d4974612d6eccc2e02 Cr-Commit-Position: refs/heads/master@{#406455}

Patch Set 1 #

Patch Set 2 : Fixes #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+21 lines, -2 lines) Patch
M net/url_request/url_request_context_builder.h View 1 3 chunks +5 lines, -0 lines 0 comments Download
M net/url_request/url_request_context_builder.cc View 1 3 chunks +16 lines, -2 lines 2 comments Download

Messages

Total messages: 21 (11 generated)
sgurun-gerrit only
On 2016/07/19 21:21:54, commit-bot: I haz the power wrote: > Dry run: CQ is trying ...
4 years, 5 months ago (2016-07-19 21:25:49 UTC) #3
sgurun-gerrit only
On 2016/07/19 21:25:49, sgurun wrote: > On 2016/07/19 21:21:54, commit-bot: I haz the power wrote: ...
4 years, 5 months ago (2016-07-19 21:28:52 UTC) #4
sgurun-gerrit only
On 2016/07/19 21:25:49, sgurun wrote: > On 2016/07/19 21:21:54, commit-bot: I haz the power wrote: ...
4 years, 5 months ago (2016-07-19 21:28:55 UTC) #5
Ryan Sleevi
4 years, 5 months ago (2016-07-19 21:41:22 UTC) #11
sgurun-gerrit only
On 2016/07/19 21:41:22, Ryan Sleevi (extremely slow) wrote: not an owner but lgtm
4 years, 5 months ago (2016-07-19 22:29:48 UTC) #12
eroman
Is there a test that exercises and confirms this behavior? Otherwise behavior and code LGTM ...
4 years, 5 months ago (2016-07-19 22:55:41 UTC) #13
Ryan Sleevi
There's no unittest, because this is really something for the embedder level to deal with. ...
4 years, 5 months ago (2016-07-19 23:04:53 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2161983003/20001
4 years, 5 months ago (2016-07-20 00:45:27 UTC) #18
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 5 months ago (2016-07-20 02:04:01 UTC) #19
commit-bot: I haz the power
4 years, 5 months ago (2016-07-20 02:05:35 UTC) #21
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/0fe709bafb6c31586b2833d4974612d6eccc2e02
Cr-Commit-Position: refs/heads/master@{#406455}

Powered by Google App Engine
This is Rietveld 408576698