का उपयोग करके भूमिका-आधारित प्राधिकरण को कार्यान्वित करना मैं अपने वेब एप्लिकेशन में भूमिका-आधारित प्राधिकरण को कार्यान्वित करना चाहता हूं जिसे मैं बना रहा हूं। जिस तरह से मैं यह सुनिश्चित करने के लिए कल्पना की निम्नलिखित की तरह मेरे डीबी में 3 टेबल बनाने के लिए है: प्रत्येक उपयोगकर्ता एक भूमिका उसे सौंपी होता.NET MVC 5
1. Roles
2. UserRoles (many to many table)
3. Users
उसके बाद। अब ... मेरा सवाल है, मैं अपने .NET MVC एप्लिकेशन के अंदर विशिष्ट दृश्य/नियंत्रकों तक पहुंच को कैसे अनुमति या प्रतिबंधित कर सकता हूं। मैं इस पर ठोकर खाई है:
[Authorize(Roles = "HrAdmin, CanEnterPayroll")]
[HttpPost]
public ActionResult EnterPayroll(string id)
{
// . . . Enter some payroll . . .
}
अधिकृत संपत्ति विशिष्ट भूमिकाओं के लिए विशिष्ट नियंत्रक/कार्रवाई सीमित किया जा रहा है ... लेकिन क्या होगा अगर मैं मेरे मामले में की तरह तालिका UserRoles से उपयोगकर्ता भूमिकाओं को पढ़ ?? मेरे एप्लिकेशन को यह पता चल जाएगा कि उपयोगकर्ता के पास सिस्टम पर कौन सी भूमिका है ??
क्या कोई इस से मेरी सहायता कर सकता है?
क्या आपने [एएसपी.नेट पहचान] (https://www.asp.net/identity) की जांच की थी? – SeM
आपको अपनी 'लॉगिन()' विधि में अपनी भूमिकाओं के साथ दावा जोड़ना होगा। – SeM
उपरोक्त पहले से ही एमवीसी 5 में निर्मित पहचान ढांचे में लागू किया गया है। आपको इन तालिकाओं को स्वयं बनाने के बारे में चिंता करने की आवश्यकता नहीं है, बस डिफ़ॉल्ट कनेक्शन स्ट्रिंग में संशोधन करें और इसे सर्वर पर इंगित करें। – uk2k05