सुरक्षा
रन उपयोगकर्ता
सुझाव है कि रन उपयोगकर्ता को कम अनुमति वाले उपयोगकर्ता के रूप में सेट करें, जैसे कि nginx रन उपयोगकर्ता के समान। रन उपयोगकर्ता को config/server.php
में user
और group
के तहत सेट किया गया है। इसी तरह, कस्टम प्रोसेस के उपयोगकर्ता को config/process.php
में user
और group
द्वारा निर्दिष्ट किया जाता है। ध्यान देने योग्य बात यह है कि monitor प्रक्रिया के लिए रन उपयोगकर्ता सेट नहीं करना चाहिए, क्योंकि इसे सही तरीके से काम करने के लिए उच्च अनुमति की आवश्यकता होती है।
नियंत्रणक मानक
controller
निर्देशिका या उपनिर्देशिका में केवल नियंत्रणक फ़ाइलें होनी चाहिए, अन्य वर्ग फ़ाइलें रखना प्रतिबंधित है, अन्यथा यदि नियंत्रणक सूचक सक्षम नहीं है, तो वर्ग फ़ाइलों को URL द्वारा अवैध रूप से पहुंचा जा सकता है, जिससे अनपरिचित परिणाम हो सकते हैं। उदाहरण के लिए, app/controller/model/User.php
वास्तव में Model वर्ग है, लेकिन इसे गलत तरीके से controller
निर्देशिका में रखा गया है; यदि नियंत्रणक सूचक सक्षम नहीं है, तो उपयोगकर्ता User.php
में किसी भी विधि को /model/user/xxx
के समान पहुंचा सकता है। इस स्थिति को पूरी तरह से समाप्त करने के लिए, यह सिफारिश की जाती है कि नियंत्रणक सूचक का उपयोग करके स्पष्ट रूप से संकेतित करें कि कौन सी फ़ाइलें नियंत्रणक हैं।
XSS फ़िल्ट्रेशन
सामान्यता को ध्यान में रखते हुए, webman ने अनुरोधों पर XSS इन्हित करना नहीं किया है। webman सिफारिश करता है कि XSS को रेंडर करते समय इन्हित किया जाए, न कि डेटाबेस में डालने से पहले। और twig, blade, think-template जैसे टेम्पलेट्स स्वचालित रूप से XSS इन्हित करेंगे, इसलिए मैनुअल रूप से इन्हित करने की आवश्यकता नहीं है, यह बहुत सुविधाजनक है।
सूचना
यदि आप डेटाबेस में डालने से पहले XSS को इन्हित करते हैं, तो यह कुछ ऐप प्लगइनों के साथ असंगतता के मुद्दे पैदा कर सकता है।
SQL इंजेक्शन से रोकें
SQL इंजेक्शन से बचने के लिए, कृपया ORM का उपयोग करें, जैसे कि illuminate/database, think-orm; उपयोग करते समय SQL को स्वयं न बनाएं।
nginx प्रॉक्सी
जब आपके ऐप को बाहरी उपयोगकर्ताओं के लिए उजागर करना आवश्यक हो, तो webman के सामने nginx प्रॉक्सी जोड़ने की सिफारिश की जाती है, ताकि कुछ अवैध HTTP अनुरोधों को फ़िल्टर किया जा सके और सुरक्षा में सुधार हो सके। कृपया nginx प्रॉक्सी के बारे में विस्तृत जानकारी देखें।