You can also use an IDE tool or a CI/CD integration, or use the Snyk CLI tool to get started using the command line.
Ensure you have:
To take effective action based on license issues, you need to define policies defining these actions, based on license types. Policies provide a way to capture different requirements within an organization, based on factors such as line of business. Work with your legal team to create policies which are specific to your company.
Create policy rules
Each policy contains rules, detailing which licenses are acceptable and which are forbidden for use, together with a severity level which indicates how severe the license violation is. For example, severity levels for internal-only license issues may be less severe than for those released externally.
Snyk’s Git-based integrations support license scanning as part of the regular workflow. During scanning, license issues appear as a filterable list in the Issues tab:
This example shows a high-severity issue for a GPL-2.0 license, with accompanying instructions as defined in policies for that license.
You can also view license issues using the Snyk CLI tool, after running snyk test:
Snyk shows license issues in both your direct and transitive dependencies, in a full dependency tree to show what dependency introduced the license issue.
This example includes two high severity license policy violations, caused by:
- a direct dependency on an npm package called email@example.com
- a transitive dependency on a package called firstname.lastname@example.org introduced by email@example.com
View lists and copyrights
You can view and share detailed lists of licenses being used, and see a report that lists all the open source components and licenses along with copyright information.
You can now take actions to resolve the license issues identified during the scan, to help you build and deploy your application without outstanding licensing issues.
The actions you take depend on the license conditions and on your policies. For example, if a license violation is surfaced, this issue can be mitigated by either approaching your legal team, or by replacing the dependency which added the violation.