946
edits
No edit summary |
|||
(19 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
{ | {{FeatureStatus | ||
|Feature name=Web-based Verified Email Client | |||
|Feature stage=Complete | |||
|Feature status note=Scoping new work after VEP changes. | |||
}} | |||
{{FeatureTeam | |||
|Feature product manager=Dan Mills | |||
|Feature feature manager=Dan Mills | |||
|Feature lead engineer=Rob Miller | |||
| | |Feature security lead=Michael Coates | ||
| | |Feature privacy lead=Sid Stamm | ||
| Dan Mills | |Feature qa lead=James Bonacci | ||
|Feature ux lead=Chris Howse | |||
| | }} | ||
|} | {{FeaturePageBody | ||
|Feature overview=Pure HTML client of the Verified Email Service. | |||
= | |||
Pure HTML client of the Verified Email Service. | |||
Related features: | Related features: | ||
Line 23: | Line 21: | ||
* [[../Verified Email Service Admin Interface|Verified Email Service Admin Interface]] | * [[../Verified Email Service Admin Interface|Verified Email Service Admin Interface]] | ||
Goals: | |||
* Implement the JS API for sites to support Verified Email | |||
* Not to interfere when native browser support is present | |||
* Directly interface with the Mozilla Verified Email service for all functionality | |||
* Support Verified Email on current-generation browsers: Firefox 4, IE 8, Chrome 10, Safari 5, Opera | |||
|Feature users and use cases=Mark gets a tip from a friend about SaladFans.com, a place to review and share your favorite salad bars. Mark visits the site and is eager to contribute his own reviews as well as connecting with friends to find out which salad bars they like. | |||
Mark sees a "sign in" button on the SaladFans site, and when he clicks on it a Mozilla ID pop-up dialog comes up telling him that the site is asking for a verified email address to sign-in. Mark hasn't used Mozilla ID before, so he clicks the "register" button. | |||
Mark now types in his email address, and chooses a password for his account. After he's done, Mozilla ID tells him that a verification message has been sent to his email, and he needs to click on a link there before proceeding. Mark checks his email and clicks on the link in the message Mozilla ID sent him. The link opens up a new pop-up replacing the previous one, which welcomes him to Mozilla ID and asks him if it's OK to disclose the email address to SaladFans.com. Mark clicks OK, the dialog closes, SaladFans.com reloads, and Mark is now signed into SaladFans.com! | |||
Key Points: | |||
* Easy set-up from scratch | |||
* All HTML flow, works on a variety of browsers | |||
* Flow centered around verified email disclosure | |||
|Feature requirements=<table width="100%" cellpadding="3"> | |||
<tr> | |||
<td style="background-color: #efefef;">'''Item'''</td> | |||
<td style="background-color: #efefef;">'''Bug'''</td> | |||
<td style="background-color: #efefef;">'''Status'''</td> | |||
</tr> | |||
<tr> | |||
<td> Core VEP client implementation (can handshake w/ server register an email, generate keys, receive a cert, generate assertion; no UI, no cert refresh) </td><td> 664598 </td><td> - | |||
</tr> | |||
<tr> | |||
<td> Relying party wrapper implementation (can handle getVerifiedEmail call and interact w/ core VEP client in a popup window; still no UI nor cert refresh) </td><td> 664597 </td><td> - | |||
</tr> | |||
<tr> | |||
<td> Identity authority wrapper implementation (can handler registerVerifiedEmail and registerVerifiedEmailCertificate calls and can interact w/ core VEP client in parent window, still no UI nor cert refresh) </td><td> 669455 </td><td> - | |||
</tr> | |||
<tr> | |||
<td> UI interaction through account creation / login / release of one email address (most UI will be generated by the server) </td><td> 664594 </td><td> - | |||
</tr> | |||
<tr> | |||
<td> Email selection UI (mostly generated by UA) and integration into VEP process </td><td> 664599 </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> Certificate refresh, successful only </td><td> 668620 </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> Certificate refresh w/ failure </td><td> 668625 </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td colspan="3"> ========= OLDER (OBSOLETE?) MILESTONES BELOW ========== </td> | |||
</tr> | |||
<tr> | |||
<td> Relying party API </td><td> - </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> Sign-in pop-up </td><td> - </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> Email disclosure pop-up </td><td> - </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> Email verification pop-up </td><td> - </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> Account creation pop-up </td><td> - </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> Account creation UX polish[1] </td><td> - </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> HTML client popups support multiple emails </td><td> - </td><td> - </td> | |||
</tr> | |||
<tr> | |||
<td> HTML client allows adding a new email to an existing account </td><td> - </td><td> - </td> | |||
</tr> | |||
</table> | |||
[1] ''e.g., password strength meter, pop-up auto-closes upon email verification'' | [1] ''e.g., password strength meter, pop-up auto-closes upon email verification'' | ||
|Feature non-goals=* Integrating with/implementing non-Verified Email auth protocols | |||
** including HTTP Auth, forms-based sign-in, OpenID, OAuth, etc. | |||
* Support for other profile information | |||
|Feature functional spec==== API Docs === | |||
* [[Identity/Verified Email Protocol|Verified Email Protocol]] | |||
* [[Services/Identity/HTML_Client|HTML client design notes]] | |||
Obsolete? | |||
* [[MozillaID/InternalSpec|Client API]] | * [[MozillaID/InternalSpec|Client API]] | ||
|Feature ux design=[[File:Registration.png|200px|thumb|left|Registration (i2)]] | |||
= | |||
[[File:Registration.png|200px|thumb|left|Registration (i2)]] | |||
[[File:Sign-In-Single-Email.png|200px|thumb|left|Single email (i2)]] | [[File:Sign-In-Single-Email.png|200px|thumb|left|Single email (i2)]] | ||
[[File:Sign-In-and-Site-Identity.png|200px|thumb|left|Multi email (i2)]] | [[File:Sign-In-and-Site-Identity.png|200px|thumb|left|Multi email (i2)]] | ||
<br clear="all"/> | <br clear="all"/> | ||
Older mockups: | Older mockups: | ||
* [[media:WebLogin.jpg|Login popup flow (i1)]] | * [[media:WebLogin.jpg|Login popup flow (i1)]] | ||
|Feature qa review=Basic Identity items [https://wiki.mozilla.org/Identity/QA test plan] | |||
= | }} | ||
{{FeatureInfo | |||
|Feature priority=P1 | |||
|Feature roadmap=Mozilla Identity | |||
|Feature list=Services | |||
|Feature engineering team=Services | |||
}} | |||
{{FeatureTeamStatus | |||
|Feature security status=sec-review-unnecessary | |||
|Feature security notes=2-Dec-2011: notified project canceled/shelved, removing security tags and closing out feature page per discussion with Rob Miller. Project superseded by BrowserID | |||
}} | |||
= | |||
= | |||
| | |||
| | |||
edits