Mam aplikację Railsową, która używa Device + odźwięcznika. Używam również cancan do zarządzania rolami.W mojej aplikacji używam http://localhost:3000/oauth/applications/new
do rejestracji moja aplikacja do uzyskania identyfikatora klienta i tajnego. Obecnie każdy użytkownik może zarejestrować aplikację za pomocą interfejsu internetowego, aby uzyskać klienta i tajny identyfikator, muszę ograniczyć dostęp, aby tylko administrator mógł zarejestrować Aplikację.Szyny 3: Jak ograniczyć dostęp do interfejsu sieciowego w celu dodania autoryzowanych aplikacji przy użyciu przystawki Doorkeeper gem
Widziałem jakiś kod w doorkeeper.rb
pliku
# If you want to restrict access to the web interface for adding oauth authorized applications, you need to declare the block below.
# admin_authenticator do
# # Put your admin authentication logic here.
# # Example implementation:
# Admin.find_by_id(session[:admin_id]) || redirect_to(new_admin_session_url)
# end
Starałem się jak poniżej, ale nie działa ...
admin_authenticator do
if(current_user)
current_user.role? :admin
else
redirect_to(new_user_session_url)
end
end
góry dzięki ......
Wydaje się, że to błąd, opublikuj problem na stronie github: https://github.com/applicake/doorkeeper –
próbowałem w ten sposób i działa ........ admin_authenticator zrobić redirect_to (new_user_session_url) chyba że (current_user.role? : admin) koniec – Cyber
Czy próbowałeś już wracać zero? A więc coś takiego: 'admin_authenticator {zero}'. Zobacz, co to jest, jeśli nadal możesz uzyskać dostęp do/oauth/aplikacji, to wygląda na to, że jest to błąd. – Max