Es kann sein, dass du einen Grund hast, ein Secret in ein Repository zu committen, wie z. B. wenn du ein Fake-Secret in der Dokumentation oder in einer Beispielanwendung bereitstellen willst. In diesen Fällen kannst du die Warnung schnell zurückweisen und die Gründe dokumentieren. Es kann aber auch vorkommen, dass du ein Verzeichnis ganz ignorieren willst, um keine falschen Positivergebnisse zu erstellen. Sie können beispielsweise eine monolithische Anwendung mit mehreren Integrationen haben, die eine Datei mit Dummyschlüsseln enthalten, die zahlreiche falsche Warnungen für die Triage festlegen könnten.
Sie können eine secret_scanning.yml Datei so konfigurieren, dass Warnungen, die in bestimmten Verzeichnissen secret scanninggefunden werden, automatisch geschlossen werden, und diese Verzeichnisse, die im Pushschutz enthalten sind, ausschließen. Diese Warnungen werden mit dem Status „ignored by configuration“ geschlossen.
Verzeichnisse aus Warnungen zur geheimen Codesuche für Benutzer ausschließen
-
Navigieren Sie auf GitHub zur Hauptseite des Repositorys.
-
Wähle über der Liste der Dateien das Dropdownmenü Add file aus, und klicke auf Create new file.
Alternativ kannst du in der Dateistrukturansicht links auf klicken.

-
Im Feld Dateiname gibst du „.github/secret_scanning.yml“ ein.
-
Geben Sie unter Neue Datei bearbeiten
paths-ignore:ein, gefolgt von den Pfaden, die Sie aus secret scanning ausschließen möchten.YAML paths-ignore: - "docs/**"
paths-ignore: - "docs/**"Dadurch wird secret scanning angewiesen, Warnmeldungen für alles im Verzeichnis
docsautomatisch zu schließen. Sie können diese Beispieldatei als Vorlage verwenden, um die Dateien und Ordner hinzuzufügen, die Sie aus Ihren eigenen Repositorys ausschließen möchten.Du kannst auch Sonderzeichen wie z. B.
*verwenden, um Pfade zu filtern. Weitere Informationen zu Filtermustern findest du unter Workflow-Syntax für GitHub Actions.YAML paths-ignore: - "foo/bar/*.js"
paths-ignore: - "foo/bar/*.js"Hinweis
- Wenn
paths-ignoremehr als 1.000 Einträge enthält, schließt secret scanning nur die ersten 1.000 Verzeichnisse von Scans aus. - Wenn
secret_scanning.ymlgrößer als 1 MB ist, ignoriert secret scanning die gesamte Datei.
- Wenn
Überprüfen, ob der Ordner aus secret scanning ausgeschlossen ist.
-
Öffne eine Datei in einem Verzeichnis, das du vom Secret Scanning ausgeschlossen hast
-
Füge ein vorab validiertes Secret oder ein Test-Secret ein.
-
Führen Sie für die Änderung einen Commit aus.
-
Navigieren Sie auf GitHub zur Hauptseite des Repositorys.
-
Klicken Sie unter dem Repositorynamen auf die Security and quality Registerkarte. Wenn die Registerkarte " Security and quality" nicht angezeigt wird, wählen Sie das Dropdownmenü aus, und klicken Sie dann auf Security and quality. Es sollten keine neuen offenen Warnungen für den geheimen Schlüssel vorhanden sein, den Sie gerade in die Datei eingeführt haben.
Bewährte Methoden
Zu den bewährten Methoden gehören:
- Minimiere die Anzahl der ausgeschlossenen Verzeichnisse und sei so präzise wie möglich bei der Definition der Ausschlüsse. Dadurch wird sichergestellt, dass die Anweisungen so klar wie möglich sind und dass die Ausschlüsse wie beabsichtigt funktionieren.
- Erkläre in einem Kommentar in der
secret_scanning.yml-Datei, warum eine bestimmte Datei oder ein bestimmter Ordner ausgeschlossen wird. Wie bei normalem Code verdeutlicht die Verwendung von Kommentaren deine Intention und macht es für andere einfacher, das gewünschte Verhalten zu verstehen. - Überprüfe die
secret_scanning.yml-Datei regelmäßig. Einige Ausschlüsse können mit der Zeit nicht mehr zutreffen, und es ist eine gute Praxis, die Datei sauber und aktuell zu halten. Die Verwendung von Kommentaren, wie oben empfohlen, kann dabei helfen. - Informiere das Sicherheitsteam darüber, welche Dateien und Ordner du ausgeschlossen hast und warum. Eine gute Kommunikation ist wichtig, um sicherzustellen, dass alle auf der gleichen Seite stehen und verstehen, warum bestimmte Ordner oder Dateien ausgeschlossen werden.