O documento discute soluções existentes para autenticação em Ruby on Rails, como Clearance e Authlogic, e propõe o uso do Devise. O Devise fornece autenticação flexível e completa como um engine MVC, suportando múltiplos perfis de usuário e recursos como confirmação de conta e recuperação de senha.
4. 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
Plataforma 2009
5. 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
Plataforma 2009
7. 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
Plataforma 2009
8. class User < ActiveRecord::Base
devise :authenticable
end
Plataforma 2009
9. class User < ActiveRecord::Base
devise :confirmable
end
Plataforma 2009
10. class User < ActiveRecord::Base
devise :recoverable
end
Plataforma 2009
11. class User < ActiveRecord::Base
devise :validatable
end
Plataforma 2009
12. class User < ActiveRecord::Base
devise :all
end
Plataforma 2009