diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-03-16 21:09:21 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-03-16 21:09:21 +0000 |
commit | 87af6f2e0590af0ed1bb3e5de1bb5d21855a94d2 (patch) | |
tree | 2abe2661b10cf6281bc03855b3053a072c64fbbf /doc/user | |
parent | c43ba2677f41ad0b5fc6f3af6baf4266c70dfcb3 (diff) | |
download | gitlab-ce-87af6f2e0590af0ed1bb3e5de1bb5d21855a94d2.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'doc/user')
-rw-r--r-- | doc/user/application_security/index.md | 11 | ||||
-rw-r--r-- | doc/user/application_security/offline_deployments/index.md | 55 | ||||
-rw-r--r-- | doc/user/clusters/applications.md | 19 | ||||
-rw-r--r-- | doc/user/clusters/img/threat_monitoring_v12_9.png | bin | 0 -> 53242 bytes | |||
-rw-r--r-- | doc/user/gitlab_com/index.md | 11 | ||||
-rw-r--r-- | doc/user/profile/notifications.md | 3 | ||||
-rw-r--r-- | doc/user/project/merge_requests/cherry_pick_changes.md | 14 | ||||
-rw-r--r-- | doc/user/project/merge_requests/img/cherry_pick_mr_timeline_v12_9.png | bin | 0 -> 29557 bytes | |||
-rw-r--r-- | doc/user/project/pages/introduction.md | 2 |
9 files changed, 109 insertions, 6 deletions
diff --git a/doc/user/application_security/index.md b/doc/user/application_security/index.md index 3028d575050..8e97427e061 100644 --- a/doc/user/application_security/index.md +++ b/doc/user/application_security/index.md @@ -62,7 +62,7 @@ The scanning tools and vulnerabilities database are updated regularly. | Secure scanning tool | Vulnerabilities database updates | |:-------------------------------------------------------------|-------------------------------------------| | [Container Scanning](container_scanning/index.md) | Uses `clair`. The latest `clair-db` version is used for each job by running the [`latest` docker image tag](https://gitlab.com/gitlab-org/gitlab/blob/438a0a56dc0882f22bdd82e700554525f552d91b/lib/gitlab/ci/templates/Security/Container-Scanning.gitlab-ci.yml#L37). The `clair-db` database [is updated daily according to the author](https://github.com/arminc/clair-local-scan#clair-server-or-local). | -| [Dependency Scanning](dependency_scanning/index.md) | Relies on `bundler-audit` (for Rubygems), `retire.js` (for NPM packages), and `gemnasium` (GitLab's own tool for all libraries). Both `bundler-audit` and `retire.js` fetch their vulnerabilities data from GitHub repositories, so vulnerabilities added to `ruby-advisory-db` and `retire.js` are immediately available. The tools themselves are updated once per month if there's a new version. The [Gemnasium DB](https://gitlab.com/gitlab-org/security-products/gemnasium-db) is updated at least once a week. | +| [Dependency Scanning](dependency_scanning/index.md) | Relies on `bundler-audit` (for Rubygems), `retire.js` (for NPM packages), and `gemnasium` (GitLab's own tool for all libraries). Both `bundler-audit` and `retire.js` fetch their vulnerabilities data from GitHub repositories, so vulnerabilities added to `ruby-advisory-db` and `retire.js` are immediately available. The tools themselves are updated once per month if there's a new version. The [Gemnasium DB](https://gitlab.com/gitlab-org/security-products/gemnasium-db) is updated at least once a week. See our [current measurement of time from CVE being issued to our product being updated](https://about.gitlab.com/handbook/engineering/development/performance-indicators/#cve-issue-to-update). | | [Dynamic Application Security Testing (DAST)](dast/index.md) | The scanning engine is updated on a periodic basis. See the [version of the underlying tool `zaproxy`](https://gitlab.com/gitlab-org/security-products/dast/blob/master/Dockerfile#L1). The scanning rules are downloaded at scan runtime. | | [Static Application Security Testing (SAST)](sast/index.md) | Relies exclusively on [the tools GitLab wraps](sast/index.md#supported-languages-and-frameworks). The underlying analyzers are updated at least once per month if a relevant update is available. The vulnerabilities database is updated by the upstream tools. | @@ -240,6 +240,15 @@ An approval is optional when a license report: - Contains no software license violations. - Contains only new licenses that are `approved` or unknown. +## Working in an offline environment + +It is possible to run most of the GitLab security scanners when not +connected to the internet, in what is sometimes known as an offline, +limited connectivity, Local Area Network (LAN), Intranet, or "air-gap" +environment. + +Read how to [operate the Secure scanners in an offline environment](offline_deployments/index.md). + ## Outdated security reports > [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/4913) in GitLab 12.7. diff --git a/doc/user/application_security/offline_deployments/index.md b/doc/user/application_security/offline_deployments/index.md new file mode 100644 index 00000000000..f72b632ff82 --- /dev/null +++ b/doc/user/application_security/offline_deployments/index.md @@ -0,0 +1,55 @@ +--- +type: reference, howto +--- + +# Offline deployments + +This document describes how to operate Secure scanners offline. + +## Overview + +It is possible to run most of the GitLab security scanners when not +connected to the internet, in what is sometimes known as an offline, +limited connectivity, Local Area Network (LAN), Intranet, or "air-gap" +environment. + +In this situation, the GitLab instance can be one, or more, servers and services running in a network that can talk to one another, but have zero, or perhaps very restricted access to the internet. Assume anything within the GitLab instance and supporting infrastrusture (private maven repository for example) can be accessed via local network connection. Assume any files from the internet must come in via physical media (USB drive, hard drive). + +GitLab scanners generally will connect to the internet to download the +latest sets of signatures, rules, and patches. A few extra steps are necessary +to configure the tools to not do this and to still function properly. + +### Container registries and package repositories + +At a high-level, each of the security analyzers are delivered as Docker +containers and reference various package repositories. When you run a job on +an internet-connected GitLab installation, GitLab checks the GitLab.com-hosted +container registry and package repositories to ensure that you have +the latest versions. + +In an air-gapped environment, this must be disabled so that GitLab.com is not +queried. Because the GitLab.com registry and repositories are not available, +you must update each of the scanners to either reference a different, +internally-hosted registry or provide access to the individual scanner images. + +You must also ensure that your app has access to common package repos +that are not hosted on GitLab.com, such as npm, yarn, or rubygems. Packages +from these repos can be obtained by temporarily connecting to a network or by +mirroring the packages inside your own offline network. + +### Scanner signature and rule updates + +When connected to the internet, some scanners will reference public databases +for the latest sets of signatures and rules to check against. Without connectivity, +this is not possible. Depending on the scanner, you must therefore disable +these automatic update checks and either use the databases that they came +with or manually update those databases. + +## Specific scanner instructions + +Each individual scanner may be slightly different than the steps described +above. You can find more info at each of the pages below: + +- [Container scanning offline directions](../container_scanning/index.md#running-container-scanning-in-an-offline-air-gapped-installation) +- [SAST offline directions](../sast/index.md#gitlab-sast-in-an-offline-air-gapped-installation) +- [DAST offline directions](../dast/index.md#running-dast-in-an-offline-air-gapped-installation) diff --git a/doc/user/clusters/applications.md b/doc/user/clusters/applications.md index 192941ff6e1..b342128e069 100644 --- a/doc/user/clusters/applications.md +++ b/doc/user/clusters/applications.md @@ -297,6 +297,25 @@ Ingress with the recent changes.  +##### Viewing Web Application Firewall traffic + +> [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/14707) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 12.9. + +You can view Web Application Firewall traffic by navigating to your project's +**Security & Compliance > Threat Monitoring** page. + +From there, you can see tracked over time: + +- The total amount of traffic to your application. +- The proportion of traffic that is considered anomalous by the Web Application + Firewall's default [OWASP ruleset](https://www.modsecurity.org/CRS/Documentation/). + +If a significant percentage of traffic is anomalous, it should be investigated +for potential threats, which can be done by +[examining the application logs](#web-application-firewall-modsecurity). + + + ### JupyterHub > - Introduced in GitLab 11.0 for project-level clusters. diff --git a/doc/user/clusters/img/threat_monitoring_v12_9.png b/doc/user/clusters/img/threat_monitoring_v12_9.png Binary files differnew file mode 100644 index 00000000000..9097f9334a8 --- /dev/null +++ b/doc/user/clusters/img/threat_monitoring_v12_9.png diff --git a/doc/user/gitlab_com/index.md b/doc/user/gitlab_com/index.md index 361efdcba73..b81426d9089 100644 --- a/doc/user/gitlab_com/index.md +++ b/doc/user/gitlab_com/index.md @@ -88,11 +88,14 @@ or over the size limit, you can [reduce your repository size with Git](../projec ## IP range -GitLab.com, CI/CD, and related services are deployed into Google Cloud Platform (GCP). Any -IP based firewall can be configured by looking up all -[IP address ranges or CIDR blocks for GCP](https://cloud.google.com/compute/docs/faq#where_can_i_find_product_name_short_ip_ranges). +GitLab.com is using the IP range `34.74.90.64/28` for traffic from its Web/API +fleet. You can expect connections from webhooks or repository mirroring to come +from those IPs and whitelist them. -[Static endpoints](https://gitlab.com/groups/gitlab-com/gl-infra/-/epics/97) are being considered. +For connections from CI/CD runners we are not providing static IP addresses. +All our runners are deployed into Google Cloud Platform (GCP) - any IP based +firewall can be configured by looking up all +[IP address ranges or CIDR blocks for GCP](https://cloud.google.com/compute/docs/faq#where_can_i_find_product_name_short_ip_ranges). ## Maximum number of webhooks diff --git a/doc/user/profile/notifications.md b/doc/user/profile/notifications.md index 588c471bb64..2a624283e05 100644 --- a/doc/user/profile/notifications.md +++ b/doc/user/profile/notifications.md @@ -159,6 +159,9 @@ In most of the below cases, the notification will be sent to: - Subscribers: anyone who manually subscribed to the issue, merge request, or epic **(ULTIMATE)** - Custom: Users with notification level "custom" who turned on notifications for any of the events present in the table below +NOTE: **Note:** +To minimize the number of notifications that do not require any action, from [GitLab 12.9 onwards](https://gitlab.com/gitlab-org/gitlab/issues/616), eligible approvers are no longer notified for all the activities in their projects. To receive them they have to change their user notification settings to **Watch** instead. + | Event | Sent to | |------------------------|---------| | New issue | | diff --git a/doc/user/project/merge_requests/cherry_pick_changes.md b/doc/user/project/merge_requests/cherry_pick_changes.md index 1ba5ece89d5..3e76b9ec6b9 100644 --- a/doc/user/project/merge_requests/cherry_pick_changes.md +++ b/doc/user/project/merge_requests/cherry_pick_changes.md @@ -21,6 +21,20 @@ where you can choose to either: - Cherry-pick the changes directly into the selected branch. - Create a new merge request with the cherry-picked changes. +### Cherry-pick tracking + +> [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/2675) in GitLab 12.9. + +When you cherry-pick a merge commit, GitLab will output a system note to the related merge +request thread crosslinking the new commit and the existing merge request. + + + +Each deployment's [list of associated merge requests](../../../api/deployments.md#list-of-merge-requests-associated-with-a-deployment) will include cherry-picked merge commits. + +NOTE: **Note:** +We only track cherry-pick executed from GitLab (both UI and API). Support for [tracking cherry-picked commits through the command line](https://gitlab.com/gitlab-org/gitlab/issues/202215) is planned for a future release. + ## Cherry-picking a commit You can cherry-pick a commit from the commit details page: diff --git a/doc/user/project/merge_requests/img/cherry_pick_mr_timeline_v12_9.png b/doc/user/project/merge_requests/img/cherry_pick_mr_timeline_v12_9.png Binary files differnew file mode 100644 index 00000000000..919b576fcc6 --- /dev/null +++ b/doc/user/project/merge_requests/img/cherry_pick_mr_timeline_v12_9.png diff --git a/doc/user/project/pages/introduction.md b/doc/user/project/pages/introduction.md index 359a9b4489a..f95ee26a226 100644 --- a/doc/user/project/pages/introduction.md +++ b/doc/user/project/pages/introduction.md @@ -297,7 +297,7 @@ For a list of known issues, visit GitLab's [public issue tracker]. [staticgen]: https://www.staticgen.com/ [pages-jekyll]: https://gitlab.com/pages/jekyll [metarefresh]: https://en.wikipedia.org/wiki/Meta_refresh -[public issue tracker]: https://gitlab.com/gitlab-org/gitlab-foss/issues?label_name=pages +[public issue tracker]: https://gitlab.com/gitlab-org/gitlab/-/issues?label_name[]=Category%3APages [quick start guide]: ../../../ci/quick_start/README.md [pages-index-guide]: index.md [pages-quick]: getting_started_part_one.md |