mozilla / persona-yahoo-bridge

A ProxyIdP service for bridging major IdPs who lack support for the BrowserID protocol.
26 stars 15 forks source link

Yahoo: FIX where someone@yahoo.com is also someone@yahoo-by-a-different-domain-name.tld #177

Open chemistrydioxide opened 11 years ago

chemistrydioxide commented 11 years ago

Same as #176 and #175 but this time for Yahoo. Related to #133.

Yahoo doesn't allow several email addresses with the same local part and different domain names to coexist on their system as this would lead to a collision on the Yahoo Messenger system where only the local part of an email address is used to identify a user rather than the full email address.

ozten commented 11 years ago

How does this break Persona, or what is the issue? What would be the expected behavior?

Note: I've asked the same question in #175.

callahad commented 11 years ago

See the response in #175. In brief, BigTent needs to accept OpenID attesting to user@other-domain.tld as proof of user@yahoo.com, if the two are equivalent to Yahoo.

lloyd commented 11 years ago

We have evidence that 20% of failures to log in with yahoo email addresses are because of this issue.

lloyd commented 11 years ago

I enumerated them! I used wikipedia! http://en.wikipedia.org/wiki/Yahoo!_Mail#Email_domains

lloyd commented 11 years ago

also http://en.wikipedia.org/wiki/Yahoo!_Mail#Ymail_and_Rocketmail

callahad commented 11 years ago

Things I would like to know:

callahad commented 11 years ago

Also, ymali and rocketmail are both distinct, independent namespaces.

callahad commented 11 years ago

Experimental summary:

I registered enduser815@yahoo.co.uk. I can receive mail at that address. Mail sent to any other TLD (yahoo.com, yahoo.co.nz, yahoo.ca) bounces.

I can log into Yahoo itself by typing enduser815@<any-yahoo-mail-domain> and my password.

I can log into Yahoo itself by only typing enduser815 and my password.

So as a Yahoo user, Yahoo doesn't care what I type when I want to log into Yahoo. But it does care what is typed when people try to send me email.

callahad commented 11 years ago

Because Yahoo does not treat TLDs interchangeably for mail, then our treating them as interchangeable seems odd.

Specifically, if we implement this proposal, we will begin vouching for addresses that would never be vouched for by our Fallback.

Instead, I propose that we fix #186 and turn on BigTent for the Yahoo Mail domains listed on Wikipedia.

karlht commented 11 years ago

Can you log into Yahoo itself using enduser8a5@whitehouse.gov? i.e. Is Yahoo login simply truncating the domain name entirely?

callahad commented 11 years ago

@karlht No. If you use a non-yahoo domain, or use ymail or rocketmail, you get an error and a prompt to create an account instead.

callahad commented 11 years ago

Or at least, I'd strongly urge us to fix #186 as a first course of action, regardless.

ozten commented 11 years ago

Can you log into Yahoo itself using enduser8a5@whitehouse.gov?

Good security question, but a user would never get delegated to BigTent for whitehouse.gov. Or at least not until Obama wants our help ;)

callahad commented 11 years ago

Summary of my opposition: Implementing domain equivalency in Yahoo BigTent means issuing certificates to people for addresses that they neither control nor have access to.

callahad commented 11 years ago

From looking at a snapshot of mismatched address failures, grouped by claimed identity:

Resolving #186 would allow at least 40% of users (typos and mismatched domains) to self-rescue.