New issue
Advanced search Search tips

Issue 653349 link

Starred by 0 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Feature



Sign in to add a comment

Support wildcard subdomains in trial tokens

Project Member Reported by cha...@chromium.org, Oct 6 2016

Issue description

As discussed here:
https://groups.google.com/a/chromium.org/forum/#!topic/experimentation-dev/44P11uy96YU

Summary:
- Instead of requiring a fully-specified origin, issue tokens with a leading "*" (e.g. *.example.com)
- When presented by an origin, a wildcard token will enable the corresponding feature as long as the end of the origin matches the token. This applies regardless of the number of parts in the origin (e.g. *.example.com matches "part1.example.com" and "part1.part2.part3.part4.example.com").
- A wildcard token represents one logical origin. The per-origin usage limit applies to all origins that present the token. Usage will be tracked and limited per token, not per unique subdomain.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Oct 13 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29

commit 4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29
Author: chasej <chasej@chromium.org>
Date: Thu Oct 13 21:32:33 2016

Support subdomain matching in trial tokens

This CL adds support for subdomain trial tokens, such that a properly
issued token will enable a trial for multiple subdomains, rather than a
single specified origin.

In  bug 653349 , it was proposed to use a leading "*" to indicate a
wildcard token (e.g. *.example.com). In this implementation, an explicit
flag was added to the token format. The explicit flag keeping the token
parsing simple, by keeping the url::Origin as the representation of the
origin, and avoiding custom string parsing.

BUG= 653349 

Review-Url: https://codereview.chromium.org/2411803002
Cr-Commit-Position: refs/heads/master@{#425168}

[modify] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/content/common/origin_trials/trial_token.cc
[modify] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/content/common/origin_trials/trial_token.h
[modify] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/content/common/origin_trials/trial_token_unittest.cc
[add] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/content/test/data/fuzzer_corpus/origin_trial_token_data/24
[add] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/content/test/data/fuzzer_corpus/origin_trial_token_data/25
[add] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/content/test/data/fuzzer_corpus/origin_trial_token_data/26
[add] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/content/test/data/fuzzer_corpus/origin_trial_token_data/27
[modify] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/content/test/data/fuzzer_dictionaries/origin_trial_token_fuzzer.dict
[modify] https://crrev.com/4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29/tools/origin_trials/generate_token.py

Comment 2 by cha...@chromium.org, Oct 18 2016

Status: Fixed (was: Assigned)

Comment 3 by cha...@chromium.org, Oct 18 2016

Labels: Merge-Request-55

Comment 4 by dimu@chromium.org, Oct 18 2016

Labels: -Merge-Request-55 Merge-Approved-55 Hotlist-Merge-Approved
Your change meets the bar and is auto-approved for M55 (branch: 2883)
Project Member

Comment 5 by bugdroid1@chromium.org, Oct 18 2016

Labels: -merge-approved-55 merge-merged-2883
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/874cc8d1db06b6b7b04db41084f28a23956dbaf7

commit 874cc8d1db06b6b7b04db41084f28a23956dbaf7
Author: Jason Chase <chasej@chromium.org>
Date: Tue Oct 18 21:46:44 2016

Support subdomain matching in trial tokens

This CL adds support for subdomain trial tokens, such that a properly
issued token will enable a trial for multiple subdomains, rather than a
single specified origin.

In  bug 653349 , it was proposed to use a leading "*" to indicate a
wildcard token (e.g. *.example.com). In this implementation, an explicit
flag was added to the token format. The explicit flag keeping the token
parsing simple, by keeping the url::Origin as the representation of the
origin, and avoiding custom string parsing.

BUG= 653349 

Review-Url: https://codereview.chromium.org/2411803002
Cr-Commit-Position: refs/heads/master@{#425168}
(cherry picked from commit 4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29)

Review URL: https://codereview.chromium.org/2427083002 .

Cr-Commit-Position: refs/branch-heads/2883@{#183}
Cr-Branched-From: 614d31daee2f61b0180df403a8ad43f20b9f6dd7-refs/heads/master@{#423768}

[modify] https://crrev.com/874cc8d1db06b6b7b04db41084f28a23956dbaf7/content/common/origin_trials/trial_token.cc
[modify] https://crrev.com/874cc8d1db06b6b7b04db41084f28a23956dbaf7/content/common/origin_trials/trial_token.h
[modify] https://crrev.com/874cc8d1db06b6b7b04db41084f28a23956dbaf7/content/common/origin_trials/trial_token_unittest.cc
[modify] https://crrev.com/874cc8d1db06b6b7b04db41084f28a23956dbaf7/tools/origin_trials/generate_token.py

Project Member

Comment 6 by bugdroid1@chromium.org, Oct 27 2016

Labels: merge-merged-2840
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/874cc8d1db06b6b7b04db41084f28a23956dbaf7

commit 874cc8d1db06b6b7b04db41084f28a23956dbaf7
Author: Jason Chase <chasej@chromium.org>
Date: Tue Oct 18 21:46:44 2016

Support subdomain matching in trial tokens

This CL adds support for subdomain trial tokens, such that a properly
issued token will enable a trial for multiple subdomains, rather than a
single specified origin.

In  bug 653349 , it was proposed to use a leading "*" to indicate a
wildcard token (e.g. *.example.com). In this implementation, an explicit
flag was added to the token format. The explicit flag keeping the token
parsing simple, by keeping the url::Origin as the representation of the
origin, and avoiding custom string parsing.

BUG= 653349 

Review-Url: https://codereview.chromium.org/2411803002
Cr-Commit-Position: refs/heads/master@{#425168}
(cherry picked from commit 4f0cb8e9b16a270d0a7fd313f161b4c2c9a0df29)

Review URL: https://codereview.chromium.org/2427083002 .

Cr-Commit-Position: refs/branch-heads/2883@{#183}
Cr-Branched-From: 614d31daee2f61b0180df403a8ad43f20b9f6dd7-refs/heads/master@{#423768}

[modify] https://crrev.com/874cc8d1db06b6b7b04db41084f28a23956dbaf7/content/common/origin_trials/trial_token.cc
[modify] https://crrev.com/874cc8d1db06b6b7b04db41084f28a23956dbaf7/content/common/origin_trials/trial_token.h
[modify] https://crrev.com/874cc8d1db06b6b7b04db41084f28a23956dbaf7/content/common/origin_trials/trial_token_unittest.cc
[modify] https://crrev.com/874cc8d1db06b6b7b04db41084f28a23956dbaf7/tools/origin_trials/generate_token.py

Comment 7 by dimu@google.com, Nov 4 2016

Labels: -merge-merged-2840
[Automated comment] removing mislabelled merge-merged-2840

Sign in to add a comment