का उपयोग कर ओथ अधिकृत अनुप्रयोगों को जोड़ने के लिए वेब इंटरफ़ेस तक पहुंच प्रतिबंधित करने के लिए कैसे करें मेरे पास एक रेल एप्लिकेशन है जो डिवाइस + डोरकीपर का उपयोग करता है। मैं रोल प्रबंधन के लिए भी कैनकन का उपयोग कर रहा हूं। मेरे आवेदन में मैं पंजीकरण के लिए http://localhost:3000/oauth/applications/new
का उपयोग करता हूं क्लाइंट और सीक्रेट आईडी प्राप्त करने के लिए मेरा आवेदन। वर्तमान में कोई भी ग्राहक क्लाइंट और गुप्त आईडी प्राप्त करने के लिए वेब इंटरफ़ेस के माध्यम से एप्लिकेशन पंजीकृत कर सकता है, मुझे एक्सेस प्रतिबंधित करना होगा ताकि केवल व्यवस्थापक ही पंजीकरण कर सके।रेल 3: Doorkeeper मणि
मैं doorkeeper.rb
फ़ाइल
# 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
मैं नीचे की तरह कोशिश की, लेकिन काम नहीं कर में कुछ कोड देखा ...
admin_authenticator do
if(current_user)
current_user.role? :admin
else
redirect_to(new_user_session_url)
end
end
अग्रिम धन्यवाद ......
यह एक बग लगता है, जिथब पेज पर कोई समस्या पोस्ट करें: https://github.com/applicake/doorkeeper –
मैंने इस तरह की कोशिश की है, और यह काम करता है ........ admin_authenticator redirect_to (new_user_session_url) जब तक (current_user.role? : व्यवस्थापक) अंत – Cyber
क्या आपने अभी शून्य की वापसी की कोशिश की है? तो, इस तरह कुछ: 'admin_authenticator {nil}'। देखें कि यह क्या करता है, यदि आप अभी भी/oauth/अनुप्रयोगों तक पहुंच सकते हैं तो यह एक बग – Max