MySQL पासवर्ड रोटेशन: किसी अन्य उपयोगकर्ता पासवर्ड को बदलने के लिए एकल उपयोगकर्ता का उपयोग करना
मैं वर्तमान में AWS अरोरा / MySQL आधारित एप्लिकेशन के लिए एक पासवर्ड रोटेशन रणनीति स्थापित करने पर काम कर रहा हूं।
मेरी योजना इस तरह की रणनीति का उपयोग करने की थी ...
- अनुप्रयोग उपयोगकर्ता नाम / पासवर्ड एडब्ल्यूएस एसएसएम एन्क्रिप्टेड मापदंडों में संग्रहीत।
- एप्लिकेशन सर्वर के पास SSM से केवल अपनी क्रेडेंशियल प्राप्त करने के लिए एक्सेस है। पर्यावरण द्वारा प्रतिबंधित (मंचन, उत्पादन आदि)
- लाम्बा ने समय-समय पर MySQL में पासवर्ड बदलने और SSM में नए मूल्यों को संग्रहीत करने के लिए कॉन्फ़िगर किया है। लैम्ब्डा एक पासवर्ड का उपयोग करने के बजाय AWS IAM भूमिकाओं का उपयोग कर डेटाबेस के साथ प्रमाणित करने के लिए।
अंतिम बिट वह है जिसके बारे में मुझे यकीन नहीं है। इस कॉन्फ़िगरेशन को अन्य एप्लिकेशन उपयोगकर्ताओं के लिए पासवर्ड बदलने की अनुमति देने के लिए लंबर भूमिका / उपयोगकर्ता की आवश्यकता होगी।
क्या सुरक्षा के नजरिए से यह एक उचित तरीका है? चूंकि लैम्ब्डा mysql उपयोगकर्ता पासवर्ड के बजाय एक IAM भूमिका का उपयोग करेगा, इसलिए इसे केवल अधिकृत भूमिकाओं के लिए उपयोग करना चाहिए।
विकल्प यह होगा कि लॉगिन करने के लिए लैम्ब्डा के लिए एक विशेष डीबी उपयोगकर्ता नहीं होगा, बल्कि लैम्ब्डा फ़ंक्शन के लिए प्रत्येक उपयोगकर्ता को एसएसएम से क्रेडेंशियल्स पुनर्प्राप्त करें, और फिर पासवर्ड बदलने के लिए प्रत्येक उपयोगकर्ता के रूप में लॉगिन करें।
किसी भी तरह से लैम्ब्डा को प्रत्येक उपयोगकर्ता तक पहुंचने की आवश्यकता है।
मान लें कि मैं MySQL में "lambda_user" तक पहुंच को सावधानी से प्राप्त कर सकता हूं, क्या कोई अन्य उपयोगकर्ता के पासवर्ड बदलने का अधिकार रखने वाले उपयोगकर्ता के साथ कोई अन्य चकाचौंध मुद्दे हैं?
इसके अलावा, केवल स्पष्ट करने के लिए, ये एप्लिकेशन उपयोगकर्ता हैं, न कि नियमित मानव प्रकार के उपयोगकर्ता जो इन क्रेडेंशियल्स का उपयोग कर रहे हैं।
जवाब
यह ऐसा करने का सबसे अच्छा तरीका है, ठीक उसी तरह से जिस तरह से आप इसकी रूपरेखा तैयार करते हैं। लैम्बडा को क्रेडेंशियल्स के बजाय प्रमाणीकरण के लिए एक भूमिका का उपयोग करके, आप अपने आसपास रखे जाने वाले रहस्यों की संख्या को कम करते हैं, जो निश्चित रूप से एक अच्छी बात है। केवल 2 चीजें इंगित करने लायक हैं:
अब आप क्लाउडफ़ॉर्मेशन का उपयोग केवल इसके लिए एक विशेष उद्देश्य लैम्ब्डा के प्रावधान और तैनाती को स्वचालित करने के लिए कर सकते हैं। परिणामस्वरूप आप सापेक्ष सहजता से ऐसा कर सकते हैं। मैं व्यक्तिगत रूप से CloudFormation का बहुत बड़ा प्रशंसक नहीं हूँ, लेकिन मैं इसे यहाँ वैसे भी प्रयोग करूँगा।
मेटाडेटा V2 के समापन बिंदुओं पर स्विच करने से आपके बुनियादी ढांचे में एसएसआरएफ के साथ-साथ ब्रेक-इन के अन्य रूपों से कुछ अतिरिक्त सुरक्षा मिल सकती है, हालांकि यह उपयोग-मामले में बहुत प्रासंगिक नहीं होगा।