Automatische Sicherheitsscans ausführen

In diesem Thema wird beschrieben, wie Sie den automatische Sicherheitsscan einleiten und den aktuellen Status anzeigen.

Workflow des Sicherheitsscans

Das folgende Diagramm zeigt, wie sich der Sicherheitsscan in den Workflow zur Entwicklung und Veröffentlichung einer Snowflake Native App einfügt:

../../_images/security-scan-overview.png

Dieser Workflow umfasst die folgenden Schritte:

  1. Erstellen eines Anwendungspakets

  2. Aktualisieren des Anwendungscodes und der zugehörigen Dateien.

    Vergewissern Sie sich vor der Durchführung des automatischen Sicherheitsscans, dass die App den Sicherheitsnforderungen und den Best Practices entspricht, die unter Sicherheitsanforderungen und Best Practices für ein Snowflake Native App beschrieben sind. Wenn es sich bei der App um eine Snowflake Native App with Snowpark Container Services handelt, prüfen Sie die zusätzlichen Anforderungen an die Sicherheit, die unter Sichern von Snowflake Native App with Snowpark Container Services aufgeführt sind.

  3. Fügen Sie dem Anwendungspaket eine Version oder einen Patch hinzu.

  4. Führen Sie den automatischen Sicherheitsscan durch. Der automatische Sicherheitsscan beginnt, wenn der Anbieter eine der folgenden Aktionen ausführt:

    • Fügt dem Anwendungspaket eine neue Version oder einen Patch hinzu, wenn die Eigenschaft DISTRIBUTION auf EXTERNAL gesetzt ist. Die neue Version wird automatisch gescannt.

    • Setzt die Eigenschaft DISTRIBUTION auf „EXTERNAL“ für ein Anwendungspaket, für das bereits eine Version definiert ist. Die zehn neuesten Versionen des Anwendungspakets werden automatisch gescannt. Alle Patches für diese Versionen werden ebenfalls gescannt.

  5. Warten Sie die Ergebnisse des Scans ab.

    Wenn der Scan genehmigt wird, kann der Anbieter mit dem Prozess der Veröffentlichung der App fortfahren.

    Wenn der Scan abgelehnt wird, muss der Anbieter den Anwendungscode anhand der Ergebnisse des Scans aktualisieren. Alternativ kann der Anbieter gegen die Ablehnung Widerspruch einlegen.

  6. Erstellen oder ändern Sie die Release-Richtlinie für die App.

  7. Erstellen Sie ein Freigabeangebot für die App.

  8. Senden Sie das Freigabeangebot zur Genehmigung an Snowflake.

    Wenn das Freigabeangebot genehmigt wird, kann der Anbieter das Freigabeangebot auf dem Snowflake Marketplace veröffentlichen.

    Wenn das Freigabeangebot abgelehnt wird, muss der Anbieter das Freigabeangebot aktualisieren und erneut zur Genehmigung vorlegen.

  9. Veröffentlichen des Freigabeangebots.

Stellen Sie die DISTRIBUTION-Eigenschaft für ein Anwendungspaket ein

Die DISTRIBUTION-Eigenschaft eines Anwendungspakets gibt an, welchen Typ von Freigabeangebot ein Anbieter erstellen kann, wenn er das Anwendungspaket als Datenprodukt eines Freigabeangebots verwendet. Diese Eigenschaft hat die folgenden Werte:

  • INTERNAL gibt an, dass ein Anbieter ein privates Freigabeangebot nur innerhalb derselben Organisation erstellen kann, in der das Anwendungspaket erstellt wurde. Der automatische Sicherheitsscan wird nicht durchgeführt, wenn die DISTRIBUTION-Eigenschaft auf INTERNAL eingestellt ist.

  • EXTERNAL gibt an, dass ein Anbieter Freigabeangebote außerhalb derselben Organisation erstellen kann, in der das Anwendungspaket erstellt wurde. Dazu zählen:

    • Private Freigabeangebote außerhalb der Organisation des Anbieters.

    • Öffentliche Freigabeangebote.

    • Marketplace-Freigabeangebote.

Ein Anbieter kann die DISTRIBUTION-Eigenschaft bei der Erstellung des Anwendungspakets oder nachträglich einstellen.

Um die DISTRIBUTION-Eigenschaft bei der Erstellung eines Anwendungspakets festzulegen, führen Sie die CREATE APPLICATION PACKAGE wie im folgenden Beispiel gezeigt aus:

CREATE APPLICATION PACKAGE hello_snowflake_package
  DISTRIBUTION = EXTERNAL;
Copy

Wenn ein Anbieter bei der Erstellung des Anwendungspakets die DISTRIBUTION-Eigenschaft festlegt, werden alle Versionen oder Patches, die dem Anwendungspaket später hinzugefügt werden, sofort gescannt.

Um die DISTRIBUTION-Eigenschaft für ein vorhandenes Anwendungspaket einzustellen, führen Sie die ALTER APPLICATION PACKAGE wie im folgenden Beispiel gezeigt aus:

ALTER APPLICATION PACKAGE hello_snowflake_package
  SET DISTRIBUTION = EXTERNAL;
Copy

Wenn ein Anbieter die DISTRIBUTION-Eigenschaft für ein bestehendes Anwendungspaket einstellt, wird der automatische Sicherheitsscan automatisch für die zehn neuesten Versionen der App durchgeführt. Alle Patches für diese Versionen werden ebenfalls gescannt.

Anzeigen des Status des automatischen Sicherheitsscans

Um den Status des automatischen Sicherheitsscans anzuzeigen, führen Sie den SHOW VERSIONS-Befehl aus, wie im folgenden Beispiel gezeigt:

SHOW VERSIONS IN APPLICATION PACKAGE hello_snowflake_package;
Copy

Die Spalte review_status zeigt den Status der automatischen Überprüfung an. Mögliche Werte sind:

  • NOT_REVIEWED zeigt an, dass der automatische Sicherheitsscan für dieses Anwendungspaket nicht durchgeführt wurde.

  • IN_PROGRESS zeigt an, dass der automatische Sicherheitsscan gerade läuft.

  • APPROVED zeigt an, dass der automatische Sicherheitsscan abgeschlossen und das Anwendungspaket genehmigt wurde. Der Anbieter kann die Release-Richtlinie für das Anwendungspaket festlegen.

  • REJECTED zeigt an, dass der automatische Sicherheitsscan abgeschlossen, das Anwendungspaket jedoch nicht genehmigt wurde.

Bemerkung

Wenn ein automatischer Sicherheitsscan fehlschlägt, überprüft Snowflake das Anwendungspaket manuell. Nachdem die manuelle Überprüfung abgeschlossen ist, wird der Status auf APPROVED oder REJECTED aktualisiert.

Einspruch gegen eine Ablehnung

Wenn nach einer manuellen Überprüfung durch Snowflake kritische Schwachstellen oder Richtlinienverstöße gefunden werden, wird das Anwendungspaket abgelehnt und der Anbieter per E-Mail benachrichtigt.

Ein Anbieter kann gegen die Ablehnung Einspruch erheben, indem er ein Support-Ticket für den Schweregrad 4 eröffnet. Wenn Sie gegen eine Ablehnung auf der Grundlage von CVE Einspruch erheben, müssen die Anbieter eine detaillierte Dokumentation einreichen, die Folgendes erklären:

  • Warum die CVE nicht in der Anwendung genutzt werden kann

  • Bericht zur Erreichbarkeitsanalyse, falls verfügbar

  • Ein Plan für die Aktualisierung auf die korrigierte Version

  • Falls keine Aktualisierung geplant ist, eine ausführliche Erklärung, warum eine anfällige Version nicht aktualisiert werden kann

Das Snowflake-Sicherheitsteam prüft und entscheidet über alle Einsprüche.

Weitere Informationen zum Einspruchverfahren finden Sie unter Einspruch gegen eine fehlgeschlagene Sicherheitsüberprüfung.

Laufende Sicherheitüberwachung und Behebung

Nachdem eine App genehmigt und auf dem Snowflake Marketplace veröffentlicht wurde, wird sie einer kontinuierlichen Sicherheitsüberwachung unterzogen, um die Sicherheit und Konformität zu gewährleisten. Dies beinhaltet:

  • Regelmäßige Analyse der Image-Sicherheit, um neue Schwachstellen oder Richtlinienverstöße zu erkennen.

  • Wenn Probleme entdeckt werden, wird der Anbieter benachrichtigt und hat 30 Werktage Zeit, die App zu patchen oder innerhalb von 15 Tagen eine Ausnahme anzufordern.

Wenn nach 30 Tagen keine Aktion erfolgt, kann die App vom Marketplace genommen werden.