मैं एक MVC अनुप्रयोग है और मैं दिखाया गया के रूप में यह के लिए एक कस्टम roleprovider लिखा roleprovider कस्टम कंट्रोलर और क्रियाओं तक पहुंच को प्रतिबंधित करने के साथ-साथ:MVC कैसे HttpContext.Current.User.IsInRole लिए इसे हुक करने ("myrole")
[Authorize(Roles = "Administrator")]
नियंत्रक या क्रिया के ऊपर।
HttpContext.Current.User.IsInRole("Administrator")
इस विधि मेरी roleprovider का हिस्सा हालांकि बहुत ओवरराइड नहीं हो रही है नहीं है:
मैं भी का उपयोग कर, हालांकि ध्यान में रखते हुए कुछ बातें करने के लिए प्रतिबंधित एक्सेस चाहते हैं।
क्या कोई इस विधि के लिए इसे कैसे करना है जानता है?
मेरी भूमिका प्रदाता पर इस विषय पर
सच अच्छा ट्यूटोरियल विधि IsInRole शामिल नहीं है, हालांकि। यह RoleProvider से विरासत में है और विधि IsUserInRole है। – AnonyMouse
HttpContext.Current.User पर IsInRole विधि एक प्रकार के कार्यान्वयन IPrincipal पर है। जब आपके पास रोलप्रोवाइडर पंजीकृत होता है और एक अधिकृत उपयोगकर्ता से अनुरोध आता है, तो आईप्रिनिपलर रोल प्रिंसिपल का उदाहरण होगा। आप उपर्युक्त विधि से देख सकते हैं कि रोलप्रिनिपलर पर IsInRole रोलप्रोवाइडर की GetRolesForUser विधि को कॉल करता है, ताकि वह आपको यह सुनिश्चित करने के लिए ब्रेकपॉइंट सेट करने की आवश्यकता हो जिसे सही तरीके से कहा जा सके। –