Document offline download procedure for malware advisories

What does this MR do?

GitLab malware advisories are distributed by an authenticated service, so an offline instance cannot download them, and the docs currently say the synchronization is unavailable. This adds the administrator procedure as ### Download GitLab malware advisories under the existing ## Enabling the Package Metadata Database section, alongside the license and advisory exports it sits next to on disk. The script exchanges an offline license key with CustomersDot for a token, downloads the current snapshot, and writes the v3/<registry_id>/full_dataset/ tree that the MalwareOffline connector reads. It also replaces the note in doc/user/application_security/gitlab_advisory_database/_index.md that says offline synchronization is unavailable and points at this issue.

The script clears each dataset directory before downloading, and the copy step uses rsync --delete, because the connector globs every archive in full_dataset/ and leftovers from a snapshot with more shards would be imported alongside the new ones. It downloads a whole snapshot rather than a delta, since the offline connector only reads full_dataset/, but it compares the snapshot on the service against the one already on disk and skips the download when they match, so running it on a schedule does not refetch the same data. The prerequisites call out that the distribution service is on the gitlab.net domain, since an egress allowlist limited to gitlab.com cannot reach it.

Relates to

Edited by Ahmad Zaydan

Merge request reports

Loading
Loading