लंबे समय तक चलने वाले credentials पाइपलाइन से बाहर ही रखें। workload identity federation इस्तेमाल करें ताकि CI job एक अल्पजीवी OIDC token के बदले scoped role ले सके, और एप्लिकेशन secrets build time पर डालने की जगह runtime पर secrets manager से खींचें। हर secret को एक एनवायरनमेंट और एक consumer तक सीमित रखें, अपने आप rotate करें, access का audit रखें, और logs में उन्हें mask करें। secrets को कभी images में न पकाएं और key management के बिना उन्हें encrypted रूप में भी commit न करें।
इंटरव्यूअर यह क्यों पूछते हैं
secret संभालना वह जगह है जहां तमाम ठीकठाक पाइपलाइनें चुपचाप audit में फेल हो जाती हैं। इंटरव्यूअर CI settings में चिपकाई गई static keys की तिजोरी नहीं, अल्पजीवी credentials पर बना आधुनिक जवाब सुनना चाहता है। वे यह भी देखना चाहते हैं कि आप पूरे lifecycle के बारे में सोचते हैं: distribution, rotation, revocation, और secret लीक होने पर क्या होता है, सिर्फ यह नहीं कि वह रखा कहां है।
अपना जवाब कैसे स्ट्रक्चर करें
- शुरुआत ही federated identity से लंबे समय वाले credentials हटाने से करें।
- build time और runtime की secret ज़रूरतें अलग करें।
- scoping, rotation और auditability कवर करें।
- बताएं कि कोई लीक हो जाए तो आप क्या करते हैं।
उदाहरण जवाब
मेरा शुरुआती रुख यह है कि पाइपलाइन के पास कोई भी लंबे समय तक चलने वाला cloud credential नहीं होना चाहिए। CI provider job के लिए एक signed identity token जारी करता है, cloud उस issuer पर भरोसा करता है, और job उसे बदलकर ऐसा role लेता है जो मिनटों तक चलता है और एक एनवायरनमेंट तक सीमित है। इससे वह पूरी श्रेणी मिट जाती है जिसमें कोई लीक हुई static key तीन साल तक रिपॉज़िटरी सेटिंग में पड़ी रहती है। एप्लिकेशन secrets अलग मामला हैं और उनकी जगह runtime है, जहां workload अपनी पहचान से secrets manager से उन्हें खींचता है, ताकि डेटाबेस पासवर्ड build से गुज़रे ही नहीं। अगर मुझे encrypted secrets git में रखने ही पड़ें, मसलन किसी GitOps रिपॉज़िटरी में, तो वे key management service के खिलाफ encrypted होते हैं, ताकि मैं असल में decryption का हक कंट्रोल कर रहा हूं, फाइल नहीं। सब कुछ कसकर scoped रहता है, तय समय पर rotate होता है, और access लॉग होता है। और मैं लीक के लिए तैयार रहता हूं: पहले revoke, फिर rotate, फिर audit trail से blast radius निकालो, क्योंकि revoke करने से पहले यह साबित करने बैठना कि किसी ने इस्तेमाल नहीं किया, उल्टा क्रम है।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- डेटाबेस credential को बिना downtime कैसे rotate करेंगे?
- एप्लिकेशन logs और crash dumps से secrets बाहर कैसे रखते हैं?
- GitOps रिपॉज़िटरी में secrets पर आपका तरीका क्या है?
DevOps इंजीनियर के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें