ठेकेदार की रिपॉज़िटरी पहुँच: सार्वजनिक प्रवेश या VPN मार्ग?
एक सीमित परियोजना के लिए ठेकेदार को एक निजी रिपॉज़िटरी चाहिए। प्रमाणित सार्वजनिक प्रवेश या सीमित VPN मार्ग चुनें, फिर रिपॉज़िटरी भूमिका को पहुँच की इकाई बनाएँ।
एक सीमित परियोजना के लिए ठेकेदार को एक निजी रिपॉज़िटरी चाहिए, और अनुरोध «रिपॉज़िटरी को सार्वजनिक कर दें» या «उन्हें VPN पहुँच दें» के रूप में आता है। दोनों उत्तर असली सवाल से बचते हैं। रिपॉज़िटरी प्राधिकरण और नेटवर्क प्रवेश अलग परतें हैं, और मायने रखने वाली अनुमति वह है जो उस व्यक्ति को उसी एक रिपॉज़िटरी में पढ़ने या push करने देती है। किसी भी बंडल में बाकी सब अतिरिक्त जोखिम है। पहले प्राधिकरण परत डिज़ाइन करें, फिर तय करें कि उसे कितना कम नेटवर्क मार्ग चाहिए।
एक उदाहरण इसे ठोस बनाता है: एक बाहरी डेवलपर, एक रिपॉज़िटरी, कोई उत्पादन होस्ट नहीं, कोई प्रशासन इंटरफ़ेस नहीं। प्रवेशों की तुलना करते समय इस दायरे को स्थिर रखें।
दो प्रवेश, दो अलग सीमाएँ
सार्वजनिक रूप से पहुँचने योग्य रिपॉज़िटरी सेवा अभी भी HTTPS या SSH प्रमाणीकरण और एप्लिकेशन प्राधिकरण लागू करती है। सार्वजनिक पहुँच का अर्थ गुमनाम पठनीयता नहीं है। कीमत एक श्रोता है जिसे आपको बनाए रखना, निगरानी करना और पैच करना होता है।
VPN प्रवेश उस श्रोता को सार्वजनिक मार्ग से बाहर रख सकता है, लेकिन एक व्यापक VPN खाता असंबंधित सेवाओं को उजागर कर सकता है। छूटा हुआ सार्वजनिक होस्टनाम, एक SSH श्रोता, या भूला हुआ पता परिवार उस केवल-VPN सीमा को तोड़ सकता है जो आपको लगता था कि आपके पास है। इसीलिए केवल-VPN डिज़ाइन को श्रोताओं की सूची चाहिए, केवल फ़ायरवॉल नियम नहीं।
अनुमत मार्गों की तुलना करें, लेबल की नहीं। किसी भी स्थिति में एप्लिकेशन प्रमाणीकरण और सामान्य सर्वर-पहचान सत्यापन बनाए रखें।
रिपॉज़िटरी भूमिकाएँ अनुमति की इकाई हैं
ठेकेदार को व्यक्तिगत पहचान और वह सबसे छोटी भूमिका दें जो कार्य पूरा करती है। देखना, push करना, रखरखाव और प्रशासन अलग-अलग भूमिकाएँ हैं, और हर आंतरिक परियोजना देने वाला समूह एक रिपॉज़िटरी की पहुँच के बराबर नहीं है। समूह के नाम को एक भूमिका मान लेने के बजाय अपने प्लेटफ़ॉर्म में वास्तविक भूमिका नाम जाँचें।
कार्य को वास्तव में जिन-जिन क्रियाओं की आवश्यकता है, उन सबकी सूची बनाएँ। ब्राउज़र पहुँच और Git परिवहन अलग-अलग क्रेडेंशियल या श्रोता उपयोग कर सकते हैं। स्वचालित बिल्ड, पैकेज डाउनलोड और webhook अपने वितरण मार्गों वाली अलग पहचान के रूप में चल सकते हैं, और लैपटॉप पर VPN उन्हें नहीं जोड़ता।
रिपॉज़िटरी की सामग्री की रक्षा एक अलग काम है। प्रवेश मार्ग बदलने से इतिहास में पहले से मौजूद रहस्य हटता नहीं, अधिकृत क्लोन सीमित नहीं होता, और किसी योगदानकर्ता का वर्कस्टेशन सुरक्षित नहीं होता।
व्यक्ति से अधिक जीने वाले क्रेडेंशियल
निष्कासन वह जगह है जहाँ रिपॉज़िटरी पहुँच और नेटवर्क पहुँच फिर से अलग होती हैं। संबंधित स्वामियों के माध्यम से रिपॉज़िटरी प्राधिकरण और VPN हक़ हटाएँ, फिर व्यक्तिगत टोकन, SSH कुंजियाँ, स्वचालन क्रेडेंशियल और सक्रिय सत्र जाँचें। डिप्लॉय कुंजी क्लासिक उत्तरजीवी है: व्यक्ति के संगठन छोड़ने के बाद भी यह अपनी कॉन्फ़िगर की गई पढ़ने या लिखने की पहुँच बनाए रख सकती है। सदस्यता सूची से हटाना पूर्ण निष्कासन नहीं है।
काम खत्म होने के बाद नहीं, पहले स्वामी और उद्देश्य के अनुसार मशीन क्रेडेंशियल का लेखा-जोखा करें। एक सप्ताह के बिल्ड के लिए बनाया गया टोकन परियोजना से एक साल अधिक जी सकता है यदि किसी ने नहीं लिखा कि यह क्यों मौजूद है।
क्रिया, अस्वीकृति और निष्कासन सत्यापित करें
हस्तांतरण से पहले तीन चीजें परखें: अनुमत रिपॉज़िटरी क्रिया सफल होती है, असंबंधित रिपॉज़िटरी अस्वीकृत होती है, और सेवानिवृत्त पहचान विफल होती है। यदि डिज़ाइन केवल-VPN है, तो पुष्टि करें कि पुराना सीधा सार्वजनिक मार्ग अब क्रिया नहीं कर सकता।
कोड और समीक्षा रिकॉर्ड रखें, लेकिन भूली हुई पहुँच को पुनर्प्राप्ति योजना बनने न दें। पहचान, भूमिकाओं और समाप्ति तिथियों की लिखित सूची ही अगले ठेकेदार अनुरोध को दोहराने योग्य प्रक्रिया बनाती है।