2007 में पेश किया गया और 2012 तक आवश्यक हो गया, सैंडबॉक्सिंग macOS द्वारा उपयोग किया जाने वाला एक उपकरण है जो उस नुकसान को सीमित करने के लिए है जो एक अपहृत ऐप कर सकता है। ऐप्पल का कहना है, "जबकि ऐप सैंडबॉक्स आपके ऐप के खिलाफ हमलों को नहीं रोकता है, यह एक सफल व्यक्ति के नुकसान को कम करता है। macOS ऐप सैंडबॉक्सिंग किसी एप्लिकेशन के कारण होने वाली परेशानी को सीमित करके उपयोगकर्ताओं की सुरक्षा करती है।
macOS ऐप सैंडबॉक्सिंग क्या है?
प्रत्येक ऐप को खेलने के लिए अपना क्षेत्र मिलता है:एक "सैंडबॉक्स।" यदि एप्लिकेशन अपने सैंडबॉक्स के बाहर पहुंचना चाहता है, तो उसे अनुमति के लिए ऑपरेटिंग सिस्टम से पूछना होगा। सैंडबॉक्स सेटिंग्स के आधार पर, ओएस अनुरोध को पूरा करने के लिए कम से कम विशिष्ट जानकारी प्रदान करते हुए या तो आवेदन के अनुरोध को अस्वीकार या स्वीकृत करेगा।
एक कार के बारे में सोचो। ड्राइवर को कई सुरक्षा विशेषताओं जैसे एंटी-लॉक ब्रेक, एयर बैग, क्रम्पल ज़ोन, और बहुत कुछ द्वारा संरक्षित किया जाता है। 2007 में, ऐप सैंडबॉक्सिंग की शुरूआत के समय, कोई समान कंप्यूटर सिस्टम मौजूद नहीं था। जैसा कि परिचयात्मक प्रस्तुति में पूछा गया, कंप्यूटर के लिए सीट बेल्ट कहाँ थे? सैंडबॉक्सिंग उपयोगकर्ताओं की सुरक्षा करती है जैसे कार उनके ड्राइवरों की रक्षा करती है:क्षति-घटाने वाली प्रणालियों के साथ विफलताओं को पूरा करना। चाहे दुर्भावनापूर्ण गतिविधि या कोडिंग त्रुटियों के कारण, क्षति कम हो जाती है।
क्योंकि सैंडबॉक्सिंग सीमित करता है कि ऐप्स क्या कर सकते हैं, यह डेवलपर की स्वतंत्रता को प्रतिबंधित कर सकता है। सैंडबॉक्स ऐप्स अधिक धीमी गति से चलते हैं और विकसित होने में अधिक समय लेते हैं। मैक की विशाल क्षमता के लिए धन्यवाद, सैंडबॉक्स सीमाएं विभिन्न ऐप्स की संगतता पर भारी प्रभाव डाल सकती हैं। नतीजतन, पावर उपयोगकर्ताओं को अक्सर प्रदर्शन या फीचर समस्याओं के लिए सैंडबॉक्स के बाहर चलने वाले ऐप्स चुनने के लिए प्रेरित किया जाता है।
ऐप्लिकेशन सैंडबॉक्सिंग कैसे काम करता है?
सैंडबॉक्सिंग कम से कम विशेषाधिकार के सिद्धांत पर आधारित है। संक्षेप में, सिस्टम वह कर सकते हैं जो उन्हें करने की आवश्यकता है लेकिन अब और नहीं। सिस्टम के प्रत्येक भाग को केवल उसके घोषित लक्ष्य को पूरा करने तक सीमित करके, आप अपने ऐप के अपहृत होने की संभावना को कम करते हैं। उदाहरण के लिए, फ्लैशलाइट ऐप के पास आपकी संपर्क सूची तक पहुंचने का कोई कारण नहीं है।
ऐप्स अपने सैंडबॉक्स के बाहर पहुंच सकते हैं लेकिन केवल ऑपरेटिंग सिस्टम की अनुमति के साथ। macOS में "सेव एंड ओपन" डायलॉग बॉक्स लें। ऐप, अपने सैंडबॉक्स के अंदर, सीधे आपकी हार्ड ड्राइव पर फाइल सिस्टम संसाधनों तक नहीं पहुंच सकता है। उदाहरण के लिए, यह "~/दस्तावेज़" पर एक खुला पैनल नहीं बना सकता। इसके बजाय, ऐप को NSOpenPanel
. के साथ Powerbox API से पूछना चाहिए और NSSavePanel
पैनल तक पहुंचने के लिए कक्षाएं।
एप्लिकेशन सीधे पावरबॉक्स के अंदर क्या हो रहा है यह नहीं देख सकता है। केवल खोली गई या सहेजी गई फ़ाइल ही ऐप के लिए सुलभ होगी। इस तरह ऐप्स अनावश्यक जोखिम के बिना महत्वपूर्ण कार्य कर सकते हैं।
वह कार्यक्षमता एक एंटाइटेलमेंट (विशेष रूप से com.apple.security.files.user-selected.read-write
द्वारा सक्षम है। ) ऐप डेवलपर एंटाइटेलमेंट सेट करते हैं जो घोषित करते हैं कि ऐप क्या करता है। घोषित एंटाइटेलमेंट के आधार पर, ऑपरेटिंग सिस्टम एप्लिकेशन को उचित रूप से सीमित स्तर की कार्यक्षमता की अनुमति देता है।
यह विचार प्रक्रिया ऐप सैंडबॉक्सिंग मॉडल और तंत्र की संपूर्णता को रेखांकित करती है:ऐप्स को इरादे की घोषणा करनी चाहिए और किसी खतरनाक काम को पूरा करने के लिए OS-स्तर के बॉस से अनुमति लेनी चाहिए।
सैंडबॉक्स वाले ऐप्स बनाम गैर-सैंडबॉक्स वाले ऐप्स
1 जून 2012 से, मैक ऐप स्टोर के माध्यम से वितरित सभी तृतीय-पक्ष एप्लिकेशन को सैंडबॉक्स किया जाना चाहिए। जबकि सैंडबॉक्सिंग ऐप कार्यक्षमता की एक बड़ी रेंज की अनुमति देता है, आप पाएंगे कि मैक ऐप स्टोर ऐप अक्सर उनके गैर-सैंडबॉक्स वाले घटकों की तुलना में अधिक सीमित होते हैं। कुछ डेवलपर्स दो संस्करण भी बनाए रखते हैं:सीधे डाउनलोड के लिए एक पूरी तरह से चित्रित ऐप और मैक ऐप स्टोर के लिए एक जिम्प्ड संस्करण। सैंडबॉक्स विकास की अधिक जटिलता के लिए धन्यवाद, किसी एप्लिकेशन में नई कार्यक्षमता जोड़ना अधिक कठिन है - यदि उस कार्यक्षमता को OS द्वारा भी अनुमति दी गई है, अर्थात।
जबकि सैंडबॉक्स वाले ऐप्स मैक ऐप स्टोर वितरण का लाभ प्राप्त कर सकते हैं, आप अनुमान लगा सकते हैं कि हम कितना मूल्यवान सोचते हैं। सैंडबॉक्सिंग को सुरक्षा अनुमतियों के साथ भी बढ़ाया जा सकता है। जबकि कोई ऐप स्वयं के लिए एक्सेसिबिलिटी अनुमतियों को चालू नहीं कर सकता है, यह उपयोगकर्ता को ऐसा करने के लिए कह सकता है।
यह देखने के लिए कि आपके कौन से ऐप्स सैंडबॉक्स हैं, गतिविधि मॉनिटर खोलें, और विंडो में "सैंडबॉक्स" जोड़ने के लिए कॉलम शीर्षक पर राइट-क्लिक करें।
कुछ ऐप्स ऐसे हैं जो कभी भी सैंडबॉक्स में मौजूद नहीं हो सकते हैं। वास्तव में, विभिन्न प्रकार के मूल्यवान उपयोग के मामलों को सैंडबॉक्सिंग द्वारा रोका जाता है। सैंडबॉक्सिंग इंटर-एप्लिकेशन संचार, अवलोकन या संशोधन को रोकता है, जिससे एप्लिकेशन कैसे इंटरैक्ट कर सकते हैं, इसे महत्वपूर्ण रूप से सीमित कर देता है। TextExpander जैसे सिस्टम-व्यापी शॉर्टकट पूरी तरह से प्रतिबंधित हैं, क्योंकि उस स्तर की कार्यक्षमता को सैंडबॉक्स द्वारा अनुमति दी जा सकती है।
निष्कर्ष
वादा करते हुए, macOS ऐप सैंडबॉक्सिंग को अच्छी तरह से निष्पादित नहीं किया गया था। इसने मैक ऐप्स के अद्वितीय विक्रय बिंदुओं को सीमित कर दिया, जैसे गति और उन्नत कार्यक्षमता। सैंडबॉक्स के बाहर चलने वाले ऐप्स लगभग हमेशा अधिक सक्षम और तेज़ होते हैं। इस शक्ति उपयोगकर्ता के दृष्टिकोण से, मेरे सबसे अधिक उपयोग किए जाने वाले ऐप्स गैर-सैंडबॉक्स वाले हैं। TextExpander, SnagIt, और TotalFinder जैसे ऐप्स मेरे दैनिक कार्य के लिए महत्वपूर्ण हैं। इसी तरह के व्यापक परिहार से बचने के लिए, भविष्य की सुरक्षा प्रणालियों को लचीलेपन और पारदर्शिता के साथ संतुलित शक्ति की आवश्यकता होती है।