हमारी Compliance & Regulation श्रृंखला का हिस्सा
पूरी गाइड पढ़ेंओपन सोर्स लाइसेंस अनुपालन: सॉफ्टवेयर कंपनियों के लिए एक व्यावहारिक मार्गदर्शिका
औसत व्यावसायिक एप्लिकेशन में 77% ओपन-सोर्स कोड होता है, जो 500+ निर्भरताओं में फैला होता है। प्रत्येक निर्भरता विशिष्ट दायित्वों के साथ अपना स्वयं का लाइसेंस रखती है। इन दायित्वों का उल्लंघन करने पर आपकी कंपनी मुकदमों, जबरन कोड प्रकटीकरण और प्रतिष्ठा को नुकसान पहुंचा सकती है। फिर भी अधिकांश कंपनियों के पास ओपन-सोर्स लाइसेंस पर नज़र रखने या उनका अनुपालन करने की कोई प्रक्रिया नहीं है।
यह मार्गदर्शिका लाइसेंस वर्गीकरण से लेकर स्वचालित स्कैनिंग और एसबीओएम पीढ़ी तक, ओपन-सोर्स लाइसेंस अनुपालन के लिए एक व्यावहारिक रूपरेखा प्रदान करती है।
मुख्य बातें
- सभी ओपन-सोर्स लाइसेंस एक जैसे नहीं होते: अनुमेय लाइसेंस लगभग किसी भी चीज़ की अनुमति देते हैं, कॉपीलेफ्ट लाइसेंस के लिए आपको संशोधन साझा करने की आवश्यकता होती है
- सामग्री का सॉफ़्टवेयर बिल (एसबीओएम) सरकारी खरीद में एक कानूनी आवश्यकता बनता जा रहा है (यूएस कार्यकारी आदेश 14028)
- सीआई/सीडी में स्वचालित लाइसेंस स्कैनिंग गैर-अनुपालक निर्भरताओं को आपके कोडबेस में प्रवेश करने से रोकती है
- कॉपीलेफ्ट "संक्रमण" जोखिम वास्तविक है: एक जीपीएल निर्भरता आपको अपने संपूर्ण एप्लिकेशन को ओपन-सोर्स करने के लिए बाध्य कर सकती है
लाइसेंस श्रेणियाँ
अनुमेय लाइसेंस (कम जोखिम)
| लाइसेंस | दायित्व | व्यावसायिक उपयोग | संशोधन | वितरण |
|---|---|---|---|---|
| एमआईटी | कॉपीराइट नोटिस + लाइसेंस शामिल करें | हाँ | हाँ | हाँ |
| बीएसडी 2-खंड | कॉपीराइट नोटिस + लाइसेंस शामिल करें | हाँ | हाँ | हाँ |
| बीएसडी 3-खंड | वही + कोई समर्थन दावा नहीं | हाँ | हाँ | हाँ |
| अपाचे 2.0 | नोटिस + लाइसेंस + राज्य परिवर्तन + पेटेंट अनुदान शामिल करें | हाँ | हाँ | हाँ |
| आईएससी | कॉपीराइट नोटिस + लाइसेंस शामिल करें | हाँ | हाँ | हाँ |
व्यावसायिक उपयोग के लिए सुरक्षित। अपने वितरण में लाइसेंस टेक्स्ट और कॉपीराइट नोटिस शामिल करें। Apache 2.0 को मूल कोड में किसी भी बदलाव को नोट करने की आवश्यकता होती है और इसमें पेटेंट लाइसेंस भी शामिल होता है।
कमजोर कॉपीलेफ्ट (मध्यम जोखिम)
| लाइसेंस | दायित्व | मुख्य प्रतिबंध |
|---|---|---|
| एलजीपीएल v2.1/v3 | एलजीपीएल कोड में संशोधन साझा करें; यदि गतिशील रूप से लिंक किया गया है तो आपका कोड मालिकाना बना रहता है | स्टेटिक लिंकिंग कॉपीलेफ्ट को ट्रिगर कर सकती है |
| एमपीएल 2.0 | एमपीएल फ़ाइलों में संशोधन साझा करें; नई फ़ाइलें मालिकाना हो सकती हैं | फ़ाइल-स्तर कॉपीलेफ्ट |
| ईपीएल 2.0 | संशोधन साझा करें; द्वितीयक लाइसेंस विकल्प उपलब्ध है | मॉड्यूल-स्तरीय कॉपीलेफ्ट |
सावधानीपूर्वक उपयोग करें। एलजीपीएल पुस्तकालयों को साझा (गतिशील) पुस्तकालयों के रूप में रखें, स्थिर रूप से लिंक्ड नहीं। एमपीएल-लाइसेंस प्राप्त कोड को अपने मालिकाना कोड से अलग फाइलों में रखें।
मजबूत कॉपीलेफ्ट (उच्च जोखिम)
| लाइसेंस | दायित्व | मुख्य प्रतिबंध |
|---|---|---|
| जीपीएल वी2 | व्युत्पन्न कार्यों को जीपीएल-लाइसेंस प्राप्त होना चाहिए | लिंक करने से व्युत्पन्न कार्य बनता है |
| जीपीएल वी3 | v2 + एंटी-टिवोइज़ेशन + पेटेंट अनुदान के समान | व्यापक कॉपीलेफ्ट |
| एजीपीएल v3 | GPL v3 + नेटवर्क उपयोग ट्रिगर कॉपीलेफ्ट के समान | सर्वर-साइड उपयोग मायने रखता है |
| एसएसपीएल | संपूर्ण "सेवा" स्टैक ओपन-सोर्स होना चाहिए | सबसे व्यापक कॉपीलेफ्ट |
व्यावसायिक सॉफ़्टवेयर के लिए सबसे अधिक जोखिम। अपने एप्लिकेशन में जीपीएल कोड का उपयोग करने से आपको अपना पूरा एप्लिकेशन जीपीएल के तहत जारी करना पड़ सकता है। एजीपीएल इसे सर्वर-साइड सॉफ़्टवेयर तक विस्तारित करता है --- भले ही आप कभी भी बायनेरिज़ वितरित नहीं करते हैं, सॉफ़्टवेयर को वेब सेवा के रूप में प्रदान करने से कॉपीलेफ्ट दायित्व शुरू हो जाता है।
अनुपालन कार्यप्रवाह
चरण 1: एक एसबीओएम उत्पन्न करें
# For Node.js projects (using CycloneDX)
npx @cyclonedx/cyclonedx-npm --output-file sbom.json --spec-version 1.5
# For Python projects
pip install cyclonedx-bom
cyclonedx-py environment --output sbom.json
# For multi-language projects (using Syft)
syft . -o cyclonedx-json > sbom.json
चरण 2: लाइसेंस अनुपालन के लिए स्कैन करें
# Using license-checker for Node.js
npx license-checker --production --json --out licenses.json
# Using scancode-toolkit (comprehensive, all languages)
scancode --license --copyright --output-json scan-results.json .
चरण 3: वर्गीकृत करें और अनुमोदित करें
एक अनुमोदित लाइसेंस सूची बनाएं:
{
"approved": [
"MIT", "BSD-2-Clause", "BSD-3-Clause", "Apache-2.0",
"ISC", "0BSD", "Unlicense", "CC0-1.0"
],
"conditional": [
"LGPL-2.1", "LGPL-3.0", "MPL-2.0", "EPL-2.0"
],
"prohibited": [
"GPL-2.0", "GPL-3.0", "AGPL-3.0", "SSPL-1.0",
"EUPL-1.2", "OSL-3.0"
]
}
चरण 4: सीआई/सीडी एकीकरण
# .github/workflows/license-check.yml
name: License Compliance
on: [pull_request]
jobs:
check-licenses:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: pnpm install --frozen-lockfile
- name: Check licenses
run: |
npx license-checker --production --excludePackages "" \
--failOn "GPL-2.0;GPL-3.0;AGPL-3.0;SSPL-1.0" \
--summary
एसबीओएम (सामग्री का सॉफ्टवेयर बिल)
एसबीओएम क्यों मायने रखते हैं
- यूएस कार्यकारी आदेश 14028 को अमेरिकी सरकार को बेचे जाने वाले सॉफ़्टवेयर के लिए एसबीओएम की आवश्यकता होती है
- ईयू साइबर रेजिलिएंस एक्ट के लिए ईयू में बेचे जाने वाले सॉफ़्टवेयर के लिए एसबीओएम की आवश्यकता होगी
- आपूर्ति श्रृंखला सुरक्षा: एसबीओएम तेजी से भेद्यता प्रतिक्रिया सक्षम करते हैं (जब लॉग4जे होता है, तो आप जानते हैं कि आप प्रभावित हैं या नहीं)
- ग्राहक का भरोसा: उद्यम खरीदार खरीदारी के दौरान तेजी से एसबीओएम का अनुरोध कर रहे हैं
एसबीओएम मानक
| मानक | प्रारूप | द्वारा बनाए रखा गया | गोद लेना |
|---|---|---|---|
| साइक्लोनडीएक्स | जेएसओएन, एक्सएमएल | ओडब्ल्यूएएसपी | बढ़ रहा है (एनपीएम के लिए डिफ़ॉल्ट) |
| एसपीडीएक्स | JSON, RDF, टैग-वैल्यू | लिनक्स फाउंडेशन | स्थापित (आईएसओ/आईईसी 5962:2021) |
| स्विड | एक्सएमएल | एनआईएसटी | सरकार |
सिफारिश: अधिकांश सॉफ्टवेयर कंपनियों के लिए CycloneDX। यह सरल है, इसमें बेहतर टूलींग समर्थन है, और यह उद्योग का डिफ़ॉल्ट बनता जा रहा है।
सामान्य अनुपालन परिदृश्य
परिदृश्य 1: नोड.जेएस वेब एप्लिकेशन
विशिष्ट node_modules निर्देशिका में 500-2,000 पैकेज होते हैं। अधिकांश लोग एमआईटी या आईएससी लाइसेंस का उपयोग करते हैं। सामान्य मुद्दे:
- जीपीएल का उपयोग कर सकर्मक निर्भरताएँ (आपने उन्हें सीधे नहीं जोड़ा)
UNKNOWNलाइसेंस फ़ील्ड में मैन्युअल जांच की आवश्यकता होती है- एक ही पैकेज पर एकाधिक लाइसेंस (उदाहरण के लिए, "एमआईटी या अपाचे-2.0")
कार्रवाई: npx license-checker --production साप्ताहिक चलाएँ। किसी भी गैर-अनुमेय लाइसेंस की जांच करें। जीपीएल निर्भरता को अनुमेय विकल्पों से बदलें।
परिदृश्य 2: ओडू मॉड्यूल विकास
Odoo सामुदायिक संस्करण LGPL v3 है। ओडू एंटरप्राइज स्वामित्वाधीन है। आपके कस्टम मॉड्यूल:
- सामुदायिक मॉड्यूल: LGPL v3 या संगत होना चाहिए (यदि वितरित हो)
- निजी आंतरिक मॉड्यूल: वितरित नहीं, इसलिए एलजीपीएल लागू नहीं होता है
- एंटरप्राइज़ ऐड-ऑन: ओडू एंटरप्राइज़ लाइसेंसिंग शर्तों का पालन करना होगा
परिदृश्य 3: एजीपीएल निर्भरता के साथ सास
यदि आपका SaaS एप्लिकेशन AGPL-लाइसेंस प्राप्त कोड का उपयोग करता है (उदाहरण के लिए, SSPL पर स्विच करने से पहले MongoDB), तो आपको या तो यह करना होगा:
- एजीपीएल के तहत अपना संपूर्ण एप्लिकेशन स्रोत कोड जारी करें
- एजीपीएल निर्भरता हटाएं और एक विकल्प का उपयोग करें
- एजीपीएल परियोजना से वाणिज्यिक लाइसेंस प्राप्त करें (यदि उपलब्ध हो)
एजीपीएल कोड का सर्वर-साइड उपयोग कॉपीलेफ्ट दायित्व को ट्रिगर करता है, भले ही आप बायनेरिज़ को कभी भी "वितरित" नहीं करते हैं।
अक्सर पूछे जाने वाले प्रश्न
क्या हमारे एपीआई में जीपीएल लाइब्रेरी का उपयोग हमें अपने एपीआई को ओपन-सोर्स करने के लिए मजबूर करता है?
यह इस पर निर्भर करता है कि आप इसका उपयोग कैसे करते हैं। यदि जीपीएल लाइब्रेरी आपके एप्लिकेशन (सांख्यिकीय या गतिशील रूप से) से जुड़ी हुई है, तो एफएसएफ की स्थिति यह है कि आपका एप्लिकेशन एक "व्युत्पन्न कार्य" है और उसे जीपीएल के तहत लाइसेंस प्राप्त होना चाहिए। यदि आप नेटवर्क एपीआई (उदाहरण के लिए, जीपीएल-लाइसेंस प्राप्त डेटाबेस सर्वर का उपयोग करके) के माध्यम से जीपीएल सॉफ़्टवेयर के साथ संचार करते हैं, तो इसे आम तौर पर व्युत्पन्न कार्य नहीं माना जाता है। अपने विशिष्ट मामले के लिए एक वकील से परामर्श लें।
क्या होगा यदि कोई निर्भरता अपना लाइसेंस बदल देती है?
आप उस लाइसेंस से बंधे हैं जिसके तहत आपने कोड प्राप्त किया है, न कि भविष्य में होने वाले लाइसेंस परिवर्तनों से। हालाँकि, यदि आप नए लाइसेंस के साथ नए संस्करण में अपडेट करते हैं, तो नया लाइसेंस उस संस्करण पर लागू होता है। यही कारण है कि संस्करण पिनिंग वाले एसबीओएम महत्वपूर्ण हैं --- वे सटीक रूप से दस्तावेज करते हैं कि आप किस संस्करण (और लाइसेंस) का उपयोग कर रहे हैं।
हम "अज्ञात" लाइसेंस के साथ निर्भरता को कैसे संभालते हैं?
LICENSE फ़ाइल के लिए पैकेज के भंडार की जाँच करें। यदि कोई लाइसेंस निर्दिष्ट नहीं है, तो कोड तकनीकी रूप से पूर्ण कॉपीराइट संरक्षण के अंतर्गत है --- आपको इसका उपयोग करने, संशोधित करने या वितरित करने का कोई अधिकार नहीं है। या तो लाइसेंस ढूंढें (यह गैर-मानक स्थान पर हो सकता है), लेखक से एक जोड़ने का अनुरोध करें, या निर्भरता को स्पष्ट रूप से लाइसेंस प्राप्त विकल्प से बदलें।
क्या हमें एमआईटी-लाइसेंस प्राप्त पैकेजों के लिए एट्रिब्यूशन प्रदान करने की आवश्यकता है?
हाँ। एमआईटी और अधिकांश अनुमेय लाइसेंसों के लिए आपको सॉफ़्टवेयर वितरित करते समय कॉपीराइट नोटिस और लाइसेंस टेक्स्ट शामिल करने की आवश्यकता होती है। वेब अनुप्रयोगों के लिए, इसका मतलब आम तौर पर एक तृतीय-पक्ष-नोटिस फ़ाइल या सभी ओपन-सोर्स घटकों और उनके लाइसेंसों को सूचीबद्ध करने वाला एक पृष्ठ शामिल करना है।
एक अनुपालन कार्यक्रम का निर्माण
त्रैमासिक अनुपालन समीक्षा
- सभी परियोजनाओं के लिए एसबीओएम को पुनर्जीवित करें
- नई निर्भरताओं के लिए स्कैन करें पिछली समीक्षा के बाद से जोड़ा गया है
- अद्यतन पैकेजों में लाइसेंस परिवर्तनों की जांच करें
- दिखाई दिए गए किसी भी "अज्ञात" लाइसेंस की समीक्षा करें
- यदि नए लाइसेंस सामने आते हैं तो स्वीकृत लाइसेंस सूची को अपडेट करें
- ऑडिट ट्रेल के लिए एसबीओएम स्नैपशॉट को संग्रहित करें
अनुपालन भूमिकाएँ
| भूमिका | जिम्मेदारी |
|---|---|
| इंजीनियरिंग लीड | पीआर में निर्भरता परिवर्धन की समीक्षा |
| कानूनी/अनुपालन | अनुमोदित लाइसेंस सूची बनाए रखता है, किनारे के मामलों की समीक्षा करता है |
| सुरक्षा | लाइसेंस स्कैनिंग के साथ-साथ कमजोर निर्भरता के लिए स्कैन |
| उत्पाद स्वामी | यह तय करता है कि उत्पाद के लिए सशर्त लाइसेंस स्वीकार्य हैं या नहीं |
एक हल्के अनुपालन कार्यक्रम में एक छोटी टीम के लिए प्रति तिमाही 2-4 घंटे लगते हैं और उत्पाद लॉन्च के बाद या उचित परिश्रम के दौरान अनुपालन मुद्दे की खोज की बहुत बड़ी लागत को रोकता है।
आगे क्या आता है
लाइसेंस अनुपालन सॉफ्टवेयर प्रशासन का एक पहलू है। इसे अपने कोड के लिए IP सुरक्षा, विक्रेता सॉफ़्टवेयर के लिए SaaS अनुबंध आवश्यक, और सुरक्षा अनुपालन के लिए साइबर सुरक्षा नियामक आवश्यकताओं के साथ संयोजित करें।
ओपन-सोर्स अनुपालन ऑडिटिंग और एसबीओएम जेनरेशन सेवाओं के लिए ECOSIRE से संपर्क करें।
ECOSIRE द्वारा प्रकाशित - व्यवसायों को जिम्मेदारी से खुले स्रोत का उपयोग करने में मदद करना।
लेखक
ECOSIRE Research and Development Team
ECOSIRE में एंटरप्राइज़-ग्रेड डिजिटल उत्पाद बना रहे हैं। Odoo एकीकरण, ई-कॉमर्स ऑटोमेशन, और AI-संचालित व्यावसायिक समाधानों पर अंतर्दृष्टि साझा कर रहे हैं।
संबंधित लेख
Audit Preparation Checklist: How Your ERP Makes Audits 60 Percent Faster
Complete audit preparation checklist using ERP systems. Reduce audit time by 60 percent with proper documentation, controls, and automated evidence gathering.
Cookie Consent Implementation Guide: Legally Compliant Consent Management
Implement cookie consent that complies with GDPR, ePrivacy, CCPA, and global regulations. Covers consent banners, cookie categorization, and CMP integration.
Cross-Border Data Transfer Regulations: Navigating International Data Flows
Navigate cross-border data transfer regulations with SCCs, adequacy decisions, BCRs, and transfer impact assessments for GDPR, UK, and APAC compliance.
Compliance & Regulation से और अधिक
Audit Preparation Checklist: How Your ERP Makes Audits 60 Percent Faster
Complete audit preparation checklist using ERP systems. Reduce audit time by 60 percent with proper documentation, controls, and automated evidence gathering.
Cookie Consent Implementation Guide: Legally Compliant Consent Management
Implement cookie consent that complies with GDPR, ePrivacy, CCPA, and global regulations. Covers consent banners, cookie categorization, and CMP integration.
Cross-Border Data Transfer Regulations: Navigating International Data Flows
Navigate cross-border data transfer regulations with SCCs, adequacy decisions, BCRs, and transfer impact assessments for GDPR, UK, and APAC compliance.
Cybersecurity Regulatory Requirements by Region: A Compliance Map for Global Businesses
Navigate cybersecurity regulations across US, EU, UK, APAC, and Middle East. Covers NIS2, DORA, SEC rules, critical infrastructure requirements, and compliance timelines.
Data Governance and Compliance: The Complete Guide for Technology Companies
Complete data governance guide covering compliance frameworks, data classification, retention policies, privacy regulations, and implementation roadmaps for tech companies.
Data Retention Policies and Automation: Keep What You Need, Delete What You Must
Build data retention policies with legal requirements, retention schedules, automated enforcement, and compliance verification for GDPR, SOX, and HIPAA.