من از پايتون و جنگو براي ايجاد برنامه هاي وب استفاده مي كنم ، كه ما آنها را در كنترل منبع ذخيره مي كنيم. نحوه تنظيم django به طور معمول ، كلمه عبور ها به متن ساده درون رمزهاي عبور قرار مي گيرند.
ذخيره رمز عبور من به متن ساده ، من را در بسياري از مسائل امنيتي باز خواهد كرد ، به خصوص به دليل اينكه اين يك پروژه منبع باز است و كد منبع من با نسخه كنترل شده (از طريق GIT ، از طريق Github ، براي كل جهان
سؤال اين است ، بهترين نوشتن يك فايل تنظيمات. در يك محيط توسعه Django / Python چه عملي خواهد بود؟
اگرچه من در Staxhoverflow به برخي از پايتون هاي خاص نرسيدم ، وب سايتي را يافتم كه اثربخش باشد و فكر
مي كند كه راه حل را با بقيه جامعه به اشتراك مي گذارم.
راه حل: متغيرهاي محيطي
توجه: گرچه متغيرهاي محيط در جهان Linux / Unix / OS X و Windows مشابه هستند ، اما من اين كد را در دستگاه ويندوز آزمايش نكرده ام. لطفا به من اطلاع دهيد اگر اين كار مي كند.
اگرچه متغيرهاي محيطي براي تنظيمات زيادي مناسب هستند ، اما نگه داشتن پسورد در محيط محيط بي خطر نيست ، با اين گزينه كه يك پرونده پيكربندي خارج از كنترل نسخه اختياري داريد ، در اينجا فاجعه هاي مختلفي وجود دارد:
متغيرهاي محيط ممكن است به طور تصادفي فاش شوند (از طريق كانال هاي اشكال زدايي كه مي توانند از طريق متن ساده ، كاربر نهايي يا مكانهاي غير منتظره در يك سيستم پرونده اي مانند ~ /.* sh_history منتقل شوند).
پرونده هاي پيكربندي را مي توان به اشتباه به كنترل نسخه اضافه كرد و ممكن است در دسترس افراد بدون هيچ گونه حقوقي در مخزن باشد.
براي استدلال بيشتر ، متن وبلاگ متغيرهاي محيط را مضر براي حفظ حريم خصوصي شما بخوانيد: محيط از كل فرآيند در دسترس است ، براي فرآيندهاي كودك (و احتمالاً شخص ثالث) به ارث مي رسد ، و توسعه دهندگان خارجي براي درمان مسائل محيط زيست محرمانه است زيرا هيچ فرض روشني بين آن وجود ندارد
ساده ترين قالب پيكربندي فايل در پايتون فقط يك ماژول پايتون است.