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

Issue 17109006: Device robot refresh token integrity validation. (Closed)

Created:
7 years, 6 months ago by David Roche
Modified:
7 years, 6 months ago
CC:
chromium-reviews, oshima+watch_chromium.org, stevenjb+watch_chromium.org, nkostylev+watch_chromium.org, davemoore+watch_chromium.org
Base URL:
http://git.chromium.org/chromium/src.git@master
Visibility:
Public.

Description

Device robot refresh token integrity validation. Before using the robot account refresh token stored in an enterprise device's Local State, verify that the token is owned by the service account id found in the device policy. BUG=245121 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=208019

Patch Set 1 #

Total comments: 10

Patch Set 2 : addressed review comments #

Patch Set 3 : add GaiaOAuthClient tests for changed/added methods #

Patch Set 4 : Extend device_oauth2_token_service_unittest.cc to cover refresh token validation cases. #

Total comments: 22

Patch Set 5 : Moved validation logic out of OAuthTokenService base class. #

Total comments: 7

Patch Set 6 : addressed minor review comments #

Patch Set 7 : addressed atwilson's review comments #

Total comments: 7

Patch Set 8 : addressed bauerb's review comments #

Patch Set 9 : address last review comments #

Patch Set 10 : verify token owner via per-device service acct's email, not the issued_to client id #

Patch Set 11 : rebase #

Total comments: 12

Patch Set 12 : addressed rogerta's review comments #

Patch Set 13 : update test for change in Patch Set 10 #

Patch Set 14 : fix compile issue with remoting #

Patch Set 15 : fix android compile error #

Patch Set 16 : fix clank error #

Patch Set 17 : fix remoting compile error on windows #

Unified diffs Side-by-side diffs Delta from patch set Stats (+860 lines, -170 lines) Patch
M chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos_unittest.cc View 1 2 3 4 5 6 7 8 9 10 4 chunks +7 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/policy/enrollment_handler_chromeos.cc View 1 1 chunk +0 lines, -1 line 0 comments Download
M chrome/browser/chromeos/settings/device_oauth2_token_service.h View 1 2 3 4 5 3 chunks +24 lines, -1 line 0 comments Download
M chrome/browser/chromeos/settings/device_oauth2_token_service.cc View 1 2 3 4 5 6 7 8 9 2 chunks +228 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/settings/device_oauth2_token_service_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +303 lines, -10 lines 0 comments Download
M chrome/browser/managed_mode/managed_user_refresh_token_fetcher.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -3 lines 0 comments Download
M chrome/browser/managed_mode/managed_user_refresh_token_fetcher_unittest.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +3 lines, -1 line 0 comments Download
M chrome/browser/policy/cloud/policy_builder.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/policy/cloud/policy_builder.cc View 1 2 3 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/policy/proto/cloud/device_management_backend.proto View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/signin/oauth2_token_service.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +24 lines, -20 lines 0 comments Download
M chrome/browser/signin/oauth2_token_service.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 8 chunks +33 lines, -30 lines 0 comments Download
M chrome/browser/signin/ubertoken_fetcher.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +8 lines, -3 lines 0 comments Download
M chrome/service/cloud_print/cloud_print_auth.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +2 lines, -3 lines 0 comments Download
M google_apis/gaia/gaia_oauth_client.h View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +20 lines, -5 lines 0 comments Download
M google_apis/gaia/gaia_oauth_client.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 14 chunks +68 lines, -21 lines 0 comments Download
M google_apis/gaia/gaia_oauth_client_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 14 chunks +109 lines, -59 lines 0 comments Download
M google_apis/gaia/gaia_urls.h View 2 chunks +2 lines, -0 lines 0 comments Download
M google_apis/gaia/gaia_urls.cc View 3 chunks +6 lines, -0 lines 0 comments Download
M remoting/host/setup/host_starter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -1 line 0 comments Download
M remoting/host/setup/host_starter.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -3 lines 0 comments Download
M remoting/host/setup/start_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +0 lines, -2 lines 0 comments Download
M remoting/host/setup/win/start_host_window.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +0 lines, -1 line 0 comments Download
M remoting/host/signaling_connector.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +4 lines, -4 lines 0 comments Download

Messages

Total messages: 40 (0 generated)
David Roche
7 years, 6 months ago (2013-06-15 00:44:17 UTC) #1
Mattias Nissler (ping if slow)
https://codereview.chromium.org/17109006/diff/1/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc File chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc (right): https://codereview.chromium.org/17109006/diff/1/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc#newcode162 chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc:162: if (policy) { nit: no need for curlies, I ...
7 years, 6 months ago (2013-06-17 05:34:17 UTC) #2
David Roche
https://codereview.chromium.org/17109006/diff/1/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc File chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc (right): https://codereview.chromium.org/17109006/diff/1/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc#newcode162 chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc:162: if (policy) { On 2013/06/17 05:34:17, Mattias Nissler wrote: ...
7 years, 6 months ago (2013-06-18 04:12:08 UTC) #3
David Roche
Mattias, I've added unit tests for everything I can think of. PTAL.
7 years, 6 months ago (2013-06-19 03:35:57 UTC) #4
Mattias Nissler (ping if slow)
Couple more comments, the policy stuff LGTM at this point. I'm still a bit uncomfortable ...
7 years, 6 months ago (2013-06-19 17:53:17 UTC) #5
David Roche
Mattias, I moved the validation logic out of the OAuth2TokenService API, as discussed. I think ...
7 years, 6 months ago (2013-06-20 02:07:25 UTC) #6
Andrew T Wilson (Slow)
signin/* lgtm with a few suggestions https://codereview.chromium.org/17109006/diff/25001/chrome/browser/signin/oauth2_token_service.cc File chrome/browser/signin/oauth2_token_service.cc (right): https://codereview.chromium.org/17109006/diff/25001/chrome/browser/signin/oauth2_token_service.cc#newcode200 chrome/browser/signin/oauth2_token_service.cc:200: InformWaitingRequestsAndQuit(); "AndQuit" -> ...
7 years, 6 months ago (2013-06-20 17:47:27 UTC) #7
David Roche
https://codereview.chromium.org/17109006/diff/14001/chrome/browser/chromeos/settings/device_oauth2_token_service.cc File chrome/browser/chromeos/settings/device_oauth2_token_service.cc (right): https://codereview.chromium.org/17109006/diff/14001/chrome/browser/chromeos/settings/device_oauth2_token_service.cc#newcode109 chrome/browser/chromeos/settings/device_oauth2_token_service.cc:109: if (connector) { On 2013/06/19 17:53:17, Mattias Nissler wrote: ...
7 years, 6 months ago (2013-06-20 17:49:29 UTC) #8
David Roche
https://codereview.chromium.org/17109006/diff/25001/chrome/browser/signin/oauth2_token_service.cc File chrome/browser/signin/oauth2_token_service.cc (right): https://codereview.chromium.org/17109006/diff/25001/chrome/browser/signin/oauth2_token_service.cc#newcode200 chrome/browser/signin/oauth2_token_service.cc:200: InformWaitingRequestsAndQuit(); On 2013/06/20 17:47:28, Andrew T Wilson wrote: > ...
7 years, 6 months ago (2013-06-20 18:17:17 UTC) #9
Andrew T Wilson (Slow)
On 2013/06/20 18:17:17, David Roche wrote: > https://codereview.chromium.org/17109006/diff/25001/chrome/browser/signin/oauth2_token_service.cc > File chrome/browser/signin/oauth2_token_service.cc (right): > > https://codereview.chromium.org/17109006/diff/25001/chrome/browser/signin/oauth2_token_service.cc#newcode200 ...
7 years, 6 months ago (2013-06-20 18:36:57 UTC) #10
David Roche
pam@: can you review the small tweaks to chrome/browser/managed_mode/ due to GaiaOAuthClient API changes? vitalybuka@: ...
7 years, 6 months ago (2013-06-20 18:47:35 UTC) #11
Mattias Nissler (ping if slow)
https://chromiumcodereview.appspot.com/17109006/diff/29002/chrome/browser/chromeos/settings/device_oauth2_token_service.cc File chrome/browser/chromeos/settings/device_oauth2_token_service.cc (right): https://chromiumcodereview.appspot.com/17109006/diff/29002/chrome/browser/chromeos/settings/device_oauth2_token_service.cc#newcode209 chrome/browser/chromeos/settings/device_oauth2_token_service.cc:209: // object owns. The other problem now is that ...
7 years, 6 months ago (2013-06-20 18:58:29 UTC) #12
David Roche
https://chromiumcodereview.appspot.com/17109006/diff/29002/chrome/browser/chromeos/settings/device_oauth2_token_service.cc File chrome/browser/chromeos/settings/device_oauth2_token_service.cc (right): https://chromiumcodereview.appspot.com/17109006/diff/29002/chrome/browser/chromeos/settings/device_oauth2_token_service.cc#newcode209 chrome/browser/chromeos/settings/device_oauth2_token_service.cc:209: // object owns. On 2013/06/20 18:58:30, Mattias Nissler wrote: ...
7 years, 6 months ago (2013-06-20 20:13:59 UTC) #13
Pam (message me for reviews)
Bernhard is the right person to review these managed_mode/ changes.
7 years, 6 months ago (2013-06-20 20:38:32 UTC) #14
Vitaly Buka (NO REVIEWS)
chrome/service/cloud_print/cloud_print_auth.cc LGTM
7 years, 6 months ago (2013-06-20 20:46:45 UTC) #15
Bernhard Bauer
https://codereview.chromium.org/17109006/diff/29002/google_apis/gaia/gaia_oauth_client.cc File google_apis/gaia/gaia_oauth_client.cc (right): https://codereview.chromium.org/17109006/diff/29002/google_apis/gaia/gaia_oauth_client.cc#newcode10 google_apis/gaia/gaia_oauth_client.cc:10: #include "base/string_util.cc" Wut? https://codereview.chromium.org/17109006/diff/29002/google_apis/gaia/gaia_oauth_client.cc#newcode30 google_apis/gaia/gaia_oauth_client.cc:30: const int GaiaOAuthClient::kUrlFetcherId = ...
7 years, 6 months ago (2013-06-20 20:47:06 UTC) #16
David Roche
https://codereview.chromium.org/17109006/diff/29002/google_apis/gaia/gaia_oauth_client.cc File google_apis/gaia/gaia_oauth_client.cc (right): https://codereview.chromium.org/17109006/diff/29002/google_apis/gaia/gaia_oauth_client.cc#newcode10 google_apis/gaia/gaia_oauth_client.cc:10: #include "base/string_util.cc" On 2013/06/20 20:47:06, Bernhard Bauer wrote: > ...
7 years, 6 months ago (2013-06-20 20:57:32 UTC) #17
Bernhard Bauer
https://codereview.chromium.org/17109006/diff/29002/google_apis/gaia/gaia_oauth_client.cc File google_apis/gaia/gaia_oauth_client.cc (right): https://codereview.chromium.org/17109006/diff/29002/google_apis/gaia/gaia_oauth_client.cc#newcode10 google_apis/gaia/gaia_oauth_client.cc:10: #include "base/string_util.cc" On 2013/06/20 20:57:32, David Roche wrote: > ...
7 years, 6 months ago (2013-06-20 21:22:17 UTC) #18
Bernhard Bauer
LGTM once you've included the .h file instead.
7 years, 6 months ago (2013-06-20 21:22:45 UTC) #19
David Roche
rogerta@: can you review the google_apis/gaia changes to GaiaOAuthClient?
7 years, 6 months ago (2013-06-21 02:19:12 UTC) #20
Roger Tawa OOO till Jul 10th
https://codereview.chromium.org/17109006/diff/59001/google_apis/gaia/gaia_oauth_client.cc File google_apis/gaia/gaia_oauth_client.cc (right): https://codereview.chromium.org/17109006/diff/59001/google_apis/gaia/gaia_oauth_client.cc#newcode30 google_apis/gaia/gaia_oauth_client.cc:30: const int GaiaOAuthClient::kUrlFetcherId = 17109006; For my own info, ...
7 years, 6 months ago (2013-06-21 18:22:41 UTC) #21
David Roche
https://codereview.chromium.org/17109006/diff/59001/google_apis/gaia/gaia_oauth_client.cc File google_apis/gaia/gaia_oauth_client.cc (right): https://codereview.chromium.org/17109006/diff/59001/google_apis/gaia/gaia_oauth_client.cc#newcode30 google_apis/gaia/gaia_oauth_client.cc:30: const int GaiaOAuthClient::kUrlFetcherId = 17109006; On 2013/06/21 18:22:41, Roger ...
7 years, 6 months ago (2013-06-21 18:40:45 UTC) #22
zel
lgtm
7 years, 6 months ago (2013-06-21 18:51:06 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/78001
7 years, 6 months ago (2013-06-21 19:51:49 UTC) #24
Roger Tawa OOO till Jul 10th
np David, so can send me a follow up CL on monday. Thanks!
7 years, 6 months ago (2013-06-21 20:00:42 UTC) #25
commit-bot: I haz the power
Sorry for I got bad news for ya. Compile failed with a clobber build on ...
7 years, 6 months ago (2013-06-21 20:16:34 UTC) #26
David Roche
wez@: can you review the remoting change?
7 years, 6 months ago (2013-06-21 22:34:10 UTC) #27
Wez
lgtm
7 years, 6 months ago (2013-06-21 22:34:17 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/68004
7 years, 6 months ago (2013-06-21 22:35:31 UTC) #29
commit-bot: I haz the power
Sorry for I got bad news for ya. Compile failed with a clobber build on ...
7 years, 6 months ago (2013-06-21 23:13:09 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/70003
7 years, 6 months ago (2013-06-22 01:17:29 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/70003
7 years, 6 months ago (2013-06-22 01:18:57 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/70003
7 years, 6 months ago (2013-06-22 01:20:56 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/70003
7 years, 6 months ago (2013-06-22 01:27:02 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/70003
7 years, 6 months ago (2013-06-22 02:35:14 UTC) #35
commit-bot: I haz the power
Sorry for I got bad news for ya. Compile failed with a clobber build on ...
7 years, 6 months ago (2013-06-22 02:52:14 UTC) #36
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/108003
7 years, 6 months ago (2013-06-22 05:10:16 UTC) #37
commit-bot: I haz the power
Sorry for I got bad news for ya. Compile failed with a clobber build on ...
7 years, 6 months ago (2013-06-22 06:36:04 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidroche@chromium.org/17109006/114001
7 years, 6 months ago (2013-06-22 06:46:55 UTC) #39
commit-bot: I haz the power
7 years, 6 months ago (2013-06-22 13:38:24 UTC) #40
Message was sent while issue was closed.
Change committed as 208019

Powered by Google App Engine
This is Rietveld 408576698