file permissions
को passthru()
या exec()
के माध्यम से ऑपरेटिंग सिस्टम विशिष्ट कमांड चलाने के बिना मैं file permissions
कैसे देख सकता हूं?फ़ाइल अनुमतियां जांचें
उत्तर
उपयोग fileperms() समारोह
clearstatcache();
echo substr(sprintf('%o', fileperms('/etc/passwd')), -4);
फ़ाइल अनुमतियों की जांच करके आप क्या करना चाहते हैं?
सुरक्षित कोड लिखते समय, "हमेशा जांचें, फिर करें" कुछ भी गलत है। इसका कारण यह है कि जांच के बीच कि आप कुछ कर सकते हैं और वास्तव में ऐसा कर सकते हैं, सिस्टम की स्थिति इस तरह बदल सकती है कि ऐसा करने से अलग परिणाम होगा।
उदाहरण के लिए, यदि आप जांचते हैं कि फ़ाइल लिखने से पहले कोई फ़ाइल मौजूद है या नहीं, तो जांचें कि आपने फ़ाइल को सफलतापूर्वक लिखा है या विस्तृत विवरण में चेक नहीं किया है), और बाद में सामग्री की सामग्री पर निर्भर करता है आपके द्वारा लिखी गई फ़ाइल, आप वास्तव में किसी हमलावर द्वारा लिखी गई फ़ाइल पढ़ सकते हैं।
तो फ़ाइल अनुमतियों की जांच करने के बजाय, अनुमतियाँ सफल होने पर त्रुटियों को संभालने के लिए बस जो कुछ भी किया जा रहा था, वही करें।
आप is_readable(), is_executable() आदि का उपयोग कर सकते हैं .. आदेश।
ध्यान रखें कि is_writable() समूह सदस्यता (PHP 5.5.18 के रूप में) की जांच नहीं करता है। – cgeisel
उपयोग fileperms() समारोह और सबस्ट्रिंग:
substr(decoct(fileperms(__DIR__)), -4); // 0777
substr(decoct(fileperms(__DIR__)), -3); // 777
फ़ाइल के लिए:
substr(decoct(fileperms(__FILE__)), -4); // 0644
substr(decoct(fileperms(__FILE__)), -3); // 644
बदलें __FILE__
और __DIR__
अपना रास्ता या चर
रियल कोडर बिटवाइज़ संचालन, नहीं तार का उपयोग करें;) यह बहुत अधिक सुरुचिपूर्ण हैंडलिंग अनुमतियों के तरीका है:
function checkPerms($path)
{
clearstatcache(null, $path);
return decoct(fileperms($path) & 0777);
}
यह वापसी, सच/गलत क्या है? – Sam
- 1. सी # फ़ाइल/निर्देशिका अनुमतियां
- 2. एमएसआई इंस्टॉलर फ़ाइल/फ़ोल्डर अनुमतियां
- 3. विजुअल स्टूडियो आउटपुट फ़ाइल अनुमतियां?
- 4. setup.py फ़ाइल में फ़ाइल अनुमतियां सेट करें
- 5. गिट तैनाती प्रोजेक्ट - फ़ाइल अनुमतियां - (chmod)
- 6. धागे के लिए जावा फ़ाइल अनुमतियां
- 7. सबवर्जन रिपोजिटरी में फ़ाइल अनुमतियां संग्रहीत करना
- 8. जांचें कि फ़ाइल ksh
- 9. जांचें कि फ़ाइल
- 10. जांचें कि फ़ाइल php
- 11. जांचें कि फ़ाइल
- 12. जांचें कि बैच फ़ाइल
- 13. जांचें कि फ़ाइल पाइथन
- 14. बैकअप अनुमतियां
- 15. अनुमतियां डिजाइन
- 16. जावा ऐप्पल अनुमतियां
- 17. अमेज़ॅन एस 3 अनुमतियां
- 18. NSFileManager - फ़ाइल का आकार जांचें?
- 19. जांचें कि कोई फ़ाइल वाइल्डकार्ड
- 20. जांचें कि फ़ाइल में पाइथन
- 21. जांचें कि कोई फ़ाइल Yii
- 22. एंड्रॉइड पर यूएसबी डिवाइस के लिए लिनक्स फ़ाइल अनुमतियां
- 23. जांच की जा रही फ़ाइल स्वामी की अनुमतियां
- 24. सी ++ - फ़ाइल अनुमतियां कैसे सेट करें (क्रॉस प्लेटफ़ॉर्म)
- 25. नेटबीन्स दूरस्थ फ़ाइल अनुमतियां। Netbeans के भीतर से chmod?
- 26. अभिलेखागार के अंदर फ़ाइल और फ़ोल्डर अनुमतियां बनाए रखें
- 27. मैं पर्ल से फ़ाइल अनुमतियां कैसे सेट कर सकता हूं?
- 28. विंडोज इवेंटलॉग अनुमतियां
- 29. SharePoint PowerShell साइट अनुमतियां
- 30. जावा हीप डंप अनुमतियां
वहाँ हमेशा अनुमतियों की जाँच, शायद वह फिक्सिंग अनुमतियों के लिए एक डेमॉन के निर्माण है के लिए संभव कारणों, जो नहीं करता है 'कर रहे हैं फाइलों को पढ़ने या लिखने के लिए अपनी लिपि पर निर्भर नहीं है क्योंकि एक अलग प्रक्रिया ऐसा करने जा रही है। –
एक और उदाहरण एक rewriteMap प्रोग्राम है जो कुछ फ़ाइल अनुमतियों के आधार पर गेट के रूप में कार्य करता है। – puk