Skip to main content

Policy Output Best Practice

This is a completed example of two outputs generated by policy-generator agent. Use it to check missing items by comparing it with your output/policy/ file.

Go to reference: Open Source Policy Establishment Chapter Guide


Open source policy

Document: oss-policy.md

  • Company Name: Tech Unicorn
  • Version: 1.0
  • Written date: 2026-03-23
  • Author: DevOps Team Open Source Manager
  • Approved by: DevOps Team Leader
  • Next review date: 2027-03-23
Related Standards
- 5230 §3.1.1.1·§3.1.4.1·§3.1.5.1·§3.5.1.1·§3.5.1.2
- 18974 §4.1.1.1·§4.1.4.1·§4.1.4.2

1. Purpose and scope of application

Related Standards
- 5230 §3.1.1.1
- 18974 §4.1.1.1

This policy sets standards for Tech Unicorn (hereinafter referred to as “Company”) to properly use open source software, fulfill license obligations, and manage security vulnerabilities during software development and distribution.

applied area

Related Standards
- 5230 §3.1.4.1
- 18974 §4.1.4.1

This policy applies to the scope below:

  • Target software: All software developed, distributed, and operated by Tech Unicorn
  • Distribution method: SaaS, App Store (iOS/Android), embedded (device mounted), internal system
  • Applicable Personnel: All members involved in the use of open source, including developers, managers, and purchasing/procurement personnel.
  • Exclusions: None

Criteria by distribution channel

Related Standards
- 18974 §4.1.4.2
Distribution ChannelKey risksCore Standards
SaaSAGPL Network ObligationsWhen introducing AGPL, prior review by open source personnel is required
App StoreApp Store Policy and GPL ConflictGPL series are excluded in principle, exceptions are allowed after review by the person in charge
EmbeddedObligation to disclose source code when distributingCopyleft series strictly limited, Permissive used first
For internal useNo obligation to redistributeApply standard review procedures (allow for relaxed copyleft)

2. Principles of using open source

Related Standards
- 5230 §3.1.5.1
- 18974 §4.1.1.1

Obligation to review before use

When introducing new open source or changing existing versions, be sure to review the following:

  1. License Check: Check against output/policy/license-allowlist.md's list of permitted licenses.
  2. License obligation implementation plan: In case of copyleft license, confirmation of implementation method, such as source code disclosure obligation, etc.
  3. Check known vulnerabilities: After creating SBOM, scan CVE to confirm that there are no Critical/High vulnerabilities.
  4. Approval by person in charge: Approved according to output/process/usage-approval.md procedure

License classification criteria

CategoryExampleObligations for distribution
PermissiveMIT, Apache-2.0, BSDCopyright notice, license notice
Weak CopyleftLGPL, MPLModified file source code released
Strong CopyleftGPL-2.0, GPL-3.0Full source code disclosed (when distributed)
Network CopyleftAGPL-3.0Source code disclosure including network use

Package management principles for each development language

The company uses various package managers such as Java (Maven/Gradle), Python (pip), JavaScript (npm/yarn), and Go (mod), and dependency licenses must be automatically scanned in all package managers.


3. Program coverage and performance metrics

Related Standards
- 18974 §4.1.4.1·§4.1.4.2

Performance Metrics (KPI)

indicatorsGoal
SBOM LatestAttach the latest SBOM to every release
License Compliance Rate100% preliminary review of newly introduced components
vulnerability Response TimeCritical: 1 week, High: within 4 weeks
Education Completion RateCompletion of open source-related occupations at least once a year
Update cycleSelf-certification Revalidation every 18 months

Note: The above deadlines are ISO/IEC 18974 and OpenChain KWG baselines. If organizational capabilities allow, more stringent deadlines, such as 24 hours for Critical and 1 week for High, can be applied as internal standards.

Measure and improve program effectiveness

  • Regular evaluation cycle: Evaluate KPI achievement and process compliance status at least once a year.
  • Evaluation Report: The evaluation results are reported to management, and the cause and improvement plan for unsatisfactory items are also listed.
  • Continuous improvement: Update policies and processes based on evaluation results, internal best practices, and industry trends (see Section 9 for update cycle).
  • Resource sufficiency review: Once a year, evaluate the sufficiency of open source management personnel and tool budget and recommend adjustments if necessary.

4. Security assurance policy

Related Standards
- 18974 §4.1.1.1

The company systematically identifies, tracks, and responds to known vulnerabilities (CVE) in distributed software:

  • Perform SBOM based vulnerability scan before every release
  • Critical/high vulnerabilities must be resolved or a mitigation plan established before deployment.
  • If new vulnerabilities are discovered after deployment, respond according to output/process/vulnerability-response.md procedures
  • Operation of external vulnerability reporting channel: security@sktelecom.com

5. Open source contribution policy

Related Standards
- 5230 §3.5.1.1·§3.5.1.2

Whether contributions are allowed

  • Allowed after prior approval — Contributions are possible after review and approval by the open source manager and legal team.

Rules to follow when contributing

  1. Pre-approval: Approved after review by DevOps team open source representative and legal team
  2. IP Verification: Check whether your contribution contains confidential company information or third-party IP.
  3. License Agreement: Check whether you need to sign a Contributor License Agreement (CLA)
  4. Record Keeping: Record your contributions in output/organization/role-definition.md

Contribution Prohibitions

  • Contributions including company internal algorithms, trade secrets, and customer data
  • Contribute patent-related code without review by the legal team
  • Contributions related to company work through personal accounts

6. Management of externally delivered software

The company complies with the following when providing software to external customers and suppliers:

  • Provide SBOM with the delivery (or keep it available for immediate delivery upon request)
  • Delivery after confirmation of prior fulfillment of copyleft license obligations
  • Include open source-related notices in the delivery contract
  • Operate notification procedures to customers when new vulnerabilities are discovered after delivery

7. Policy dissemination and education

Related Standards
- 5230 §3.1.1.2
- 18974 §4.1.1.2

This policy will be disseminated to all program participants in the following ways:

  • Includes onboarding training for new employees
  • Training (or notice) for all members once a year
  • Post and share links on in-house wiki/shared drives
  • Training completion record: output/training/completion-tracker.md

8. Handling non-compliance

Related Standards
- 5230 §3.2.2.5

If you violate this policy:

  1. Immediately report to the open source representative
  2. Identify the violation and scope of impact
  3. Establish and implement corrective action plan
  4. Supplementing policies/processes to prevent recurrence

9. Policy review and update

Related Standards
- 18974 §4.1.1.1

This policy is reviewed and updated at the following intervals or when reasons arise:

  • Regular review: Once a year (Next review date: 2027-03-23)
  • Reason for regular review: Standard revision, regulation change, major accident, change in person in charge
  • Review manager: DevOps team open source manager, legal team confirmation

Review history

versionReview dateMajor changesApprover
1.02026-03-23 ​​Originally writtenDevOps Team Leader

List of permitted licenses

Document: license-allowlist.md

  • Company Name: Tech Unicorn
  • Version: 1.0
  • Written date: 2026-03-23
  • Author: DevOps Team Open Source Manager
  • Next review date: 2027-03-23
Related Standards
- 5230 §3.1.5.1·§3.3.1.1·§3.3.1.2

Summary of distribution methods: SaaS + App Store (iOS/Android) + Embedded + Internal use Copyleft license is strictly restricted as it includes embedded and app store distribution.


1. Summary of acceptance principles for each channel

Distribution ChannelPermissiveWeak CopyleftStrong Copyleft (GPL)Network Copyleft (AGPL)
SaaS✅ Allowed✅ Allowed⚠️ Conditional❌ Prohibited
App Store✅ Allowed⚠️ Conditional❌ Prohibited❌ Prohibited
Embedded✅ Allowed⚠️ Conditional❌ Prohibited❌ Prohibited
For internal use✅ Allowed✅ Allowed✅ Allowed⚠️ Conditional

⚠️ Conditional: Requires prior review and approval by open source staff ❌ Prohibited: Cannot be used without approval from the person in charge (If an exception is allowed, additional review by the legal team is required)


2. Permissive license — allows all channels

Mandatory: Include copyright notice and license text

LicenseSPDX IDPrecautions
MITMITNone
Apache License 2.0Apache-2.0There is a patent termination clause (regardless of general use)
BSD 2-ClauseBSD-2-ClauseNone
BSD 3-ClauseBSD-3-ClausePromotion/Advertising Use Restrictions
ISCISCNone
UnlicenseUnlicensePublic Domain Similar
CC0 1.0CC0-1.0Mainly used for documents and data other than software code
Boost Software License 1.0BSL-1.0None
zlibZlibWhen modifying, it is necessary to clearly distinguish it from the original

3. Weak Copyleft License — Channel-specific conditional permission

There may be an obligation to disclose the source code of modified files. Personnel review required.

LicenseSPDX IDSaaSApp StoreEmbeddedFor internal usePrecautions
LGPL-2.1LGPL-2.1-only⚠️⚠️Relaxation of obligations when dynamic linking. Personnel review required for static linking
LGPL-3.0LGPL-3.0-only⚠️⚠️Same as LGPL-2.1. Added obligation to provide installation information for embedded
MPL-2.0MPL-2.0⚠️⚠️Only modified files are disclosed. Copyleft per file
CDDL-1.0CDDL-1.0⚠️⚠️Incompatible with GPL. Caution on mixing
EPL-2.0EPL-2.0⚠️⚠️Patent termination clause, duty to disclose source of modifications

4. Strong Copyleft License — Embedded and App Store prohibited

Obligation to disclose entire source code arises. In principle, it is prohibited for embedded and app store distribution.

LicenseSPDX IDSaaSApp StoreEmbeddedFor internal useRemarks
GPL-2.0GPL-2.0-only⚠️Full source disclosure upon distribution. SaaS is conditionally allowed as not for distribution
GPL-3.0GPL-3.0-only⚠️GPL-2.0 + Addition of patent/tivoization provisions

Rationale for allowing GPL conditionality in SaaS: SaaS does not “distribute” software to customers, so GPL source disclosure obligations do not directly arise. However, if you modify the GPL code used in the service, you must comply with the GPL conditions internally.


5. Network Copyleft License — No SaaS

The obligation to disclose source code arises simply by providing services through the network.

LicenseSPDX IDSaaSApp StoreEmbeddedFor internal useRemarks
AGPL-3.0AGPL-3.0-only⚠️Obligation to disclose source when providing SaaS. If there is a possibility of external exposure for internal use, review by person in charge
EUPL-1.2EUPL-1.2⚠️Includes network usage terms. Personnel review required when using SaaS

6. Prohibited Use License

The license below is prohibited for use on all channels due to legal uncertainty or incompatibility.

LicenseReason for ban
SSPL-1.0 (Server Side Public License)Licensed by MongoDB, non-OSI certified, full service disclosure obligation
BUSL (Business Source License)There are restrictions on conversion to open source or commercial use after a certain period of time
Commons Clause Additional LicenseViolation of open source definition, prohibition of commercial sales
Proprietary / UnknownBe sure to check with the person in charge before using any license-identified components.

7. License compatibility precautions

License scan tool by package manager

package managerscan toolRemarks
Maven (Java)License Maven Plugin, FOSSApom.xml dependency analysis
Gradle (Java)License Gradle Pluginbuild.gradle dependency analysis
pip (Python)pip-licenses, FOSSAAnalyze requirements.txt
npm/yarn (JS)license-checker, FOSSApackage.json dependency analysis
Go modgo-licensesgo.mod dependency analysis

Prohibited combinations

combinationReason
GPL-2.0 + Apache-2.0GPL-2.0 and Apache-2.0 patent terms incompatibility
GPL-2.0 + GPL-3.0Version incompatibility (cannot be mixed with GPL-3.0 only license)
CDDL + GPLLicense incompatibility (Mozilla official confirmation)

8. Exception handling procedure

If you need to use an unwhitelisted or prohibited license:

  1. Submit written reason and scope of use to the open source manager
  2. Legal team legal review
  3. Joint approval by the person in charge and the legal team
  4. Record the approval history and decide whether to reflect the list in the next policy review.

9. Review history

versionReview dateMajor changesReviewer
1.02026-03-23 ​​Originally writtenDevOps Team Open Source Manager