59

Sprawdziłem StackOverflow i Google, ale nie mogłem znaleźć nikogo, kto zestawiłby porównanie klejnotów uwierzytelniania lub wtyczek dla Railsów (szukam czegoś dla Rails 3). Jakie rozwiązania uwierzytelniające są dostępne dla Rails 3, które są najbardziej popularne i jakie są między nimi różnice?Rozwiązania autoryzacji Rails 3

Odpowiedz

47

Ruby przybornik posiada listę najbardziej popularnych: http://ruby-toolbox.com/categories/rails_authentication.html

Widać, że opracowania i Authlogic są zdecydowanie najbardziej popularne.

Osobiście używam Devise. Działa dobrze z Railsami 3, można go łatwo dostosować i bardzo ułatwia integrację uwierzytelniania opartego na Twitterze i Facebooku.

+0

jeden z najbardziej ważne dla mnie było auth openID systemy oparte. Świetna odpowiedź :) –

+2

Dobra odpowiedź. [Sorcery] (https://github.com/NoamB/sorcery) to kolejna doskonała biblioteka, która jest nieco nowsza na scenie. – Andrew

14

Dla Rails3 App zdecydowanie Opracować). Devise to jedyny system uwierzytelniający, który zapewnia bezpieczeństwo na wszystkich 3 warstwach stosów szyn: - W "M", "v" i "C", a więc najlepiej. Ale musisz nauczyć się więcej o tym, jak dostosować urządzenie do własnych potrzeb. Możesz znaleźć pomoc w dostosowywaniu na tej stronie https://github.com/plataformatec/devise/wiki/_pages

0

Jestem zwolenniczką rozwijania własnych. W zależności od twoich wymagań jest to dość proste i zmniejsza zależność od kluczowego komponentu. Rails 3.1 sprawia, że ​​jest jeszcze łatwiej.

+5

Wydaje mi się, że biblioteka uwierzytelniająca to _stanowite miejsce, w którym chciałbyś zaufać sobie. – jrdioko

+0

uwierzytelnianie! = Szyfrowanie. Nie ufam sobie za pomocą szyfrowania, ale podstawy uwierzytelniania są bardzo proste. Rails 3.1 zawiera teraz wbudowane funkcje pomagające w soleniu. Innym sposobem, aby na to spojrzeć, jest to, czy jest to wystarczająco ważne, aby chronić, kogo czynicie, aby go chronić? Zdecydowanie są sytuacje, w których działa już używana biblioteka i myślę, że Devise jest świetny. – loneaggie

+3

Również masz szerszą społeczność, aby debugować kod, jeśli wykryte zostanie osłabienie. Me vs All Hackers lub Me + opensourceess awesomeness vs Hackers –

0

Trochę późno do partii, ale napisałem coś o tym tutaj:

http://zergsoft.blogspot.jp/2012/08/rails-3-authentication-compared-warden.html 

omówię Warden, opracowują i domu uprawiane.

0

Samouczek Michaela Hartla doskonale nadaje się do nauki samodzielnego tworzenia.

http://ruby.railstutorial.org/ruby-on-rails-tutorial-book

Użyłem że na wielu aplikacjach i kochać elastyczność konfigurowania własne metody uwierzytelniania.

Chociaż w przeważającej części używam Devise i LOVE it. Jest bardzo szybki/łatwy w implementacji, bardzo bezpieczny i robi dokładnie to, czego potrzebuję.

https://github.com/plataformatec/devise

ja zwykle go używać w połączeniu z kankana i Rolify

1

Dziwię OminAuth nie dostać wzmianki w żadnej z odpowiedzi. (Uzgodniona wersja OmniAuth jest nowsza niż to pytanie, ale są odpowiedzi, które pojawiły się później)

Jest to niewątpliwie najbardziej wyczerpujące rozwiązanie uwierzytelniające dostępne obecnie dla aplikacji szynowych.

Pod maską OmniAuth używa OAuth2, która ewoluuje jako faktyczny standard uwierzytelniania w aplikacjach internetowych na platformach i frameworkach. Prawie wszystkie główne odtwarzacze internetowe obsługują OAuth2 - Github, Google, Facebook, Twitter, LinkedIn to tylko kilka z nich.

Oczywiście Devise działa bardzo dobrze z OmniAuth więc nie powinno być poważnym problemem dla tych, które już za pomocą Devise