mozilla persona: simplified sign-on

52
@ Open Web Camp V Vlad Filippov

Upload: vlad-filippov

Post on 27-Jan-2015

106 views

Category:

Technology


0 download

DESCRIPTION

Mozilla Persona: Simplified Sign-on at OpenWebCamp V

TRANSCRIPT

Page 1: Mozilla Persona: Simplified Sign-on

@ Open Web Camp V Vlad Filippov

Page 2: Mozilla Persona: Simplified Sign-on

@vladikoff

Page 3: Mozilla Persona: Simplified Sign-on

Identity Team at Mozilla

https://hacks.mozilla.org

http://identity.mozilla.com

Persona, Profile in the Cloud, Firefox Sign-in, Identity UX

Page 4: Mozilla Persona: Simplified Sign-on

• Mozilla Persona - a login system for the Web • Eliminates site-specific passwords

• Use your email to sign in into websites

• All open source

• User privacy is one of the core goals

Mozilla Persona Overview

Page 5: Mozilla Persona: Simplified Sign-on

Users • A better way to sign in

Developers • Why Persona? • Persona API• Libraries & Plugins

Identity Providers• BrowserID Protocol• Running your own IdP

Mozilla Persona for ...

Page 6: Mozilla Persona: Simplified Sign-on

Persona for Users

Page 7: Mozilla Persona: Simplified Sign-on

Current state of sign-in

Page 8: Mozilla Persona: Simplified Sign-on

Current state of sign-in

Page 9: Mozilla Persona: Simplified Sign-on

Current state of sign-in

Page 10: Mozilla Persona: Simplified Sign-on

Mozilla Persona - A better way to sign in!

Page 11: Mozilla Persona: Simplified Sign-on

Mozilla Persona - A better way to sign in!

Page 12: Mozilla Persona: Simplified Sign-on

Persona - Manage addresses

login.persona.org

Page 13: Mozilla Persona: Simplified Sign-on

Identity Bridging

@yahoo.com accounts can login to Persona-enabled sites

Page 14: Mozilla Persona: Simplified Sign-on

Persona - Browser Support

Tested with

Page 15: Mozilla Persona: Simplified Sign-on

Persona - Native on Firefox OS!

Page 16: Mozilla Persona: Simplified Sign-on

Firefox OS Demo

Page 17: Mozilla Persona: Simplified Sign-on

Persona for Developers

Page 18: Mozilla Persona: Simplified Sign-on

Building Sign In

bad passwords challenging UX

password reset recovery

support security backup

Page 19: Mozilla Persona: Simplified Sign-on

Easy to use. Easy to implement in your apps or sites

Federated Protocol & Decentralized

No social profiles attached

No need to store passwords

No need to rely on third-parties

Eliminate registration forms and more...

Why Persona?

Page 20: Mozilla Persona: Simplified Sign-on

UX freedom

Persona for developers

Page 21: Mozilla Persona: Simplified Sign-on

UX Prototypes

Persona for developers

Page 22: Mozilla Persona: Simplified Sign-on

Persona for developers

Translated & Localized

Page 23: Mozilla Persona: Simplified Sign-on

Persona at Mozilla

Page 24: Mozilla Persona: Simplified Sign-on

Persona around the Web

Page 25: Mozilla Persona: Simplified Sign-on

Persona around the Web

Page 26: Mozilla Persona: Simplified Sign-on

Persona around the Web

Page 27: Mozilla Persona: Simplified Sign-on

Persona around the Web

Page 28: Mozilla Persona: Simplified Sign-on

Persona around the Web

Page 29: Mozilla Persona: Simplified Sign-on

Persona around the Web

Page 30: Mozilla Persona: Simplified Sign-on

Persona in your app

1. JavaScript Library

2. Login / logout buttons

3. Configure Persona

4. Verify Assertions

Page 31: Mozilla Persona: Simplified Sign-on

Persona API - 1. JavaScript Library

https://login.persona.org/include.js

Page 32: Mozilla Persona: Simplified Sign-on

Persona API - 2. Buttons!

<a href="javascript:navigator.id.request()">Sign in</a>

<a href="javascript:navigator.id.logout()">Log out</a>

Page 33: Mozilla Persona: Simplified Sign-on

Persona API - 3. Configure

client.js

Page 34: Mozilla Persona: Simplified Sign-on

Persona API - 4. Verify

app.js (server-side)

Page 35: Mozilla Persona: Simplified Sign-on

Persona API - 4. Verifyroutes.js (server-side)

Page 36: Mozilla Persona: Simplified Sign-on

Persona API in your favorite language

verifier response

Page 37: Mozilla Persona: Simplified Sign-on

Persona API in your favorite language

Page 38: Mozilla Persona: Simplified Sign-on

Persona with plugins

1. JavaScript Library

2. Login / logout buttons

3. Configure Persona

4. Verify Assertions

Page 39: Mozilla Persona: Simplified Sign-on

Meteor + Persona Demo

Page 40: Mozilla Persona: Simplified Sign-on

Persona for developers

Page 41: Mozilla Persona: Simplified Sign-on

Existing plugins and libraries JavaScript

Python

Ruby

PHP

Java

Clojure

...

Page 42: Mozilla Persona: Simplified Sign-on

Persona for Identity Providers

Page 44: Mozilla Persona: Simplified Sign-on

Persona - IdP in your language

Reference implementation in Node.js

Page 45: Mozilla Persona: Simplified Sign-on

Persona - BrowserID Actors

Users - A person that wants to sign into a website

Relying Parties - Sites that use Persona for sign-in

Identity Providers - Domains that can issue certificates

Page 46: Mozilla Persona: Simplified Sign-on

Persona - Step 1: Certificate Provisioning

/.well-known/browserid

Identity Provider

Provisioning URLusing email and public key

User Certificate

Browser

Page 47: Mozilla Persona: Simplified Sign-on

Persona - Step 2: Identity Assertion

Identity Assertiondomain of the RP + expiration

Browser

Page 48: Mozilla Persona: Simplified Sign-on

Persona - Step 3: Verification

Identity Assertion

User Certificate

Identity Provider

/.well-known/browserid

Page 49: Mozilla Persona: Simplified Sign-on

Persona - Fallback IdP

Fallback Identity Provider

/.well-known/browserid

Identity Provider

Browser or Relying Party requests

Page 50: Mozilla Persona: Simplified Sign-on

browserid-certifiergenerate a shared public key for the IdP

serve /.well-known/browseridhas the public key, authentication & provisioning urls

Persona - Setting up an IdP

implement provisioning page & authentication page

Page 51: Mozilla Persona: Simplified Sign-on

Developer Documentation https://developer.mozilla.org/persona

Need to introduce Persona to others?http://mozilla.org/persona

User? Developer? Submit your user story:https://github.com/mozilla/browserid-roadmap

Need help beyond the docs?#identity on irc.mozilla.org

Persona for everyone

Page 52: Mozilla Persona: Simplified Sign-on

developer.mozilla.org/persona

Thanks!