Skip to main content

Governance of Third-Party Libraries and Components

🌟 Objective​

Establish clear and verifiable rules for the use, approval, replacement and traceability of third-party libraries and components in internally developed applications.

🚨 Many supply chain incidents originate in malicious, abandoned or unverified libraries. This control is fundamental.


🔢 Governance principles​

  1. Permitted repositories must be explicitly defined and controlled.
  2. Every library must have:
    • Active maintenance
    • A compatible licence
    • Validated minimum popularity/community
  3. Libraries with active CVEs may not be used without a formalised exception.
  4. The use of "exotic" or single-author libraries must be justified.

🚀 Approval process​

StageActionArtefact
Request for a new libDev submits name, version, function, originForm / issue
Security analysisAppSec or reviewer checks: CVEs, origin, historyComment with approval or veto
Legal validation(optional) Checks licence compatibilityList of approved licences
Formal approvalRecord of the decision and validity period (if applicable)Approvals repository

This process may be lightweight (via Pull Request) or formalised (via a registration tool).


🔎 Acceptance criteria​

CriterionRecommended?Justification
Permissive open source licenceYesE.g. MIT, Apache 2.0
Actively maintained (>1 year)YesRecent commits and updated versions
Active community (issues/PRs)YesAvoids abandoned libraries
Use in other projectsYesReinforces trust and stability
Presence of tests or CIYesIndicates the project's maturity
Obfuscated or minified codeNoAvoid opaque dependencies
Unknown or suspicious originNoExclude unverified sources

📝 Decision record​

Each library must be traceable to an approval decision. Recording the following is suggested:

  • Name, version, package hash
  • Justification for use
  • Result of the SCA analysis
  • Approval or exception
  • Owner and date

This record may live in a .yaml file, a Git repository, Confluence, Jira, etc.


📎 Cross-references​

DocumentRelationship with governance
01-inventario-sbom.mdControl of what is being used
02-analise-sca.mdBasis for acceptance or blocking
09-excecoes-e-aceitacao-risco.mdFormal justifications for deviations

🔍 Dependency governance is one of the pillars of modern security, especially in exposed environments or those with regulatory obligations (NIS2, CRA, ISO 27001).