आप एक ऐसी प्रणाली कैसे बनाएंगे जो किसी एप्लिकेशन के अंदर कुछ कार्यों को करने के लिए अनुमतियों को संभालती है?
जवाबों:
सुरक्षा मॉडल अनुसंधान का एक बड़ा (और खुला) क्षेत्र है। सरल से लेकर, चुनने के लिए बहुत सारे मॉडल उपलब्ध हैं:
लैम्पसन के एक्सेस कंट्रोल मैट्रिक्स सिस्टम में प्रत्येक डोमेन ऑब्जेक्ट और प्रत्येक प्रिंसिपल को उन कार्यों के साथ सूचीबद्ध करता है, जो प्रिंसिपल को उस ऑब्जेक्ट पर प्रदर्शन करने की अनुमति है। यह बहुत ही क्रियात्मक है और अगर वास्तव में इस फैशन में लागू किया जाता है, तो बहुत स्मृति गहन।
एक्सेस कंट्रोल लिस्ट , लैम्पसन की मैट्रिक्स का एक सरलीकरण है: इसे विरल-मैट्रिक्स कार्यान्वयन के समान कुछ माना जाता है, जो ऑब्जेक्ट्स और प्रिंसिपलों और अनुमत कार्यों को सूचीबद्ध करता है, और लैम्पसन मैट्रिक्स से सभी "शून्य" प्रविष्टियों को एनकोड नहीं करता है। अभिगम नियंत्रण सूचियों में एक सुविधा के रूप में 'समूह' शामिल हो सकते हैं, और सूचियों को ऑब्जेक्ट के माध्यम से या प्रिंसिपल (कभी-कभी, प्रोग्राम के माध्यम से, AppArmor या TOMOYO या LIDS में ) के रूप में संग्रहीत किया जा सकता है ।
क्षमता प्रणालियाँ वस्तुओं के संदर्भ या सूचक होने के विचार पर आधारित होती हैं; एक प्रक्रिया में क्षमताओं के एक प्रारंभिक सेट तक पहुंच होती है, और सिस्टम पर अन्य वस्तुओं से उन्हें प्राप्त करके केवल अधिक क्षमताएं प्राप्त कर सकते हैं। यह बहुत दूर की आवाज़ लगती है, लेकिन यूनिक्स फाइल डिस्क्रिप्टर के बारे में सोचें: वे एक विशिष्ट ओपन फाइल के लिए एक अक्षम्य संदर्भ हैं, और फाइल डिस्क्रिप्टर को अन्य प्रक्रियाओं को सौंपा जा सकता है या नहीं। यदि आप डिस्क्रिप्टर को किसी अन्य प्रक्रिया में देते हैं, तो उस फ़ाइल तक पहुंच होगी। इस विचार के आसपास संपूर्ण ऑपरेटिंग सिस्टम लिखे गए थे। (सबसे प्रसिद्ध शायद KeyKOS और EROS हैं, लेकिन मुझे यकीन है कि यह एक बहस का मुद्दा है। :)
... अधिक जटिल के लिए, जिनके पास सुरक्षा लेबल ऑब्जेक्ट्स और प्रिंसिपलों को सौंपा गया है:
सुरक्षा के छल्ले , जैसे कि मल्टिक्स और x86 सीपीयू में कार्यान्वित किया जाता है, दूसरों के बीच, और प्रक्रियाओं को छल्ले के बीच संक्रमण करने की अनुमति देने के लिए सुरक्षा जाल या गेट प्रदान करते हैं; प्रत्येक रिंग में विशेषाधिकारों और वस्तुओं का एक अलग सेट होता है।
डेनिंग का जाली एक मॉडल है, जिसमें प्रिंसिपलों को बहुत ही पदानुक्रमित फैशन में किस सुरक्षा लेबल के साथ बातचीत करने की अनुमति है।
बेल-लाडुपुला डेनिंग के जाली के समान है, और नियमों को गलत स्तर तक शीर्ष गुप्त डेटा को लीक करने से रोकने के लिए नियम प्रदान करता है और सामान्य एक्सटेंशन सैन्य-शैली को बेहतर ढंग से समर्थन प्रदान करने के लिए आगे के डिब्बेकरण और वर्गीकरण प्रदान करते हैं।
Biba मॉडल 'अपने सिर पर बदल गया' बेल-LaPadula के समान है, लेकिन - बेल-LaPadula गोपनीयता पर ध्यान केंद्रित है, लेकिन अखंडता के लिए कुछ नहीं करता है, और Biba अखंडता पर ध्यान केंद्रित है, लेकिन गोपनीयता के लिए कुछ नहीं करता है। (बेल-लापैडुला किसी को सभी जासूसों की सूची को पढ़ने से रोकता है, लेकिन खुशी से किसी को भी इसमें कुछ भी लिखने की अनुमति देगा। बिबा खुशी से किसी को भी सभी जासूसों की सूची पढ़ने की अनुमति देगा, लेकिन लगभग सभी को इसमें लिखने के लिए मना किया।
टाइप एनफोर्समेंट (और इसका सिबलिंग, डोमेन टाइप एनफोर्समेंट) प्रिंसिपल और ऑब्जेक्ट पर लेबल प्रदान करता है, और अनुमत ऑब्जेक्ट-वर्ब-सब्जेक्ट (क्लास) टेबल को निर्दिष्ट करता है। यह परिचित SELinux और SMACK है।
.. और फिर कुछ ऐसे हैं जो समय बीतने को शामिल करते हैं:
चीनी दीवार को एक संगठन के भीतर कर्मचारियों को अलग करने के लिए व्यावसायिक सेटिंग्स में विकसित किया गया था जो किसी दिए गए बाजार में प्रतियोगियों को सेवाएं प्रदान करता है: उदाहरण के लिए, एक बार जॉनसन ने एक्सॉन-मोबिल खाते पर काम करना शुरू कर दिया है, उसे बीपी खाते तक पहुंच की अनुमति नहीं है। यदि जॉनसन ने पहले बीपी पर काम करना शुरू कर दिया था, तो उसे एक्सॉन-मोबिल के डेटा तक पहुंच से वंचित कर दिया जाएगा।
LOMAC और उच्च-वॉटरमार्क दो गतिशील दृष्टिकोण हैं: LOMAC प्रक्रियाओं के विशेषाधिकारों को संशोधित करता है क्योंकि वे डेटा के उत्तरोत्तर-उच्च स्तर तक पहुंचते हैं, और निम्न स्तर पर लिखने से मना करते हैं (प्रक्रियाएं "शीर्ष सुरक्षा की ओर पलायन करती हैं"), और उच्च-वाट लेबल पर संशोधन करती हैं डेटा उच्च स्तर की प्रक्रियाओं तक पहुँचता है (डेटा "शीर्ष सुरक्षा" की ओर पलायन करता है)।
क्लार्क-विल्सन मॉडल बहुत खुले-अंत वाले हैं; उनमें यह सुनिश्चित करने के लिए कि प्रत्येक राज्य संक्रमण हमलावरों का उल्लंघन नहीं करता है, आक्रमणकारी और नियम शामिल हैं। (यह दोहरे प्रविष्टि लेखांकन या HIPPA के रूप में जटिल के रूप में सरल हो सकता है ।) डेटाबेस लेनदेन और बाधाओं पर विचार करें।
मैट बिशप की "कंप्यूटर सुरक्षा: कला और विज्ञान" निश्चित रूप से पढ़ने लायक है यदि आप प्रकाशित मॉडल पर अधिक गहराई चाहते हैं।
मुझे आरबीएसी पसंद है । हालाँकि, आप इसे ACL के समान पा सकते हैं , लेकिन वे शब्दार्थ से भिन्न होते हैं ।