2013-05-25 4 views
9

मैंने रेल आवेदन सुरक्षा के साथ मेरी सहायता के लिए ब्रैकमेन मणि का नवीनतम संस्करण स्थापित किया है।रेल पर रूबी 3.2.13 - ब्रैकमेन - सत्र रहस्य को संस्करण नियंत्रण में शामिल नहीं किया जाना चाहिए

मेरे पास कई रेल अनुप्रयोग हैं जो मेरे पास दो सर्वर हैं, एक विकास के लिए और दूसरे उत्पादन के लिए। जब मैंने अपने अनुप्रयोगों पर ब्रैकमेन रिपोर्ट चलायी, तो उनमें से अधिकतर निम्नलिखित उच्च सुरक्षा भेद्यता के साथ कॉन्फ़िगर/प्रारंभकर्ता/secret_token.rb ध्वजांकित हुए।

Session secret should not be included in version control near line 7 

यह पहली बार है जब मैंने इस त्रुटि को देखा है क्योंकि मैंने महीने पहले ब्रैकमेन का पुराना संस्करण चलाया था।

जो मैंने अभी तक शोध किया है उससे रेल ने स्वचालित रूप से गुप्त टोकन जेनरेट किया है जब रेल नए ऐपनाम निष्पादित किया गया है। मुझे अब तक इसके बारे में पता नहीं था। स्पष्ट रूप से रेल इस फ़ाइल की रक्षा नहीं करते हैं, जहां मैंने अपने किसी भी एप्लिकेशन को गिथब में स्थानांतरित करने का निर्णय लिया है, तो जानकारी गिटूब में किसी भी व्यक्ति को एप्लिकेशन तक पहुंचने के लिए उपलब्ध होगी। इस समय मैं गिटहब पर अपलोड नहीं कर रहा हूं लेकिन मुझे अपने अनुप्रयोगों में सुरक्षा छेद को बंद करने के लिए config_ startoken/secure_token.rb से safe_token को स्थानांतरित करने के बारे में जानकारी चाहिए।

एक ब्लॉग पोस्ट मैंने पढ़ा है कि मैंने एक एनएनवी चर में गुप्त टोकन इंजेक्ट किया है। विन्यास/startizers/secret_token.rb से config/environment.rb को कथन को हल करने से समस्या हल हो जाएगी? यदि ऐसा है तो मैं इस कार्य को रेल विकास में कार्यों की अपनी सूची में जोड़ दूंगा।

किसी भी मदद की सराहना की जाएगी।

उत्तर

12

ब्रैकमैन में उस विशेष संदेश को मेरे लिए चुप कर दिया गया था जब मैंने उल्लेख किया था कि ENV चर में गुप्त जानकारी डाल दी गई है। निजी तौर पर, मैं इसके लिए Figaro मणि का उपयोग करना चाहता हूं, लेकिन मुझे लगता है कि dotenv भी लोकप्रिय है।

कुछ अन्य संसाधनों है कि आप इस के बारे में करने के लिए रुचि का हो सकता है:

+1

एनवी वैरिएबल के बारे में मैंने जो सुझाव दिया है वह कोड क्लाइमेट ब्लॉग पोस्ट से आया था। मैंने अपना प्रश्न पोस्ट करने से पहले इसे पढ़ा। मुझे यकीन नहीं था कि जब मैंने अपना प्रश्न पोस्ट किया तो इसे एनएनवी वैरिएबल कैसे बनाया जाए। हालांकि जब मैंने पर्यावरण पर नजर डाली। आरबी मैंने देखा कि कथन प्रारूप समान थे। इसलिए मैंने कथन को गुप्त_टोकन से स्थानांतरित कर दिया। संदेश गायब हो गया। मेरे पास मेरे बुकमार्क में कोड क्लाइमेट ब्लॉग पोस्ट है। मैं फिगारो को देखूंगा जो मैंने पिछली खोजों में देखा था। मैं dotenv भी देखेंगे। –

+5

यदि पर्यावरण स्रोत आपके स्रोत नियंत्रण में संग्रहीत है, तो यह secret_token.rb से अधिक सुरक्षित नहीं है। – Justin

1

मुझे यकीन नहीं है कि एक अलग फ़ाइल में सत्र गुप्त कैसे चल रहा है इससे कोई फर्क पड़ता है। अनिवार्य रूप से, गुप्त टोकन को सिर्फ पासवर्ड की तरह माना जाना चाहिए।

This blog post from Phusion समय पर तैनाती सत्र सत्र प्रदान करने के लिए कुछ अलग-अलग विकल्पों की पड़ताल करता है।

+0

मैं इस पढ़ा मेरे प्रश्न पूछने से पहले पोस्ट करें। उन्होंने पैचिंग रेल के साथ विकल्प 2 का सुझाव दिया। कई विकल्पों का मानना ​​है कि आप Capistrano का उपयोग कर रहे हैं। मैं इसका उपयोग नहीं कर रहा हूँ। मैं अभी भी सुरक्षा के संबंध में रेल के बारे में चीजें सीख रहा हूं। दुर्भाग्यवश ब्लॉग पोस्ट में बहुत सारी जानकारी है जिसे मैं परिचित नहीं हूं। –

संबंधित मुद्दे