Labs/Bespin/DesignDocs/OpenIDIntegration: Difference between revisions

m
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= OpenID Integration document =
= OpenID Integration document =
Note: Work in progress (this document isn't completed yet.)
== Feature details ==
== Feature details ==
=== What's OpenID? ===
=== What's OpenID? ===
Line 11: Line 14:
# It's an open standard
# It's an open standard
# It's secure
# It's secure
# For company, it's available in closed environnement with a server running an OpenID service (there's many available out there)
# For companies, it's available in closed environment with a server running an OpenID service (there are many available out there)
# A single Id for all website supporting OpenID (growing and growing)
# A single Id for all websites supporting OpenID (the number is growing and growing)
# It adheres to Bespin mind : using new ideas/technologies
# It adheres to Bespin's mindset: using new ideas/technologies
 


===How does it work?===
===How does it work?===
Line 26: Line 28:
*Click a sign in link/button
*Click a sign in link/button
*Choose a listed provider or enter your own OpenID provider
*Choose a listed provider or enter your own OpenID provider
*You are automatically redirected to your provider to confirm that you want to login (this step can be minimized if there's a popup windows in overlay that shows the provider website)
*Are automatically redirected to your provider to confirm that you want to login (this step can be minimized if there's a popup windows in overlay that shows the provider website)
*Getting back to your web server and Voilà!
*Getting back to your web server and Voilà!


Line 33: Line 35:
*Avoid redirection to another website by popping an overlay window with the embedded OpenID provider website
*Avoid redirection to another website by popping an overlay window with the embedded OpenID provider website
* By following the OpenID best practice
* By following the OpenID best practice
* See how Mozilla Weave can help in the process (by follwing the naming convention of openID login form)
* See how Mozilla Weave can help in the process (by following the naming convention of openID login form)
* More to come ...  
* More to come ...
 


===Full switch to OpenID for Bespin?===
===Full switch to OpenID for Bespin?===
Line 49: Line 50:
===Good OpenID integration===
===Good OpenID integration===
http://stackoverflow.com/users/login
http://stackoverflow.com/users/login
 
<br />
http://ficly.com/authors/new  => :o) :o) :o)
<br />
* List all supported/most popular OpenID provider
* List all supported/most popular OpenID provider
* Gives the option to signup/login using their own OpenID (if not listed)
* Gives the option to signup/login using their own OpenID (if not listed)
* There are alternatives of OpenID itself (Google, Yahoo, AOL, etc)
* There are alternatives of OpenID itself (Google, Yahoo, AOL, etc)
 
* There is some information about OpenID
<br />


===Not intuitive OpenId integration===
===Not intuitive OpenId integration===
Line 73: Line 77:
<br />
<br />


<br />
== Requirements ==
== Requirements ==
=== Back End ===
=== Back End ===
==== OpenID available Python libraries ====
==== OpenID available Python libraries ====
==== Database/tables ====
 
JanRain's Python OpenID library is available at http://openidenabled.com/python-openid/
 
==== Tables mapping ====
 
Bespin's Python code already uses SQLAlchemy, so we aim for that for mapping the tables to useful Python objects.
 
TODO: describe the user/auth tables mappings here.
 
=== Front End ===
=== Front End ===
==== Login Page ====
==== Login Page ====
 
N/A
 
==Sources==
==Sources==
*http://wiki.openid.net/Details-of-UX-Best-Practices-for-OPs
*http://wiki.openid.net/Details-of-UX-Best-Practices-for-OPs
Line 95: Line 107:


== Roadmap ==
== Roadmap ==
N/A