omniauth: future proof your authentication
DESCRIPTION
These are the slides from a lightning talk I gave to SDRuby about Omniauth and the future of authentication in rails applications.TRANSCRIPT
![Page 1: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/1.jpg)
Omniauth
Future Proof Your Authentication
![Page 2: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/2.jpg)
Roadmap
What's Authentication?
Traditional Approach
The Problem
The Solution: Omniauth
![Page 3: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/3.jpg)
What's Authentication?
![Page 4: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/4.jpg)
What's Authentication?
Confirmation of Identity & Privileges
![Page 5: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/5.jpg)
What's Authentication?
Confirmation of Identity & Privileges
![Page 6: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/6.jpg)
What's Authentication?
Confirmation of Identity & Privileges
![Page 7: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/7.jpg)
What's Authentication?
Confirmation of Identity & Privileges
![Page 8: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/8.jpg)
Traditional Approach
Combine Identity & Authentication
![Page 9: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/9.jpg)
Traditional Approach
Combine Identity & Authentication
create_table(:users) do |t| t.string :username t.string :encrypted_passwordend
![Page 10: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/10.jpg)
The Problem
![Page 11: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/11.jpg)
The Problem
![Page 12: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/12.jpg)
The Problem
alter_table :users do |t| t.integer :facebook_uid, :Iimit => 8 t.string :facebook_auth_tokenend
![Page 13: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/13.jpg)
The Problem
alter_table :users do |t| t.integer :facebook_uid, :Iimit => 8 t.string :facebook_auth_tokenend
![Page 14: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/14.jpg)
The Problem
alter_table :users do |t| t.integer :facebook_uid, :Iimit => 8 t.string :facebook_auth_tokenend
![Page 15: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/15.jpg)
The Problem
alter_table :users do |t| t.integer :facebook_uid, :Iimit => 8 t.string :facebook_auth_tokenend
![Page 16: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/16.jpg)
The Problem
alter_table :users do |t| t.integer :facebook_uid, :Iimit => 8 t.string :facebook_auth_tokenend
![Page 17: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/17.jpg)
The Problem
![Page 18: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/18.jpg)
The Solution: Omniauth
Separate Identity from Authentication
![Page 19: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/19.jpg)
The Solution: Omniauth
Separate Identity from Authentication
create_table(:authentications) do |t| t.integer :user_id t.string :provider t.string :uid t.string :tokenend
![Page 20: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/20.jpg)
The Solution: Omniauth
![Page 21: Omniauth: Future Proof Your Authentication](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5549ab50b4c9050c738b573f/html5/thumbnails/21.jpg)
More Info
Learnhttp://railscasts.com/episodes/235-omniauth-part-1http://railscasts.com/episodes/236-omniauth-part-2
Dohttps://github.com/intridea/omniauth