Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enforcement against formation of large sets #29

Closed
krgovind opened this issue Oct 6, 2020 · 8 comments
Closed

Enforcement against formation of large sets #29

krgovind opened this issue Oct 6, 2020 · 8 comments

Comments

@krgovind
Copy link
Collaborator

krgovind commented Oct 6, 2020

To aid user understanding, and prevent abuse, it is desirable to prevent the formation of excessively large sets. What are some ways to prevent or disincentivize formation of large sets?

  • Technical limit on the size of a set: Is there a reasonable limit we can place on the number of domains in a set?
    • ccTLD variants can number in the 100s. Should those be discounted against the limit?
  • Storage limits: Could we apply counterpressure against formation of large sets by applying storage limits per set, instead of per domain?
  • Entropy limits: Could we apply counterpressure against formation of large sets by applying entropy limits (e.g. Privacy Budget ) will be applied per set, instead of per domain. Can these be an effective counterpressure?
  • Other ideas?
@bslassey
Copy link

bslassey commented Oct 6, 2020

Since there will be communication within a set, Privacy Budget limits will have to apply to the entire set. Whether or not that is effective counterpressure to forming large sets can reasonably debated of course.

@krgovind
Copy link
Collaborator Author

krgovind commented Oct 6, 2020

Since there will be communication within a set, Privacy Budget limits will have to apply to the entire set. Whether or not that is effective counterpressure to forming large sets can reasonably debated of course.

Indeed. Edited the original post to reflect this.

@hpsin
Copy link

hpsin commented Feb 22, 2021

@krgovind the size of the allowed set is of significant interest to established corporations like Microsoft, who have ~300 domains in use for our applications that we'd need to put in a single set. Is there a plan to place a hard upper limit on the set size? Happy to open this as a separate issue.

@othermaciej
Copy link

Hundreds of domains in a set has clear abuse potential. There should be some sort of limit.

@hpsin
Copy link

hpsin commented Feb 24, 2021

Agreed - there will always be tension with forcing changes and improving privacy. We can pick winners amongst our apps if need be. Understanding if the limit is 3 (non-starter for us, 3 barely covers our login pages) or 20, or 50, is a good starting point that we can use to drive domain convergence.

@krgovind
Copy link
Collaborator Author

@hpsin: Could you elaborate on whether all ~300 domains would need to be in the same set?

  • Do they all need access to the same user identity within a given browsing session?
  • Do some of them serve as utility domains that could make use of partitioned state? For instance, Firefox is doing this in ETP strict mode.

Note that a single organization would have the ability to form multiple sets. For instance you could divide up your domains based on how users interact across them.

@hpsin
Copy link

hpsin commented Mar 8, 2021

Generally yes - they are all "top level" products that a user would interact with and expect to see SSO between them. We could look at reducing this to perhaps 100 domains once we strip out CDNs, back-end sites, sites that don't require cookie auth, etc - at which point it does not accurately capture the set of domains we own. No matter how we divide up the domains, all of them overlap on our login domain (thus breaking the "one set per domain" rule).

We could use (and plan to use) partitioning for some domains (think the spellcheck plugin for a word processor) with some significant updates to the auth model, which may reduce our count down to 75.

@johannhof
Copy link
Member

I think this was solved through the subsets design and particularly limiting the number of "associated" subset members. There's still an open question whether the new design is able to solve all use cases properly (#96) but for now I'd say that in general the design is effective in preventing (non-contextual) large set formation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants