आप एक ऐसे सिस्टम को कैसे मॉडल करेंगे जो किसी एप्लिकेशन के अंदर कुछ क्रियाएं करने के लिए अनुमतियों को संभालती है?एक अनुमति प्रणाली मॉडलिंग
उत्तर
सुरक्षा मॉडल अनुसंधान का एक बड़ा (और खुले) क्षेत्र हैं। से चुनने के लिए उपलब्ध मॉडल की एक विशाल सरणी सरल से लेकर, नहीं है:
Lampson's Access control matrix सूचियों हर डोमेन वस्तु और कार्रवाई है कि प्रिंसिपल उस वस्तु पर प्रदर्शन करने के लिए अनुमति दी है के साथ सिस्टम में हर प्रमुख। यह बहुत verbose है और अगर वास्तव में इस फैशन में लागू किया, बहुत स्मृति गहन।
Access control lists Lampson के मैट्रिक्स का सरलीकरण कर रहे हैं: यह कुछ एक विरल-मैट्रिक्स कार्यान्वयन है कि वस्तुओं और प्रधानाचार्यों और अनुमति कार्यों को सूचीबद्ध करता है, और Lampson के मैट्रिक्स से सभी "अशक्त" प्रविष्टियों एन्कोड नहीं करता जैसा मानते हैं। एक्सेस कंट्रोल सूचियों में 'समूह' को सुविधा के रूप में शामिल किया जा सकता है, और सूचियों को ऑब्जेक्ट के माध्यम से या प्रिंसिपल के माध्यम से संग्रहीत किया जा सकता है (कभी-कभी, कार्यक्रम के माध्यम से, AppArmor या TOMOYO या LIDS) में।
Capability systems वस्तुओं के संदर्भ या सूचक होने के विचार पर आधारित हैं; एक प्रक्रिया में क्षमताओं के प्रारंभिक सेट तक पहुंच होती है, और सिस्टम पर अन्य ऑब्जेक्ट्स से उन्हें प्राप्त करके अधिक क्षमताओं को प्राप्त किया जा सकता है। यह बहुत दूर लगता है, लेकिन यूनिक्स फ़ाइल वर्णनकर्ताओं के बारे में सोचें: वे एक विशिष्ट खुली फ़ाइल के लिए एक अप्रत्याशित संदर्भ हैं, और फ़ाइल वर्णनकर्ता को अन्य प्रक्रियाओं को सौंप दिया जा सकता है या नहीं। यदि आप किसी अन्य प्रक्रिया में वर्णनकर्ता देते हैं, तो उस फ़ाइल तक पहुंच होगी। पूरे ऑपरेटिंग सिस्टम इस विचार के आसपास लिखे गए थे। (सबसे प्रसिद्ध शायद KeyKOS और इरोस रहे हैं, लेकिन मुझे यकीन है कि यह एक बहस का मुद्दा बिंदु है कर रहा हूँ :)
... और अधिक जटिल है, जो वस्तुओं और प्रिंसिपलों को सौंपा सुरक्षा लेबल दिखाना:।
Security Rings,, मुल्टिक्स और 86 सीपीयू में लागू जैसे अन्य लोगों के अलावा, और सुरक्षा जाल या द्वार के लिए प्रदान करते हैं प्रक्रियाओं के छल्ले के बीच संक्रमण के लिए अनुमति देता है; प्रत्येक अंगूठी के विशेषाधिकारों और वस्तुओं का एक अलग सेट होता है।
Denning's Lattice एक मॉडल है जिसमें प्रिंसिपल को एक बहुत ही पदानुक्रमित फैशन में सुरक्षा लेबल के साथ बातचीत करने की अनुमति है।
Bell-LaPadula Denning के जाली के समान है, और अवर्गीकृत स्तर तक शीर्ष गुप्त डेटा लीक को रोकने के लिए नियम प्रदान करता है और आम एक्सटेंशन आगे compartmentalization और वर्गीकरण बेहतर सैन्य शैली प्रदान करने के लिए समर्थन 'जानने की जरूरत' प्रदान करते हैं।
Biba Model बेल-LaPadula के समान है, लेकिन 'अपने सिर पर बदल गया' - बेल-LaPadula गोपनीयता पर ध्यान केंद्रित है, लेकिन अखंडता के लिए कुछ नहीं करता है, और Biba अखंडता पर ध्यान केंद्रित है, लेकिन गोपनीयता के लिए कुछ नहीं करता है। (बेल-लापाडुला किसी को सभी जासूसों की सूची पढ़ने से रोकता है, लेकिन खुशी से किसी को भी इसमें कुछ लिखने की इजाजत देता है। बिबा खुशी से सभी को जासूसों की सूची पढ़ने की इजाजत देगी, लेकिन लगभग सभी को इसमें लिखने से मना कर दिया जाएगा।)
Type Enforcement (और इसके भाई, डोमेन प्रकार प्रवर्तन) प्रिंसिपल और ऑब्जेक्ट्स पर लेबल प्रदान करते हैं, और अनुमत ऑब्जेक्ट-क्रिया-विषय (कक्षा) तालिकाओं को निर्दिष्ट करते हैं। यह परिचित SELinux और SMACK है।
Chinese Wall एक संगठन एक बाजार में प्रतियोगियों को सेवाएं प्रदान करता भीतर अलग कर्मचारियों को व्यापार सेटिंग्स में विकसित किया गया था:
.. और फिर वहाँ कुछ है कि समय बीतने के शामिल हैं: उदाहरण के लिए, जब जॉनसन ने एक्सोन-मोबिल खाते पर काम करना शुरू कर दिया है, तो उसे बीपी खाते तक पहुंच की अनुमति नहीं है। अगर जॉनसन ने पहले बीपी पर काम करना शुरू कर दिया था, तो उसे एक्क्सन-मोबिल के डेटा तक पहुंच से इनकार कर दिया जाएगा।
LOMAC और high-watermark दो गतिशील दृष्टिकोण हैं: वे डेटा की उत्तरोत्तर-उच्च स्तर तक पहुँचने के रूप में LOMAC प्रक्रियाओं के विशेषाधिकारों को संशोधित करता है, और निचले स्तर (प्रक्रियाओं "शीर्ष सुरक्षा" की ओर विस्थापित), और उच्च वॉटरमार्क संशोधित करने के लिए लिख मनाही प्रक्रियाओं के उच्च स्तर के रूप में डेटा पर लेबल इसे एक्सेस करते हैं (डेटा "शीर्ष सुरक्षा" की ओर माइग्रेट करता है)।
Clark-Wilson मॉडल बहुत खुले हैं; वे इनवेरिएंट्स और नियमों को शामिल करते हैं ताकि यह सुनिश्चित किया जा सके कि प्रत्येक राज्य संक्रमण इनवेरिएंट का उल्लंघन नहीं करता है। (यह double-entry accounting जितना आसान हो सकता है या HIPPA के रूप में जटिल हो सकता है।) डेटाबेस लेनदेन और बाधाओं को सोचें।
मैट बिशप की "कंप्यूटर सुरक्षा: कला और विज्ञान" निश्चित रूप से पढ़ने योग्य है यदि आप प्रकाशित मॉडलों पर अधिक गहराई चाहते हैं।
मैं RBAC पसंद करता हूं। हालांकि, आप इसे ACL के समान ही पा सकते हैं, लेकिन वे differ semantically हैं।
- 1. एक अनुमति प्रणाली को डिजाइन करने का सर्वोत्तम अभ्यास
- 2. मॉडलिंग परियोजना
- 3. एक अच्छा डेटाबेस मॉडलिंग उपकरण?
- 4. आरईएसटी एपीआई मॉडलिंग टूल
- 5. एक श्रेणी में एक नोड मॉडलिंग
- 6. मॉडलिंग पसंदीदा
- 7. मेवेन "मॉडलिंग"
- 8. ऑब्जेक्टिव-सी और यूएमएल मॉडलिंग
- 9. अनुमति प्रणाली बनाने का प्रभावी तरीका क्या है?
- 10. एक अनुशंसा प्रणाली
- 11. मॉडलिंग पदानुक्रमित डेटा - GAE
- 12. एक फुटबॉल क्षेत्र पर मानव चलाना मॉडलिंग
- 13. मॉडलिंग "मैं एक * हूं लेकिन मैं भी ** **
- 14. एक से शून्य या एक रिश्तों को मॉडलिंग (जेड कार्डिनालिटी)
- 15. मैलेट विषय मॉडलिंग
- 16. डेटाबेस में मुद्रा मॉडलिंग
- 17. मॉडलिंग एनएचबेर्नेट क्वेरी
- 18. डेटाबेस में मॉडलिंग विरासत
- 19. विजुअल स्टूडियो मॉडलिंग प्रोजेक्ट
- 20. डोमेन मॉडलिंग, डीडीडी
- 21. एलडीएपी मॉडलिंग सर्वोत्तम अभ्यास
- 22. एजेंट-आधारित मॉडलिंग संसाधन
- 23. मॉडलिंग: एक्सएमएल बनाम रिलेशनल डाटाबेस
- 24. एक अधिसूचना प्रणाली का निर्माण
- 25. एक सुरक्षित PHP लॉगिन प्रणाली कैसे बनाएं, "मुझे लॉग इन रखें" कार्यक्षमता की अनुमति दें?
- 26. सिम्फनी 2 के साथ निम्न की तरह एक अनुमति प्रणाली कैसे बनाएं?
- 27. एक सीआईवीपीओएन को एक यूआईवीवी समन्वय प्रणाली से एक कैलियर समन्वय प्रणाली
- 28. प्रदर्शन मापों का मॉडलिंग वितरण
- 29. कॉचबेस डेटा मॉडलिंग - दस्तावेज़ उन्मुख
- 30. मॉडलिंग-रीराइटिट ट्रेलिंग स्लैश इश्यू
उत्कृष्ट उत्तर। दिलचस्प पढ़ा। मैं सोच रहा हूं कि यह बेहद सरल है, लेकिन असामान्य नहीं है, सिस्टम आपकी सूची में फिट बैठता है: "डिफ़ॉल्ट रूप से, मेहमानों के पास स्तर 0 होता है, पंजीकृत उपयोगकर्ताओं के स्तर 5 होते हैं, sys admins के स्तर 9 होते हैं। प्रत्येक क्रिया में इसके साथ एक स्तर होता है, और केवल उस स्तर या उच्चतर पर किसी के द्वारा किया जा सकता है। " – Oddthinking
@ ओडिथिंकिंग, वह साधारण मॉडल कई में हो सकता है :) लेकिन सबसे आसान 'मैच' रिंग मॉडल है। जैसा कि x86 में कार्यान्वित किया गया है, इसमें आपके स्तर के रूप में चार स्तर हैं, और प्रत्येक जोड़ों को जोड़ता है जो केवल उस स्तर या उच्च स्तर के द्वारा किया जा सकता है। (आप उन्हें क्या नाम देते हैं एक ऑर्थोगोनल मुद्दा है।) मैं आसानी से इस उदाहरण के एसीएल, क्षमता, जाली, बीएलपी, और TE कार्यान्वयन की कल्पना भी कर सकता हूं। अगर मैं इस मॉडल को भी लागू कर सकता हूं तो मुझे आश्चर्य नहीं होगा; लेकिन सादगी एक अच्छा गुण है। :) – sarnold
@ फ्रैंक, धन्यवाद! मेरी वर्तनी अचूक है, कैच के लिए धन्यवाद। – sarnold