Slide 1

Slide 1 text

Plataforma 2009 Autenticação flexível com Devise http://github.com/plataformatec/devise

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

Plataforma 2009 Soluções Existentes

Slide 4

Slide 4 text

Plataforma 2009 Clearance • Pontos positivos – Estrutura completa, como engine (MVC) – Confirmação de conta – Recuperação de senha • Pontos negativos – Pouco flexível (apenas model User) – Não modularizado

Slide 5

Slide 5 text

Plataforma 2009 Authlogic • Pontos positivos – Modelo bem flexível – Criptografia – Magic columns • Pontos negativos – Não é solução completa (MVC) como o Clearance – Trata a sessão como modelo

Slide 6

Slide 6 text

Plataforma 2009 Nossa proposta

Slide 7

Slide 7 text

Plataforma 2009 Devise • Pontos positivos – Rack based (via Warden): Rails, Metal, Sinatra – Solução completa (MVC), como engine – Múltiplos roles (logar como admin, user, ...) – Modular e flexível • Pontos negativos – Pouca base instalada – Menos de 10 watchers no github

Slide 8

Slide 8 text

Plataforma 2009 class User < ActiveRecord::Base devise :authenticable end

Slide 9

Slide 9 text

Plataforma 2009 class User < ActiveRecord::Base devise :confirmable end

Slide 10

Slide 10 text

Plataforma 2009 class User < ActiveRecord::Base devise :recoverable end

Slide 11

Slide 11 text

Plataforma 2009 class User < ActiveRecord::Base devise :validatable end

Slide 12

Slide 12 text

Plataforma 2009 class User < ActiveRecord::Base devise :all end

Slide 13

Slide 13 text

Plataforma 2009 ActionController::Routing::Routes.draw do |map| map.devise_for :users end

Slide 14

Slide 14 text

Plataforma 2009 ...tem mais coisa vindo

Slide 15

Slide 15 text

Plataforma 2009 Proteção contra Brute Force self.attempts_count = 10 self.attempts_timeframe = 2.hours

Slide 16

Slide 16 text

Plataforma 2009 Remember me self.remember_me = 2.weeks

Slide 17

Slide 17 text

Plataforma 2009 Migratable create_table :users do |t| t.authenticable t.confirmable end

Slide 18

Slide 18 text

Plataforma 2009 Magic colums self.login_count self.last_request_at self.last_login_ip

Slide 19

Slide 19 text

Plataforma 2009 github.com/plataformatec/devise blog.plataformatec.com.br