GithubHelp home page GithubHelp logo

00mjk / cli-5 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from snyk/cli

0.0 0.0 0.0 47.92 MB

Snyk CLI scans and monitors your projects for security vulnerabilities.

Home Page: https://snyk.io

License: Other

JavaScript 6.38% Shell 1.79% Ruby 0.23% Batchfile 0.01% Scala 0.02% Roff 0.56% TypeScript 90.77% Dockerfile 0.02% Kotlin 0.01% Python 0.02% C# 0.05% Go 0.05% Elixir 0.01% Makefile 0.07% HCL 0.03%

cli-5's Introduction

Snyk CLI

Snyk scans and monitors your projects for security vulnerabilities.

Snyk CLI screenshot

What is Snyk?

Snyk is a developer-first cloud-native security tool. It covers multiple areas of application security:

  1. Snyk Open Source: Find and automatically fix open source vulnerabilities
  2. Snyk Code: Find and fix vulnerabilities in your application code in real time
  3. Snyk Container: Find and fix vulnerabilities in container images and Kubernetes applications
  4. Snyk Infrastructure as Code: Find and fix insecure configurations in Terraform and Kubernetes code

Learn more about what Snyk can do and sign up for a free account ยป

What is Snyk CLI?

Snyk CLI brings the functionality of Snyk into your development workflow. It can be run locally or in your CI/CD pipeline to scan your projects for security issues.

Supported languages and tools

Snyk supports many languages and tools, including Java, .NET, JavaScript, Python, Golang, PHP, C/C++, Ruby, Scala and more. See our Language Support documentation.

CLI also supports Docker scanning and Terraform, k8s and other Infrastructure as Code files scanning.


Install Snyk CLI

Snyk CLI can be installed through multiple channels.

Install with npm or Yarn

Snyk CLI is available as an npm package. If you have Node.js installed locally, you can install it by running:

npm install snyk@latest -g

or if you are using Yarn:

yarn global add snyk

More installation methods

Standalone executables (macOS, Linux, Windows)

Standalone executables

Use GitHub Releases to download a standalone executable of Snyk CLI for your platform.

We also provide these standalone executables on our official CDN. See the release.json file for the download links:

https://static.snyk.io/cli/latest/release.json

# Or for specific version or platform
https://static.snyk.io/cli/v1.666.0/release.json
https://static.snyk.io/cli/latest/snyk-macos

For example, to download and run the latest Snyk CLI on macOS, you could run:

curl https://static.snyk.io/cli/latest/snyk-macos -o snyk
chmod +x ./snyk
mv ./snyk /usr/local/bin/

You can also use these direct links to download the executables:

Drawback of this method is, that you will have to manually keep the Snyk CLI up to date.

Install with Homebrew (macOS, Linux)

Homebrew

Install Snyk CLI from Snyk tap with Homebrew by running:

brew tap snyk/tap
brew install snyk
Scoop (Windows)

Scoop

Install Snyk CLI from our Snyk bucket with Scoop on Windows:

scoop bucket add snyk https://github.com/snyk/scoop-snyk
scoop install snyk
Snyk CLI in a Docker image

Snyk CLI in a Docker image

Snyk CLI can also be run from a Docker image. Snyk offers multiple Docker images under snyk/snyk-cli and snyk/snyk (snyk/images on GitHub for more details).

These images wrap the Snyk CLI and depending on the Tag come with a relevant tooling for different projects. For example scanning a Gradle project with snyk/snyk-cli:

docker run -it
    -e "SNYK_TOKEN=<TOKEN>"
    -e "USER_ID=1234"
    -v "<PROJECT_DIRECTORY>:/project"
    -v "/home/user/.gradle:/home/node/.gradle"
  snyk/snyk-cli:gradle-5.4 test --org=my-org-name

Install as a part of a Snyk CLI integration

Snyk also offers many integrations into developer tooling. These integrations will install and manage the Snyk CLI for you. For example:

Snyk CLI IDE integration


Getting started with Snyk CLI

Once you installed the Snyk CLI, you can verify it's working by running:

snyk --help

See the full Snyk CLI help.

Authenticating Snyk CLI

Snyk CLI depends on Snyk.io APIs. Connect your Snyk CLI with Snyk.io by running:

snyk auth

Setting up language support

Depending on your project's language, you might need to setup your language environment before using Snyk.

See our Language Support documentation.

Scanning your project

If you are already in a folder with a supported project, start by running:

snyk test

Or scan a Docker image by its tag with Snyk Container:

snyk container test ubuntu:18.04

Or a k8s file:

snyk iac test /path/to/kubernetes_file.yaml

Monitoring your project

Snyk can also monitor your project periodically and alert you for new vulnerabilities. The snyk monitor is similar to snyk test and can be used to create a project on the Snyk website that will be continuously monitored for new vulnerabilities.

Snyk CLI monitor projects

> snyk monitor
Monitoring /project (project-name)...

Explore this snapshot at https://app.snyk.io/org/my-org/project/29361c2c-9005-4692-8df4-88f1c040fa7c/history/e1c994b3-de5d-482b-9281-eab4236c851e

Notifications about newly disclosed issues related to these dependencies will be emailed to you.

Add Snyk to your CI/CD

Snyk is really powerful when you are continuously scanning and monitoring your projects for vulnerabilities.

Use one of our integrations to stay secure.

You can authorize Snyk CLI in your CI/CD programatically:

# Using a SNYK_TOKEN envvar (preferred)
SNYK_TOKEN=<SNYK_API_TOKEN> snyk test

# Or using a Snyk auth command
snyk auth <SNYK_API_TOKEN>
snyk test

More flags and options to try

Here are some flags that you might find useful:

  • --severity-threshold=low|medium|high|critical

    Only report vulnerabilities of provided level or higher.

  • --json

    Prints results in JSON format.

  • --all-projects

    Auto-detect all projects in working directory

See all the available commands and options by running --help:

snyk --help
# or get help for a specific command like
snyk iac --help
snyk code --help

Getting support

If you need support using Snyk CLI, please contact support.

We do not actively monitor GitHub Issues so any issues there may go unnoticed.

Contributing

If you are an external contributor, before working on any contributions, please first contact support to discuss the issue or feature request with us.

If you are contributing to Snyk CLI, see our contributing guidelines

For information on how Snyk CLI is implemented, see our design decisions.

This repository is a monorepo, also covering other projects and tools:

Security

For any security issues or concerns, please see SECURITY.md file in this repository.

Notices

Snyk API usage policy

The use of Snyk's API, whether through the use of the 'snyk' npm package or otherwise, is subject to the Terms & Conditions.


Made with ๐Ÿ’œ by Snyk

cli-5's People

Contributors

admons avatar adrukh avatar agatakrajewska avatar anthogez avatar aron avatar artursnyk avatar avishagp avatar danlucian avatar darscan avatar dkontorovskyy avatar gitphill avatar ipapast avatar ivanstanev avatar jackub avatar joshje avatar karniwl avatar kirill89 avatar lili2311 avatar maxjeffos avatar michael-go avatar odinn1984 avatar ofekatr avatar orkamara avatar orsagie avatar remy avatar robcresswell avatar rontalx avatar snaftaly avatar teodora-sandu avatar yairz101 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.