2012-03-09 12 views
19

Jaki jest najlepszy sposób na dodanie dostępu do wielu ról do wiki Gollum?Silna kontrola dostępu dla Gollum?

Rozumiem, jak dodać podstawowe uwierzytelnianie HTTP przez pośrednika Rack. Chciałbym jednak wiedzieć, co jest wymagane do pełnego uwierzytelnienia i autoryzacji dla wielu użytkowników/ról.

Czy Devise lub OmniAuth mogą być używane w podobny sposób jak aplikacja Rails?

Co jest wymagane?

+1

@ChrisF Idę przeredagować to zrobić to na temacie. + głosuj, aby ponownie otworzyć. – ocodo

+0

Do czasu ponownego otwarcia sugeruję, aby każdy, kto jechał, powinien rozważyć zawijanie Golluma w aplikacji Rails na http://stackoverflow.com/a/13372435/311660 - zawijanie różnych poziomów autoryzacji (np. Z CanCan itp.) Może wymagać rozwidlenia Golluma aby to zrobić, zależy to od szczegółowości autoryzacji/ról/praw. – ocodo

Odpowiedz

0

W tym wątku

https://github.com/gollum/gollum/issues/107

jednym z twórców Gollum daje pewne wskazówki. Nie ma jeszcze znanego widelca/projektu.

+2

Chociaż może to teoretycznie odpowiedzieć na pytanie, [byłoby lepiej] (http://meta.stackexchange.com/q/8259), aby uwzględnić istotne części odpowiedzi tutaj, i podać link do odniesienia. – CharlesB

16

Z tego nutą http://www.sinatrarb.com/faq.html#auth mój plik konfiguracyjny jak to

# authentication.rb 
module Precious 
    class App < Sinatra::Base 
    use Rack::Auth::Basic, "Restricted Area" do |username, password| 
     [username, password] == ['admin', 'admin'] 
    end 
    end 
end 

i działa tak:

$ gollum --config authentication.rb 

W Golluma biegania instancja, poprosi o podanie nazwy użytkownika i hasła

1

Pozostawiając to tutaj dla wszystkich zainteresowanych: stosując metodę vigntom jest, zrobiłem repo z basic auth dodane na Golluma, gotowa do pracy. Umieszczam dane uwierzytelniające w pliku yaml, aby zapobiec ich zakodowaniu w repozytorium.

https://github.com/mrchameleon/precious