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

Side by Side Diff: google_apis/gaia/gaia_auth_fetcher.cc

Issue 2872253002: Network traffic annotation added to gaia_auth_fetcher. (Closed)
Patch Set: iOS files added. Created 3 years, 7 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 unified diff | Download patch
« no previous file with comments | « google_apis/gaia/gaia_auth_fetcher.h ('k') | ios/chrome/browser/signin/gaia_auth_fetcher_ios.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "google_apis/gaia/gaia_auth_fetcher.h" 5 #include "google_apis/gaia/gaia_auth_fetcher.h"
6 6
7 #include <string> 7 #include <string>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 212
213 void GaiaAuthFetcher::SetLogoutHeaders(const std::string& headers) { 213 void GaiaAuthFetcher::SetLogoutHeaders(const std::string& headers) {
214 logout_headers_ = headers; 214 logout_headers_ = headers;
215 } 215 }
216 216
217 void GaiaAuthFetcher::CancelRequest() { 217 void GaiaAuthFetcher::CancelRequest() {
218 fetcher_.reset(); 218 fetcher_.reset();
219 fetch_pending_ = false; 219 fetch_pending_ = false;
220 } 220 }
221 221
222 void GaiaAuthFetcher::CreateAndStartGaiaFetcher(const std::string& body, 222 void GaiaAuthFetcher::CreateAndStartGaiaFetcher(
223 const std::string& headers, 223 const std::string& body,
224 const GURL& gaia_gurl, 224 const std::string& headers,
225 int load_flags) { 225 const GURL& gaia_gurl,
226 int load_flags,
227 const net::NetworkTrafficAnnotationTag& traffic_annotation) {
226 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 228 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
227 fetcher_ = net::URLFetcher::Create( 229 fetcher_ = net::URLFetcher::Create(
228 0, gaia_gurl, body.empty() ? net::URLFetcher::GET : net::URLFetcher::POST, 230 0, gaia_gurl, body.empty() ? net::URLFetcher::GET : net::URLFetcher::POST,
229 this); 231 this, traffic_annotation);
230 fetcher_->SetRequestContext(getter_); 232 fetcher_->SetRequestContext(getter_);
231 fetcher_->SetUploadData("application/x-www-form-urlencoded", body); 233 fetcher_->SetUploadData("application/x-www-form-urlencoded", body);
232 gaia::MarkURLFetcherAsGaia(fetcher_.get()); 234 gaia::MarkURLFetcherAsGaia(fetcher_.get());
233 235
234 VLOG(2) << "Gaia fetcher URL: " << gaia_gurl.spec(); 236 VLOG(2) << "Gaia fetcher URL: " << gaia_gurl.spec();
235 VLOG(2) << "Gaia fetcher headers: " << headers; 237 VLOG(2) << "Gaia fetcher headers: " << headers;
236 VLOG(2) << "Gaia fetcher body: " << body; 238 VLOG(2) << "Gaia fetcher body: " << body;
237 239
238 // The Gaia token exchange requests do not require any cookie-based 240 // The Gaia token exchange requests do not require any cookie-based
239 // identification as part of requests. We suppress sending any cookies to 241 // identification as part of requests. We suppress sending any cookies to
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
504 506
505 if (sessionDictionary->GetString("login_hint", login_hint)) 507 if (sessionDictionary->GetString("login_hint", login_hint))
506 break; 508 break;
507 } 509 }
508 510
509 if (login_hint->empty()) 511 if (login_hint->empty())
510 return false; 512 return false;
511 return true; 513 return true;
512 } 514 }
513 515
514 void GaiaAuthFetcher::StartIssueAuthToken(const std::string& sid, 516 void GaiaAuthFetcher::StartIssueAuthToken(const std::string& sid,
msarda 2017/05/15 12:23:49 I think this method is no longer used. I think it
Ramin Halavati 2017/05/15 13:27:50 Done.
515 const std::string& lsid, 517 const std::string& lsid,
516 const char* const service) { 518 const char* const service) {
517 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 519 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
518 520
519 VLOG(1) << "Starting IssueAuthToken for: " << service; 521 VLOG(1) << "Starting IssueAuthToken for: " << service;
520 requested_service_ = service; 522 requested_service_ = service;
521 request_body_ = MakeIssueAuthTokenBody(sid, lsid, service); 523 request_body_ = MakeIssueAuthTokenBody(sid, lsid, service);
524 net::NetworkTrafficAnnotationTag traffic_annotation =
525 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
526 semantics {
527 sender: "Gaia Auth API"
msarda 2017/05/15 12:23:49 Here and everywhere else: Chrome - Google authenti
Ramin Halavati 2017/05/15 13:27:49 Done.
528 description: "..."
529 trigger: "..."
530 data: "..."
531 destination: GOOGLE_OWNED_SERVICE
532 }
533 policy {
534 cookies_allowed: false/true
535 cookies_store: "..."
536 setting:
537 "This feature cannot be disabled in settings, but if user signs "
538 "out of Chrome, this request would not be made."
539 chrome_policy {
540 SigninAllowed {
541 policy_options {mode: MANDATORY}
542 SigninAllowed: false
543 }
544 }
545 })");
522 CreateAndStartGaiaFetcher(request_body_, std::string(), 546 CreateAndStartGaiaFetcher(request_body_, std::string(),
523 issue_auth_token_gurl_, kLoadFlagsIgnoreCookies); 547 issue_auth_token_gurl_, kLoadFlagsIgnoreCookies,
548 traffic_annotation);
524 } 549 }
525 550
526 void GaiaAuthFetcher::StartRevokeOAuth2Token(const std::string& auth_token) { 551 void GaiaAuthFetcher::StartRevokeOAuth2Token(const std::string& auth_token) {
527 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 552 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
528 553
529 VLOG(1) << "Starting OAuth2 token revocation"; 554 VLOG(1) << "Starting OAuth2 token revocation";
530 request_body_ = MakeRevokeTokenBody(auth_token); 555 request_body_ = MakeRevokeTokenBody(auth_token);
556 net::NetworkTrafficAnnotationTag traffic_annotation =
557 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
558 semantics {
559 sender: "Gaia Auth API"
560 description: "..."
msarda 2017/05/15 12:23:50 This request revokes an OAuth2 refresh token.
Ramin Halavati 2017/05/15 13:27:48 Done.
561 trigger: "..."
msarda 2017/05/15 12:23:48 Here and everywhere else: Same as the comment belo
Ramin Halavati 2017/05/15 13:27:48 Done.
562 data: "..."
msarda 2017/05/15 12:23:48 The OAuth2 refresh token that should be revoked.
Ramin Halavati 2017/05/15 13:27:49 Done.
563 destination: GOOGLE_OWNED_SERVICE
564 }
565 policy {
566 cookies_allowed: false/true
msarda 2017/05/15 12:23:50 false
Ramin Halavati 2017/05/15 13:27:49 Done.
567 cookies_store: "..."
msarda 2017/05/15 12:23:48 Remove.
Ramin Halavati 2017/05/15 13:27:48 Done.
568 setting:
569 "This feature cannot be disabled in settings, but if user signs "
570 "out of Chrome, this request would not be made."
571 chrome_policy {
572 SigninAllowed {
573 policy_options {mode: MANDATORY}
574 SigninAllowed: false
575 }
576 }
577 })");
531 CreateAndStartGaiaFetcher(request_body_, std::string(), oauth2_revoke_gurl_, 578 CreateAndStartGaiaFetcher(request_body_, std::string(), oauth2_revoke_gurl_,
532 kLoadFlagsIgnoreCookies); 579 kLoadFlagsIgnoreCookies, traffic_annotation);
533 } 580 }
534 581
535 void GaiaAuthFetcher::StartCookieForOAuthLoginTokenExchange( 582 void GaiaAuthFetcher::StartCookieForOAuthLoginTokenExchange(
536 const std::string& session_index) { 583 const std::string& session_index) {
537 StartCookieForOAuthLoginTokenExchangeWithDeviceId(session_index, 584 StartCookieForOAuthLoginTokenExchangeWithDeviceId(session_index,
538 std::string()); 585 std::string());
539 } 586 }
540 587
541 void GaiaAuthFetcher::StartCookieForOAuthLoginTokenExchangeWithDeviceId( 588 void GaiaAuthFetcher::StartCookieForOAuthLoginTokenExchangeWithDeviceId(
542 const std::string& session_index, 589 const std::string& session_index,
(...skipping 25 matching lines...) Expand all
568 if (!session_index.empty()) 615 if (!session_index.empty())
569 query_string += "&authuser=" + session_index; 616 query_string += "&authuser=" + session_index;
570 617
571 std::string device_id_header; 618 std::string device_id_header;
572 if (!device_id.empty()) { 619 if (!device_id.empty()) {
573 device_id_header = 620 device_id_header =
574 base::StringPrintf(kDeviceIdHeaderFormat, device_id.c_str()); 621 base::StringPrintf(kDeviceIdHeaderFormat, device_id.c_str());
575 } 622 }
576 623
577 fetch_token_from_auth_code_ = fetch_token_from_auth_code; 624 fetch_token_from_auth_code_ = fetch_token_from_auth_code;
625 net::NetworkTrafficAnnotationTag traffic_annotation =
626 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
msarda 2017/05/15 12:23:49 What is "gaia_auth_" used for?
Ramin Halavati 2017/05/15 13:27:48 It's the unique_id of this request, it can be used
627 semantics {
628 sender: "Gaia Auth API"
629 description: "..."
msarda 2017/05/15 12:23:50 This request exchanges exchange the cookies of a G
Ramin Halavati 2017/05/15 13:27:49 Done.
630 trigger: "..."
631 data: "..."
msarda 2017/05/15 12:23:50 This request includes the following data: the Goog
Ramin Halavati 2017/05/15 13:27:50 Done.
632 destination: GOOGLE_OWNED_SERVICE
633 }
634 policy {
635 cookies_allowed: false/true
msarda 2017/05/15 12:23:49 true
Ramin Halavati 2017/05/15 13:27:49 Done.
636 cookies_store: "..."
637 setting:
638 "This feature cannot be disabled in settings, but if user signs "
639 "out of Chrome, this request would not be made."
640 chrome_policy {
641 SigninAllowed {
642 policy_options {mode: MANDATORY}
643 SigninAllowed: false
644 }
645 }
646 })");
578 CreateAndStartGaiaFetcher(std::string(), device_id_header, 647 CreateAndStartGaiaFetcher(std::string(), device_id_header,
579 client_login_to_oauth2_gurl_.Resolve(query_string), 648 client_login_to_oauth2_gurl_.Resolve(query_string),
580 net::LOAD_NORMAL); 649 net::LOAD_NORMAL, traffic_annotation);
581 } 650 }
582 651
583 void GaiaAuthFetcher::StartAuthCodeForOAuth2TokenExchange( 652 void GaiaAuthFetcher::StartAuthCodeForOAuth2TokenExchange(
584 const std::string& auth_code) { 653 const std::string& auth_code) {
585 StartAuthCodeForOAuth2TokenExchangeWithDeviceId(auth_code, std::string()); 654 StartAuthCodeForOAuth2TokenExchangeWithDeviceId(auth_code, std::string());
586 } 655 }
587 656
588 void GaiaAuthFetcher::StartAuthCodeForOAuth2TokenExchangeWithDeviceId( 657 void GaiaAuthFetcher::StartAuthCodeForOAuth2TokenExchangeWithDeviceId(
589 const std::string& auth_code, 658 const std::string& auth_code,
590 const std::string& device_id) { 659 const std::string& device_id) {
591 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 660 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
592 661
593 VLOG(1) << "Starting OAuth token pair fetch"; 662 VLOG(1) << "Starting OAuth token pair fetch";
594 request_body_ = MakeGetTokenPairBody(auth_code, device_id); 663 request_body_ = MakeGetTokenPairBody(auth_code, device_id);
664 net::NetworkTrafficAnnotationTag traffic_annotation =
665 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
666 semantics {
667 sender: "Gaia Auth API"
668 description: "..."
msarda 2017/05/15 12:23:49 This request exchanges an authorization code for a
Ramin Halavati 2017/05/15 13:27:49 Done.
669 trigger: "..."
670 data: "..."
msarda 2017/05/15 12:23:50 This request includes the following data: * the Go
Ramin Halavati 2017/05/15 13:27:49 Done.
671 destination: GOOGLE_OWNED_SERVICE
672 }
673 policy {
674 cookies_allowed: false/true
msarda 2017/05/15 12:23:49 false
Ramin Halavati 2017/05/15 13:27:49 Done.
675 cookies_store: "..."
676 setting:
677 "This feature cannot be disabled in settings, but if user signs "
678 "out of Chrome, this request would not be made."
679 chrome_policy {
680 SigninAllowed {
681 policy_options {mode: MANDATORY}
682 SigninAllowed: false
683 }
684 }
685 })");
595 CreateAndStartGaiaFetcher(request_body_, std::string(), oauth2_token_gurl_, 686 CreateAndStartGaiaFetcher(request_body_, std::string(), oauth2_token_gurl_,
596 kLoadFlagsIgnoreCookies); 687 kLoadFlagsIgnoreCookies, traffic_annotation);
597 } 688 }
598 689
599 void GaiaAuthFetcher::StartGetUserInfo(const std::string& lsid) { 690 void GaiaAuthFetcher::StartGetUserInfo(const std::string& lsid) {
600 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 691 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
601 692
602 VLOG(1) << "Starting GetUserInfo for lsid=" << lsid; 693 VLOG(1) << "Starting GetUserInfo for lsid=" << lsid;
603 request_body_ = MakeGetUserInfoBody(lsid); 694 request_body_ = MakeGetUserInfoBody(lsid);
695 net::NetworkTrafficAnnotationTag traffic_annotation =
696 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
697 semantics {
698 sender: "Gaia Auth API"
699 description: "..."
msarda 2017/05/15 12:23:50 This request fetches user information of a Google
Ramin Halavati 2017/05/15 13:27:48 Done.
700 trigger: "..."
msarda 2017/05/15 12:23:50 This fetcher is only used after signing in with a
Ramin Halavati 2017/05/15 13:27:48 Done.
701 data: "..."
msarda 2017/05/15 12:23:48 The value of the Google authentication LSID cookie
Ramin Halavati 2017/05/15 13:27:50 Done.
702 destination: GOOGLE_OWNED_SERVICE
703 }
704 policy {
705 cookies_allowed: false/true
msarda 2017/05/15 12:23:49 false
Ramin Halavati 2017/05/15 13:27:50 Done.
706 cookies_store: "..."
msarda 2017/05/15 12:23:50 ?
Ramin Halavati 2017/05/15 13:27:50 Done.
707 setting:
708 "This feature cannot be disabled in settings, but if user signs "
709 "out of Chrome, this request would not be made."
710 chrome_policy {
711 SigninAllowed {
712 policy_options {mode: MANDATORY}
713 SigninAllowed: false
714 }
715 }
716 })");
604 CreateAndStartGaiaFetcher(request_body_, std::string(), get_user_info_gurl_, 717 CreateAndStartGaiaFetcher(request_body_, std::string(), get_user_info_gurl_,
605 kLoadFlagsIgnoreCookies); 718 kLoadFlagsIgnoreCookies, traffic_annotation);
606 } 719 }
607 720
608 void GaiaAuthFetcher::StartMergeSession(const std::string& uber_token, 721 void GaiaAuthFetcher::StartMergeSession(const std::string& uber_token,
609 const std::string& external_cc_result) { 722 const std::string& external_cc_result) {
610 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 723 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
611 724
612 VLOG(1) << "Starting MergeSession with uber_token=" << uber_token; 725 VLOG(1) << "Starting MergeSession with uber_token=" << uber_token;
613 726
614 // The continue URL is a required parameter of the MergeSession API, but in 727 // The continue URL is a required parameter of the MergeSession API, but in
615 // this case we don't actually need or want to navigate to it. Setting it to 728 // this case we don't actually need or want to navigate to it. Setting it to
616 // an arbitrary Google URL. 729 // an arbitrary Google URL.
617 // 730 //
618 // In order for the new session to be merged correctly, the server needs to 731 // In order for the new session to be merged correctly, the server needs to
619 // know what sessions already exist in the browser. The fetcher needs to be 732 // know what sessions already exist in the browser. The fetcher needs to be
620 // created such that it sends the cookies with the request, which is 733 // created such that it sends the cookies with the request, which is
621 // different from all other requests the fetcher can make. 734 // different from all other requests the fetcher can make.
622 std::string continue_url("http://www.google.com"); 735 std::string continue_url("http://www.google.com");
623 std::string query = MakeMergeSessionQuery(uber_token, external_cc_result, 736 std::string query = MakeMergeSessionQuery(uber_token, external_cc_result,
624 continue_url, source_); 737 continue_url, source_);
738 net::NetworkTrafficAnnotationTag traffic_annotation =
739 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
740 semantics {
741 sender: "Gaia Auth API"
742 description: "..."
msarda 2017/05/15 12:23:49 This request adds an account to the Google authent
Ramin Halavati 2017/05/15 13:27:50 Done.
743 trigger: "..."
744 data: "..."
msarda 2017/05/15 12:23:50 This request includes the following data: * the us
Ramin Halavati 2017/05/15 13:27:49 Done.
745 destination: GOOGLE_OWNED_SERVICE
746 }
747 policy {
748 cookies_allowed: false/true
msarda 2017/05/15 12:23:48 true
Ramin Halavati 2017/05/15 13:27:50 Done.
749 cookies_store: "..."
msarda 2017/05/15 12:23:48 ?
Ramin Halavati 2017/05/15 13:27:50 Done.
750 setting:
751 "This feature cannot be disabled in settings, but if user signs "
752 "out of Chrome, this request would not be made."
753 chrome_policy {
754 SigninAllowed {
755 policy_options {mode: MANDATORY}
756 SigninAllowed: false
757 }
758 }
759 })");
625 CreateAndStartGaiaFetcher(std::string(), std::string(), 760 CreateAndStartGaiaFetcher(std::string(), std::string(),
626 merge_session_gurl_.Resolve(query), 761 merge_session_gurl_.Resolve(query),
627 net::LOAD_NORMAL); 762 net::LOAD_NORMAL, traffic_annotation);
628 } 763 }
629 764
630 void GaiaAuthFetcher::StartTokenFetchForUberAuthExchange( 765 void GaiaAuthFetcher::StartTokenFetchForUberAuthExchange(
631 const std::string& access_token, 766 const std::string& access_token,
632 bool is_bound_to_channel_id) { 767 bool is_bound_to_channel_id) {
633 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 768 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
634 769
635 VLOG(1) << "Starting StartTokenFetchForUberAuthExchange with access_token=" 770 VLOG(1) << "Starting StartTokenFetchForUberAuthExchange with access_token="
636 << access_token; 771 << access_token;
637 std::string authentication_header = 772 std::string authentication_header =
638 base::StringPrintf(kOAuthHeaderFormat, access_token.c_str()); 773 base::StringPrintf(kOAuthHeaderFormat, access_token.c_str());
639 int load_flags = 774 int load_flags =
640 is_bound_to_channel_id ? net::LOAD_NORMAL : kLoadFlagsIgnoreCookies; 775 is_bound_to_channel_id ? net::LOAD_NORMAL : kLoadFlagsIgnoreCookies;
776 net::NetworkTrafficAnnotationTag traffic_annotation =
777 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
778 semantics {
779 sender: "Gaia Auth API"
msarda 2017/05/15 12:23:48 Here and everywhere else: Chrome - Google authenti
Ramin Halavati 2017/05/15 13:27:50 Done.
780 description: "..."
msarda 2017/05/15 12:23:49 This request exchanges an Oauth2 access token for
Ramin Halavati 2017/05/15 13:27:48 Please elaborate more for a non-technical reader.
781 trigger: "..."
msarda 2017/05/15 12:23:49 Same as the comment below at StartGetCheckConnecti
Ramin Halavati 2017/05/15 13:27:49 Done.
782 data: "..."
msarda 2017/05/15 12:23:49 This request contains an OAuth2 access token.
Ramin Halavati 2017/05/15 13:27:48 Done.
783 destination: GOOGLE_OWNED_SERVICE
784 }
785 policy {
786 cookies_allowed: false/true
msarda 2017/05/15 12:23:49 true or false
Ramin Halavati 2017/05/15 13:27:49 Done, let's write 'True' is it's the privacy conce
787 cookies_store: "..."
msarda 2017/05/15 12:23:49 What should this be?
Ramin Halavati 2017/05/15 13:27:50 Done.
788 setting:
789 "This feature cannot be disabled in settings, but if user signs "
790 "out of Chrome, this request would not be made."
791 chrome_policy {
792 SigninAllowed {
793 policy_options {mode: MANDATORY}
794 SigninAllowed: false
795 }
796 }
797 })");
641 CreateAndStartGaiaFetcher(std::string(), authentication_header, 798 CreateAndStartGaiaFetcher(std::string(), authentication_header,
642 uberauth_token_gurl_, load_flags); 799 uberauth_token_gurl_, load_flags,
800 traffic_annotation);
643 } 801 }
644 802
645 void GaiaAuthFetcher::StartOAuthLogin(const std::string& access_token, 803 void GaiaAuthFetcher::StartOAuthLogin(const std::string& access_token,
646 const std::string& service) { 804 const std::string& service) {
647 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 805 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
648 806
649 request_body_ = MakeOAuthLoginBody(service, source_); 807 request_body_ = MakeOAuthLoginBody(service, source_);
650 std::string authentication_header = 808 std::string authentication_header =
651 base::StringPrintf(kOAuth2BearerHeaderFormat, access_token.c_str()); 809 base::StringPrintf(kOAuth2BearerHeaderFormat, access_token.c_str());
810 net::NetworkTrafficAnnotationTag traffic_annotation =
811 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
812 semantics {
813 sender: "Gaia Auth API"
msarda 2017/05/15 12:23:48 Chrome - Google authentication API.
Ramin Halavati 2017/05/15 13:27:49 Done.
814 description: "..."
msarda 2017/05/15 12:23:50 This request exchanges an OAuthLogin-scoped oauth2
Ramin Halavati 2017/05/15 13:27:50 Please elaborate for a less technical reader.
815 trigger: "..."
msarda 2017/05/15 12:23:50 Same as the comment below at StartGetCheckConnecti
Ramin Halavati 2017/05/15 13:27:48 Done.
816 data: "..."
msarda 2017/05/15 12:23:48 This request contains an OAuth2 access token and t
Ramin Halavati 2017/05/15 13:27:50 Done.
817 destination: GOOGLE_OWNED_SERVICE
818 }
819 policy {
820 cookies_allowed: false/true
821 cookies_store: "..."
msarda 2017/05/15 12:23:50 Here and everywhere else: What should this be?
Ramin Halavati 2017/05/15 13:27:48 Done.
822 setting:
823 "This feature cannot be disabled in settings, but if user signs "
824 "out of Chrome, this request would not be made."
825 chrome_policy {
826 SigninAllowed {
827 policy_options {mode: MANDATORY}
828 SigninAllowed: false
829 }
830 }
831 })");
652 CreateAndStartGaiaFetcher(request_body_, authentication_header, 832 CreateAndStartGaiaFetcher(request_body_, authentication_header,
653 oauth_login_gurl_, net::LOAD_NORMAL); 833 oauth_login_gurl_, net::LOAD_NORMAL,
834 traffic_annotation);
654 } 835 }
655 836
656 void GaiaAuthFetcher::StartListAccounts() { 837 void GaiaAuthFetcher::StartListAccounts() {
657 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 838 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
658 839
840 net::NetworkTrafficAnnotationTag traffic_annotation =
841 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
842 semantics {
843 sender: "Gaia Auth API"
msarda 2017/05/15 12:23:48 Chrome - Google authentication API.
Ramin Halavati 2017/05/15 13:27:48 Done.
844 description: "..."
msarda 2017/05/15 12:23:48 This request is used to list the accounts in the G
Ramin Halavati 2017/05/15 13:27:50 Done.
845 trigger: "..."
msarda 2017/05/15 12:23:49 Same as the comment below at StartGetCheckConnecti
Ramin Halavati 2017/05/15 13:27:49 Done.
846 data: "..."
msarda 2017/05/15 12:23:50 None.
Ramin Halavati 2017/05/15 13:27:49 Done.
847 destination: GOOGLE_OWNED_SERVICE
848 }
849 policy {
850 cookies_allowed: false/true
msarda 2017/05/15 12:23:49 true
Ramin Halavati 2017/05/15 13:27:49 Done.
851 cookies_store: "..."
msarda 2017/05/15 12:23:50 What should this be?
Ramin Halavati 2017/05/15 13:27:49 Done.
852 setting:
853 "This feature cannot be disabled in settings, but if user signs "
854 "out of Chrome, this request would not be made."
855 chrome_policy {
856 SigninAllowed {
857 policy_options {mode: MANDATORY}
858 SigninAllowed: false
859 }
860 }
861 })");
659 CreateAndStartGaiaFetcher(" ", // To force an HTTP POST. 862 CreateAndStartGaiaFetcher(" ", // To force an HTTP POST.
660 "Origin: https://www.google.com", 863 "Origin: https://www.google.com",
661 list_accounts_gurl_, net::LOAD_NORMAL); 864 list_accounts_gurl_, net::LOAD_NORMAL,
865 traffic_annotation);
662 } 866 }
663 867
664 void GaiaAuthFetcher::StartLogOut() { 868 void GaiaAuthFetcher::StartLogOut() {
665 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 869 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
666 870
871 net::NetworkTrafficAnnotationTag traffic_annotation =
872 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
873 semantics {
874 sender: "Gaia Auth API"
msarda 2017/05/15 12:23:50 Chrome - Google authentication API.
Ramin Halavati 2017/05/15 13:27:50 Done.
875 description: "..."
msarda 2017/05/15 12:23:49 This request is part of the Chrome - Google authen
Ramin Halavati 2017/05/15 13:27:50 Done.
876 trigger: "..."
msarda 2017/05/15 12:23:48 Same as the comment below at StartGetCheckConnecti
Ramin Halavati 2017/05/15 13:27:49 Done.
877 data: "..."
msarda 2017/05/15 12:23:50 None.
Ramin Halavati 2017/05/15 13:27:49 Done.
878 destination: GOOGLE_OWNED_SERVICE
879 }
880 policy {
881 cookies_allowed: false/true
msarda 2017/05/15 12:23:49 true
Ramin Halavati 2017/05/15 13:27:49 Done.
882 cookies_store: "..."
msarda 2017/05/15 12:23:50 What should this be?
Ramin Halavati 2017/05/15 13:27:50 If you don't modify it, the default is 'user'.
883 setting:
884 "This feature cannot be disabled in settings, but if user signs "
885 "out of Chrome, this request would not be made."
886 chrome_policy {
887 SigninAllowed {
888 policy_options {mode: MANDATORY}
889 SigninAllowed: false
890 }
891 }
892 })");
667 CreateAndStartGaiaFetcher(std::string(), logout_headers_, logout_gurl_, 893 CreateAndStartGaiaFetcher(std::string(), logout_headers_, logout_gurl_,
668 net::LOAD_NORMAL); 894 net::LOAD_NORMAL, traffic_annotation);
669 } 895 }
670 896
671 void GaiaAuthFetcher::StartGetCheckConnectionInfo() { 897 void GaiaAuthFetcher::StartGetCheckConnectionInfo() {
672 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 898 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
673 899
900 net::NetworkTrafficAnnotationTag traffic_annotation =
901 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
902 semantics {
903 sender: "Gaia Auth API"
msarda 2017/05/15 12:23:48 Chrome - Google authentication API.
Ramin Halavati 2017/05/15 13:27:49 Done.
904 description: "..."
msarda 2017/05/15 12:23:49 This request is used to fetch from the Google auth
Ramin Halavati 2017/05/15 13:27:49 Could you please elaborate on the description?
905 trigger: "..."
msarda 2017/05/15 12:23:48 It is not clear to me what to say here: 1. This is
Ramin Halavati 2017/05/15 13:27:48 I didn't get the description clearly, let's contin
906 data: "..."
msarda 2017/05/15 12:23:50 None
Ramin Halavati 2017/05/15 13:27:48 Done.
907 destination: GOOGLE_OWNED_SERVICE
908 }
909 policy {
910 cookies_allowed: false/true
msarda 2017/05/15 12:23:49 false
Ramin Halavati 2017/05/15 13:27:48 Done.
911 cookies_store: "..."
msarda 2017/05/15 12:23:50 Remove line
Ramin Halavati 2017/05/15 13:27:50 Done.
912 setting:
913 "This feature cannot be disabled in settings, but if user signs "
914 "out of Chrome, this request would not be made."
915 chrome_policy {
916 SigninAllowed {
917 policy_options {mode: MANDATORY}
918 SigninAllowed: false
919 }
920 }
921 })");
674 CreateAndStartGaiaFetcher(std::string(), std::string(), 922 CreateAndStartGaiaFetcher(std::string(), std::string(),
675 get_check_connection_info_url_, 923 get_check_connection_info_url_,
676 kLoadFlagsIgnoreCookies); 924 kLoadFlagsIgnoreCookies, traffic_annotation);
677 } 925 }
678 926
679 void GaiaAuthFetcher::StartListIDPSessions(const std::string& scopes, 927 void GaiaAuthFetcher::StartListIDPSessions(const std::string& scopes,
msarda 2017/05/15 12:23:49 It looks like this method is never used - I would
Ramin Halavati 2017/05/15 13:27:48 Done.
680 const std::string& domain) { 928 const std::string& domain) {
681 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 929 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
682 930
683 request_body_ = MakeListIDPSessionsBody(scopes, domain); 931 request_body_ = MakeListIDPSessionsBody(scopes, domain);
684 requested_service_ = kListIdpServiceRequested; 932 requested_service_ = kListIdpServiceRequested;
933 net::NetworkTrafficAnnotationTag traffic_annotation =
934 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
935 semantics {
936 sender: "Gaia Auth API"
937 description: "..."
938 trigger: "..."
939 data: "..."
940 destination: GOOGLE_OWNED_SERVICE
941 }
942 policy {
943 cookies_allowed: false/true
944 cookies_store: "..."
945 setting:
946 "This feature cannot be disabled in settings, but if user signs "
947 "out of Chrome, this request would not be made."
948 chrome_policy {
949 SigninAllowed {
950 policy_options {mode: MANDATORY}
951 SigninAllowed: false
952 }
953 }
954 })");
685 CreateAndStartGaiaFetcher(request_body_, std::string(), oauth2_iframe_url_, 955 CreateAndStartGaiaFetcher(request_body_, std::string(), oauth2_iframe_url_,
686 net::LOAD_NORMAL); 956 net::LOAD_NORMAL, traffic_annotation);
687 } 957 }
688 958
689 void GaiaAuthFetcher::StartGetTokenResponse(const std::string& scopes, 959 void GaiaAuthFetcher::StartGetTokenResponse(const std::string& scopes,
msarda 2017/05/15 12:23:50 It looks like this method is never used - I would
Ramin Halavati 2017/05/15 13:27:49 Done.
690 const std::string& domain, 960 const std::string& domain,
691 const std::string& login_hint) { 961 const std::string& login_hint) {
692 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!"; 962 DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
693 963
694 request_body_ = MakeGetTokenResponseBody(scopes, domain, login_hint); 964 request_body_ = MakeGetTokenResponseBody(scopes, domain, login_hint);
695 requested_service_ = kGetTokenResponseRequested; 965 requested_service_ = kGetTokenResponseRequested;
966 net::NetworkTrafficAnnotationTag traffic_annotation =
967 net::DefineNetworkTrafficAnnotation("gaia_auth_", R"(
968 semantics {
969 sender: "Gaia Auth API"
970 description: "..."
971 trigger: "..."
972 data: "..."
973 destination: GOOGLE_OWNED_SERVICE
974 }
975 policy {
976 cookies_allowed: false/true
977 cookies_store: "..."
978 setting:
979 "This feature cannot be disabled in settings, but if user signs "
980 "out of Chrome, this request would not be made."
981 chrome_policy {
982 SigninAllowed {
983 policy_options {mode: MANDATORY}
984 SigninAllowed: false
985 }
986 }
987 })");
696 CreateAndStartGaiaFetcher(request_body_, std::string(), oauth2_iframe_url_, 988 CreateAndStartGaiaFetcher(request_body_, std::string(), oauth2_iframe_url_,
697 net::LOAD_NORMAL); 989 net::LOAD_NORMAL, traffic_annotation);
698 } 990 }
699 991
700 // static 992 // static
701 GoogleServiceAuthError GaiaAuthFetcher::GenerateAuthError( 993 GoogleServiceAuthError GaiaAuthFetcher::GenerateAuthError(
702 const std::string& data, 994 const std::string& data,
703 const net::URLRequestStatus& status) { 995 const net::URLRequestStatus& status) {
704 if (!status.is_success()) { 996 if (!status.is_success()) {
705 if (status.status() == net::URLRequestStatus::CANCELED) { 997 if (status.status() == net::URLRequestStatus::CANCELED) {
706 return GoogleServiceAuthError(GoogleServiceAuthError::REQUEST_CANCELED); 998 return GoogleServiceAuthError(GoogleServiceAuthError::REQUEST_CANCELED);
707 } 999 }
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after
1018 return alleged_error.find(kSecondFactor) != 1310 return alleged_error.find(kSecondFactor) !=
1019 std::string::npos; 1311 std::string::npos;
1020 } 1312 }
1021 1313
1022 // static 1314 // static
1023 bool GaiaAuthFetcher::IsWebLoginRequiredSuccess( 1315 bool GaiaAuthFetcher::IsWebLoginRequiredSuccess(
1024 const std::string& alleged_error) { 1316 const std::string& alleged_error) {
1025 return alleged_error.find(kWebLoginRequired) != 1317 return alleged_error.find(kWebLoginRequired) !=
1026 std::string::npos; 1318 std::string::npos;
1027 } 1319 }
OLDNEW
« no previous file with comments | « google_apis/gaia/gaia_auth_fetcher.h ('k') | ios/chrome/browser/signin/gaia_auth_fetcher_ios.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698