2012-03-09 4 views
19

Каков наилучший способ добавить несколько ролевых доступов к вики Gollum?Сильный контроль доступа для Gollum?

Я понимаю, как добавить базовый HTTP-аутентификатор через промежуточное ПО Rack. Тем не менее, я хотел бы знать, что требуется для полной аутентификации и авторизации нескольких пользователей/ролей.

Можно ли разработать или использовать OmniAuth аналогично приложению Rails?

Что требуется?

+1

@ ChrisF Я собираюсь перефразировать это, чтобы сделать это по теме. + голосовать за повторное открытие. – ocodo

+0

До тех пор, пока он не будет открыт, я предлагаю, чтобы кто-то водил машину, должен рассмотреть возможность переноса Gollum в приложение Rails в соответствии с http://stackoverflow.com/a/13372435/311660 - для упаковки различных уровней авторизации (например, с CanCan и т. Д.) Может потребоваться наложение Gollum для этого это зависит от степени детализации полномочий/роли/прав. – ocodo

ответ

0

В этой теме

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

один из разработчиков Голлум дает некоторые намеки. Неизвестный fork/project пока не кажется.

+2

Хотя это теоретически может ответить на вопрос, [было бы предпочтительно] (http://meta.stackexchange.com/q/8259) включить сюда основные части ответа и предоставить ссылку для справки. – CharlesB

2

Я нашел основное расширение HTTP-аутентификации здесь: https://gist.github.com/2224709

+0

Это лучший вариант, но он не позволяет осуществлять иерархический контроль. –

16

С этим намеком http://www.sinatrarb.com/faq.html#auth мой конфигурационный файл, как этот

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

и работает как:

$ gollum --config authentication.rb 

в управлении Голлума Например, он будет запрашивать имя пользователя и пароль

1

Оставляя это здесь для всех, кто интересуется: используя метод vigntom, я сделал репо с базовым auth, добавленным для Gollum, готовым к работе. Я помещал учетные данные в файл yaml, чтобы они не были жестко закодированы в репо.

https://github.com/mrchameleon/precious

Смежные вопросы