npm Trusted Publishing OIDC के साथ सामान्य उपलब्ध है — JavaScript पैकेज के लिए सुरक्षित CI/CD प्रकाशन

Node.jsDevOpsSecurityCI/CD

मुख्य अपडेट

npm (GitHub/npm प्लेटफ़ॉर्म के माध्यम से) ने OpenID Connect (OIDC) के साथ "Trusted Publishing" को सामान्य उपलब्ध करा दिया है। CI सिस्टम अब लंबे समय तक चलने वाले npm टोकन को शामिल किए बिना पैकेज प्रकाशित कर सकते हैं: आप अपने रजिस्ट्र्री को विशिष्ट GitHub Actions/GitLab CI कार्यप्रवाहों या अन्य OIDC-सक्षम रनर्स से छोटे समय के OIDC असर्शन स्वीकार करने के लिए कॉन्फ़िगर करते हैं, और रजिस्ट्र्री उस कार्यप्रवाह रन के लिए एक अस्थायी प्रकाशन क्रेडेंशियल जारी करती है।

यह क्यों महत्वपूर्ण है

यह वर्षों में JavaScript सप्लाई-चेन सुरक्षा में सबसे व्यावहारिक, तैनाती-स्तरीय सुधारों में से एक है। लंबे समय तक चलने वाले स्वचालन टोकन अक्सर CI/CD रहस्यों के लीक होने या हमलावरों के एक समझौता किए गए रनर से पैकेज प्रकाशन में परिवर्तन करने का एक सामान्य कारण होते हैं; OIDC पर स्विच करने से आपके पाइपलाइनों से उस स्थायी क्रेडेंशियल को हटा दिया जाता है और स्वचालित प्रकाशनों का दुरुपयोग करना बहुत कठिन हो जाता है। विकास टीमों और प्लेटफ़ॉर्म इंजीनियरों के लिए तत्काल, उच्च-मूल्य कार्यों की योजना बनाना सीधा है और परीक्षण के लिए कम घर्षण है: OIDC-सक्षम कार्यप्रवाहों में प्रकाशन कार्यों को माइग्रेट करें, केवल उन कार्यप्रवाहों पर भरोसा करने के लिए पैकेज/संस्थान प्रकाशन सेटिंग्स को अपडेट करें, केवल CI द्वारा उपयोग किए जाने वाले मौजूदा npm टोकनों को घुमाएं और रिटायर करें, और मानव प्रकाशन कार्यों के लिए इंटरैक्टिव 2FA को लागू रखें। यह चुराए गए CI क्रेडेंशियल्स के विस्फोटीय क्षेत्र को कम करता है और अन्य रक्षा उपायों (SBOMs, sigstore/Sigstore प्रॉविनेंस, रहस्य-स्कैनिंग, और सख्त 2FA नीतियों) को पूरा करता है — लेकिन यह रखरखाव करने वाले खातों को सुरक्षित करने और फ़िशिंग के खिलाफ सुरक्षा की आवश्यकता को समाप्त नहीं करता है। यदि आप CI से पैकेज प्रकाशित करते हैं, तो अगले स्प्रिंट में एक चरणबद्ध माइग्रेशन को प्राथमिकता दें: एकल पाइपलाइन को OIDC में परिवर्तित करें, आर्टिफैक्ट प्रॉविनेंस और स्वचालित प्रकाशनों की पुष्टि करें, फिर अपने रहस्यों के भंडार से टोकन को हटा दें और शेष पाइपलाइनों के लिए दोहराएं।

स्रोत

आगे पढ़ें