2012-11-19 12 views
5

में सत्र का उपयोग मैं आरबीएसी मॉडल के आधार पर एक्सेस कंट्रोल को समझने की कोशिश कर रहा हूं। मैंने निम्नलिखित लिंक का उल्लेख किया।रोल आधारित एक्सेस कंट्रोल (आरबीएसी)

NIST RBAC Data Model

मैं स्पष्ट रूप से इस हिस्से से नहीं समझा गया है के रूप में अंश में उल्लेख किया है -

* "प्रत्येक सत्र एक उपयोगकर्ता की मैपिंग संभवतः कई भूमिकाओं, यानी, एक उपयोगकर्ता एक सत्र के दौरान स्थापित करने के लिए है जो उपयोगकर्ता भूमिकाओं के कुछ सबसेट को सक्रिय करता है जिसे वह सौंपा जाता है। प्रत्येक सत्र एक उपयोगकर्ता से जुड़ा होता है और प्रत्येक उपयोगकर्ता एक या अधिक सत्रों से जुड़ा होता है। फ़ंक्शन session_roles हमें सत्र द्वारा सक्रिय भूमिकाएं देता है और फ़ंक्शन user_sessions देता है हमें उपयोगकर्ता के साथ जुड़े सत्रों का सेट। उपयोगकर्ता को उपलब्ध अनुमतियां एसी हैं जो भूमिकाओं को आवंटित अनुमतियां हैं सभी user.s सत्रों में टकरा गया। "*

प्रश्न - भूमिकाओं को सक्रिय करने के लिए सत्र का उपयोग कैसे किया जा सकता है? उपयोगकर्ता/समूह और भूमिकाओं के बीच संबंध व्यवस्थापक डेटा के रूप में डाला जाता है। तो, सत्र उपयोगकर्ता के लिए भूमिकाओं का सबसेट कैसे सक्रिय करता है?

पीएस -> मैंने इस प्रश्न को पहले here से पूछा लेकिन बिना किसी जवाब के पूछा। यह प्रश्न पूछने के लिए बहुत बुनियादी हो सकता है लेकिन मैं इसे समझने के लिए उत्सुक हूं। कोई भी उपयोग केस या एक लिंक निश्चित रूप से सहायक होगा।

आपके समय के लिए धन्यवाद।

उत्तर

4

आरबीएसी में, प्रशासक उन्हें भूमिका निभाने के द्वारा अनुमति देते हैं, और इसके अलावा उपयोगकर्ताओं को भूमिका निभाने के द्वारा अनुमति देते हैं। जैसा कि आप जानते हैं, किसी उपयोगकर्ता के लिए किसी विशेष अनुमति का उपयोग करने में सक्षम होने के लिए, उसे कम से कम एक भूमिका नियुक्त करनी होगी जो समाधान प्रदान करती है।

इसलिए प्रत्येक उपयोगकर्ता के पास उसे नियुक्त भूमिकाओं का एक सेट होता है। एक सत्र के दौरान, वह इनमें से किसी भी भूमिका को सक्रिय (या निष्क्रिय) करने का विकल्प चुन सकता है, लेकिन कोई अन्य नहीं। सक्रिय भूमिकाएं निर्धारित करती हैं कि सत्र के दौरान किसी दिए गए समय पर उपयोगकर्ता को कौन सी अनुमतियां उपलब्ध हैं। यह उपयोगी है, उदाहरण के लिए, कर्तव्य बाधाओं के गतिशील पृथक्करण के लिए, जहां एक ही उपयोगकर्ता यू को दो भूमिकाएं आवंटित की जा सकती हैं, लेकिन एक साथ उपयोग नहीं किया जा सकता है। इसलिए, यदि यू ए का उपयोग करना चाहता है, तो उसे ए

+0

धन्यवाद इरेज़र, उपयोगकर्ता भूमिकाओं को सक्रिय/निष्क्रिय करने का विकल्प कैसे चुनता है? और वह ऐसा कब करता है? एक साधारण वेब एप्लिकेशन को ध्यान में रखते हुए जहां उपयोगकर्ता को लॉगिन फॉर्म के माध्यम से प्रमाणित किया जाना है, क्या उपयोगकर्ता लॉगिन फॉर्म सबमिट करने के बाद भूमिकाएं चुनता है? यदि हां, तो यह कैसे होता है? यदि नहीं, सफल लॉगिन के बाद, जब कोई सत्र बनाया जाता है, तो इस उपयोगकर्ता को भूमिकाएं सक्रिय/निष्क्रिय कैसे की जाती हैं? –

+1

यह आपके द्वारा उपयोग किए जा रहे प्राधिकरण ढांचे पर निर्भर करता है, और आप अपने एप्लिकेशन में एक्सेस नियंत्रण कैसे कार्यान्वित करते हैं। उदाहरण के लिए, किसी वेब एप्लिकेशन में, किसी विशेष पृष्ठ पर जाकर कुछ भूमिकाओं के सक्रियण/निष्क्रियकरण को ट्रिगर कर सकता है। आरबीएसी मानक सत्र के दौरान भूमिकाओं के सक्रियण और निष्क्रियता को निष्क्रिय नहीं करता है, और कुछ ढांचे केवल लॉगिन पर सभी भूमिकाओं को सक्रिय करेंगे। उस स्थिति में, निश्चित रूप से, कर्तव्य बाधाओं का गतिशील पृथक्करण बेकार है। आप [आरबीएसी मानक] (http://csrc.nist.gov/rbac/sandhu-ferraiolo-kuhn-00.pdf) पर एक नज़र रखना चाहते हैं। –

+0

धन्यवाद इरेज़र, मुझे लगता है, मैंने इसे समझना शुरू कर दिया है। एक उद्धरण से, रेफ फ्लैट आरबीएसी, उपरोक्त लिंक से पृष्ठ 5 - "अन्य मामलों में, उपयोगकर्ता को उपयोगकर्ता के विवेकाधिकार पर किसी दिए गए सत्र में भूमिकाओं को सक्रिय और निष्क्रिय करने का विकल्प दिया जाता है"। इस प्रकार का वेब एप्लिकेशन कहां उपयोग किया जाता है? मुझे लगता है कि यह आपके व्यवस्थापक में आपके द्वारा वर्णित व्यवस्थापक वेब एप्लिकेशन है। –

1

सक्रिय करने से पहले बी को निष्क्रिय करना होगा, आरबीएसी को लागू करने में मेरे अनुभव से, मैंने बहु-सत्रों के गतिशील प्रबंधन का उपयोग करके बहुत अधिक बचाया।

सबसे पहले यह एक सुंदर साफ और लचीला विचार की तरह लग रहा था, लेकिन जैसा कि आपने सवाल किया कि कौन भूमिकाओं को सक्रिय/निष्क्रिय करता है (और कब), मुझे एहसास हुआ कि जटिलता और सुरक्षा जोखिम प्रयास (मेरी व्यक्तिगत राय) के लायक नहीं थे।

महत्वपूर्ण बात यहाँ समझने के लिए और जिसके लिए @Imontriux (ऊपर) का उल्लेख किया:

"यह उपयोगी है, उदाहरण के लिए कर्तव्य की कमी के गतिशील जुदाई, जहां दो भूमिकाएं ए और बी हो सकता है के लिए, उसी उपयोगकर्ता को यू को असाइन किया गया है, लेकिन इसका उपयोग नहीं किया जा सकता है। इसलिए, यदि यू ए का उपयोग करना चाहता है, तो वह को सक्रिय करने से पहले बी को निष्क्रिय करना होगा। "

अधिकांश समय, कर्तव्य बाधाओं को अलग करना होता है जो लागू होना चाहिए और इसका सम्मान करने के लिए, मैंने बस एक समय में प्रति उपयोगकर्ता एक वैध सत्र का प्रबंधन/प्रबंधन करना चुना है। यदि कोई उपयोगकर्ता भूमिकाओं के विभिन्न सेट के तहत प्रमाणित करना चाहता है, तो वह लॉग इन करने और वापस लॉग इन करने में ज़िम्मेदार है।

यह मेरे बहुत सारे कोड को बहुत सरल बना देता है। यह एक समझौता था जिसे मैंने चुना था और आसानी से साथ रह सकता था।

+0

प्रमाणीकरण समय पर चयन और सक्रिय करना अभी भी गतिशील प्रबंधन है। मानक यह नहीं कहता कि इसे "फ्लाई का" होना है। सुरक्षा के रूप में, यह बुरी चीजों को होने से नहीं रोकता है, लेकिन यह एक उत्कृष्ट लेखापरीक्षा का निशान प्रदान करता है, जो कि व्यक्ति को ज्ञात रूप से समर्पित फल (उदाहरण के लिए) साबित करता है। हमारे पास सरकारी आवेदन हैं जहां एक सिविल कर्मचारी सब्सिडी का भुगतान करने का प्रभारी होता है, लेकिन नागरिक के रूप में भी लॉगिन कर सकता है और सब्सिडी के लिए आवेदन कर सकता है। इसे तकनीकी रूप से टाला नहीं जा सकता है, और यह भी कुछ ऐसा है जिसे आप टालना नहीं चाहते हैं। – WanWizard

+0

@WanWizard हां, मैं आपके बिंदु को समझता हूं। हालांकि मैं कल्पना करता हूं कि विंडोज़ जैसे सिस्टम हैं जहां आप नियमित उपयोगकर्ता हैं और जब आप एक विशेषाधिकार प्राप्त आदेश निष्पादित करने का प्रयास करते हैं, तो यह आपके विशेषाधिकारों को आपके विशेषाधिकारों को बढ़ाने के लिए पॉप अप करता है। जाहिर है, विंडोज शायद एक सत्र में दूसरे सत्र में/बाहर नहीं आ जाता है बल्कि अतिरिक्त अनुमतियां प्रदान करता है। लेकिन मैं 'गतिशील' में यही समझता हूं। यदि विंडोज़ को आपको पूरी तरह से लॉग आउट करने की आवश्यकता होगी और फिर विशेषाधिकार प्राप्त उपयोगकर्ता के साथ लॉग इन करें, जो मेरे लिए अलग है (यानी स्थिर) और वास्तव में गतिशील प्रबंधन नहीं। – Jeach

+0

मैं समझता हूं कि उपयोगकर्ता मित्रता दृष्टिकोण से, आपको ऐसा कुछ चाहिए। हालांकि, मुझे लगता है कि एक सुरक्षा बिंदु से, विंडोज डिजाइन मूल रूप से त्रुटिपूर्ण है। यह आपके अधिकारों को बढ़ाने के लिए किसी अन्य उपयोगकर्ता के प्रमाण-पत्रों का उपयोग करता है, जो एक लेखापरीक्षा बिंदु से एक दुःस्वप्न है। और मेरा मामला कोई अन्य उपयोगकर्ता नहीं है, यह वही उपयोगकर्ता है जिसमें कई भूमिकाएं हैं, और कर्तव्य को अलग करने के कारण, उपयोगकर्ता को एक ही समय में इन भूमिकाओं से संबंधित अनुमतियां नहीं हो सकती हैं। – WanWizard

संबंधित मुद्दे