अधिकांश यूनिक्स सिस्टम उपयोगकर्ताओं को "दूर" फाइलें देने से रोकते हैं, अर्थात, उपयोगकर्ता केवल तभी चला सकते हैं chown
यदि उनके पास लक्षित उपयोगकर्ता और समूह विशेषाधिकार हैं। चूंकि chown
फ़ाइल के मालिक होने या रूट होने की आवश्यकता होती है (उपयोगकर्ता कभी भी अन्य उपयोगकर्ताओं की फ़ाइलों को उपयुक्त नहीं कर सकते हैं), केवल रूट chown
किसी फ़ाइल के स्वामी को दूसरे उपयोगकर्ता को बदलने के लिए चला सकता है ।
इस प्रतिबंध का कारण यह है कि किसी अन्य उपयोगकर्ता को एक फ़ाइल देने से बुरी चीजें असामान्य रूप से हो सकती हैं, लेकिन फिर भी महत्वपूर्ण स्थिति। उदाहरण के लिए:
- यदि किसी सिस्टम में डिस्क कोटा सक्षम है, तो ऐलिस एक डायरेक्ट्री के तहत एक विश्व-लेखन योग्य फ़ाइल बना सकता है जो केवल उसके द्वारा सुलभ है (इसलिए कोई भी उस विश्व-योग्य फ़ाइल तक नहीं पहुंच सकता है), और फिर
chown
उस फ़ाइल को किसी अन्य उपयोगकर्ता के बिल के स्वामित्व में चलाने के लिए। फ़ाइल तब बिल की डिस्क कोटा के तहत गिना जाएगा भले ही केवल ऐलिस फ़ाइल का उपयोग कर सकता है।
- यदि ऐलिस बिल के लिए एक फ़ाइल देता है, तो कोई भी निशान नहीं है कि बिल ने उस फ़ाइल को नहीं बनाया है। यह समस्या हो सकती है यदि फ़ाइल में अवैध या अन्यथा डेटा शामिल है।
- कुछ कार्यक्रमों के लिए अनुरोध करने के लिए उनकी इनपुट फ़ाइल किसी विशेष उपयोगकर्ता से संबंधित होती है (उदाहरण के लिए, फ़ाइल में कुछ निर्देश होते हैं जो प्रोग्राम उस उपयोगकर्ता की ओर से करेगा)। यह आमतौर पर एक सुरक्षित डिजाइन नहीं है, क्योंकि भले ही बिल ने एक फाइल बनाई है जिसमें सिंटैक्टिक रूप से सही निर्देश हैं, वह इस विशेष समय में उन्हें निष्पादित करने का इरादा नहीं कर सकता है। फिर भी, ऐलिस को मनमाने ढंग से सामग्री के साथ एक फ़ाइल बनाने की अनुमति देता है और इसे बिल से इनपुट के रूप में लिया जाता है, इससे चीजें खराब हो सकती हैं।