In diesem Leitfaden wird beschrieben, wie Sie mit der Security Command Center API Sicherheitsmarkierungen verwalten. Sicherheitsmarkierungen oder „Markierungen“ sind anpassbare Annotationen für Assets oder Ergebnisse in Security Command Center, mit denen Sie Objekten Ihren eigenen geschäftlichen Kontext hinzufügen können.
Sie können Sicherheitsmarkierungen nur für Assets hinzufügen oder aktualisieren, die von Security Command Center unterstützt werden. Eine Liste der Assets, die von Security Command Center unterstützt werden, finden Sie unter Unterstützte Asset-Typen in Security Command Center.
Hinweise
Bevor Sie mit Sicherheitsmarkierungen arbeiten können, müssen Sie ein Dienstkonto und SDK einrichten.
Um Sicherheitsmarkierungen hinzuzufügen oder zu ändern, benötigen Sie eine IAM-Rolle (Identity and Access Management), die Berechtigungen für die Art der zu verwendenden Markierung enthält:
- Asset-Markierungen: Autor für Asset-Sicherheitsmarkierungen,
securitycenter.assetSecurityMarksWriter
- Ergebnis: Autor für Ergebnis-Sicherheitsmarkierungen,
securitycenter.findingSecurityMarksWriter
Weitere Informationen zu IAM-Rollen in Security Command Center finden Sie unter Zugriffssteuerung. Informationen zur effektiven Verwendung von Sicherheitsmarkierungen finden Sie unter Security Command Center-Sicherheitsmarkierungen verwenden.
Sicherheitsmarkierungen für Assets hinzufügen oder aktualisieren
Wenn die Security Command Center API verwendet wird, erfolgt das Hinzufügen und Aktualisieren von Sicherheitsmarkierungen auf dieselbe Weise. Das Beispiel zeigt, wie Sie Sicherheitsmarkierungen für die Schlüssel/Wert-Paare (key_a, value_a)
und (key_b, value_b)
hinzufügen.
Im folgenden Code werden Feldmasken verwendet, damit nur diese Werte aktualisiert werden. Wenn keine Feldmasken angegeben sind, werden alle Sicherheitsmarkierungen gelöscht, bevor die jeweiligen Schlüssel und Werte hinzugefügt werden.
gcloud
gcloud scc assets update-marks ASSET_ID \ --PARENT=PARENT_ID \ --location=LOCATION \ --security-marks=SECURITY_MARKS \ --update-mask=UPDATE_MASK
Ersetzen Sie Folgendes:
ASSET_ID
: Das zu aktualisierende Asset.PARENT
: die Ebene der Ressourcenhierarchie, auf der sich das Asset befindet. Verwenden Sieorganization
,folder
oderproject
.PARENT_ID
: Die numerische ID der übergeordneten Organisation, des übergeordneten Ordners oder des übergeordneten Projekts oder die alphanumerische ID des übergeordneten Projekts.LOCATION
: der Security Command Center-Standort, an dem eine Sicherheitsmarkierung für ein Asset aktualisiert werden soll. Wenn die Datenresidenz aktiviert ist, verwenden Sieeu
,ksa
oderus
. Andernfalls verwenden Sie den Wertglobal
.SECURITY_MARKS
: durch Kommas getrennte Schlüssel/Wert-Paare, die Sicherheitsmarkierungen und ihre Werte darstellen, z. B.key_a=value_a,key_b=value_b
.UPDATE_MASK
: Eine durch Kommas getrennte Liste der Sicherheitsmarkierungsfelder, die für das Asset aktualisiert werden sollen, z. B.marks.key_a,marks.key_b
.
Go
Python
Informationen zu dedizierten Asset-Markierungen für Detektoren von Security Health Analytics finden Sie unter Richtlinien verwalten.
Sicherheitsmarkierungen für Assets löschen
Das Löschen bestimmter Sicherheitsmarkierungen erfolgt auf ähnliche Weise wie das Hinzufügen oder Aktualisieren, insbesondere das Aufrufen der Aktualisierung mit einer Feldmaske, jedoch ohne entsprechenden Wert. Im Beispiel werden Sicherheitsmarkierungen mit den Schlüsseln key_a
und key_b
gelöscht.
gcloud
gcloud scc assets update-marks ASSET_ID \ --PARENT=PARENT_ID \ --location=LOCATION \ --update-mask=UPDATE_MASK
ASSET_ID
: Das zu aktualisierende Asset.PARENT
: die Ebene der Ressourcenhierarchie, auf der sich das Asset befindet. Verwenden Sieorganization
,folder
oderproject
.PARENT_ID
: Die numerische ID der übergeordneten Organisation, des übergeordneten Ordners oder des übergeordneten Projekts oder die alphanumerische ID des übergeordneten Projekts.LOCATION
: Der Security Command Center-Standort, an dem eine Sicherheitsmarkierung aus einem Asset gelöscht werden soll. Wenn die Datenresidenz aktiviert ist, verwenden Sieeu
,ksa
oderus
. Andernfalls verwenden Sie den Wertglobal
.UPDATE_MASK
: Eine durch Kommas getrennte Liste der Felder für Sicherheitskennzeichnungen, die aus dem Asset gelöscht werden sollen, z. B.marks.key_a,marks.key_b
.
Node.js
Python
Sicherheitsmarkierungen in derselben Anfrage hinzufügen und löschen
Die Technik zum Hinzufügen und Aktualisieren von Sicherheitsmarkierungen und zum Löschen von Sicherheitsmarkierungen kann in derselben Anfrage kombiniert werden. Im Beispiel wird key_a
aktualisiert und key_b
gelöscht.
gcloud
gcloud scc assets update-marks ASSET_ID \ --PARENT=PARENT_ID \ --location=LOCATION \ --update-mask=UPDATE_MASK
ASSET_ID
: Das zu aktualisierende Asset.PARENT
: die Ebene der Ressourcenhierarchie, auf der sich das Asset befindet. Verwenden Sieorganization
,folder
oderproject
.PARENT_ID
: Die numerische ID der übergeordneten Organisation, des übergeordneten Ordners oder des übergeordneten Projekts oder die alphanumerische ID des übergeordneten Projekts.LOCATION
: der Security Command Center-Standort, an dem Sicherheitsmarkierungen für ein Asset aktualisiert und gelöscht werden sollen. Wenn die Datenresidenz aktiviert ist, verwenden Sieeu
,ksa
oderus
. Andernfalls verwenden Sie den Wertglobal
.SECURITY_MARKS
: durch Kommas getrennte Schlüssel/Wert-Paare, die Sicherheitsmarkierungen darstellen, die Sie aktualisieren möchten, z. B.key_a=value_a
. Lassen Sie Sicherheitsmarkierungen weg, die Sie löschen möchten.UPDATE_MASK
: eine durch Kommas getrennte Liste der Felder für Sicherheitsmarkierungen, die aktualisiert oder gelöscht werden sollen, z. B.marks.key_a,marks.key_b
.
Node.js
Python
Sicherheitsmarkierungen zu Ergebnissen hinzufügen
Das Hinzufügen, Aktualisieren und Löschen von Sicherheitsmarkierungen für Ergebnisse erfolgt auf die gleiche Weise wie das Aktualisieren von Sicherheitsmarkierungen in Assets. Der einzige Unterschied ist der Name der im API-Aufruf verwendeten Ressource. Geben Sie anstelle einer Asset-Ressource einen Ressourcennamen für die Suche an.
Verwenden Sie beispielsweise den folgenden Code, um Sicherheitsmarkierungen für ein Ergebnis zu aktualisieren:
gcloud
gcloud scc findings update-marks FINDING_NAME \ --PARENT=PARENT_ID \ --location=LOCATION \ --source=SOURCE_ID \ --security-marks=SECURITY_MARKS \ --update-mask=UPDATE_MASK
Ersetzen Sie Folgendes:
FINDING_NAME
: Das zu aktualisierende Ergebnis.PARENT
: die Ebene der Ressourcenhierarchie, auf der sich der Befund befindet. Verwenden Sieorganization
,folder
oderproject
.PARENT_ID
: Die numerische ID der übergeordneten Organisation, des übergeordneten Ordners oder des übergeordneten Projekts oder die alphanumerische ID des übergeordneten Projekts.LOCATION
: der Security Command Center-Standort, an dem eine Sicherheitsmarkierung für ein Ergebnis aktualisiert werden soll. Wenn die Datenresidenz aktiviert ist, verwenden Sieeu
,ksa
oderus
. Andernfalls verwenden Sie den Wertglobal
.SOURCE_ID
: die Quell-ID.SECURITY_MARKS
: durch Kommas getrennte Schlüssel/Wert-Paare, die Sicherheitsmarkierungen und ihre Werte darstellen, z. B.key_a=value_a,key_b=value_b
.UPDATE_MASK
: Eine durch Kommas getrennte Liste der Sicherheitsmarkierungsfelder, die für das Asset aktualisiert werden sollen, z. B.marks.key_a,marks.key_b
.
Java
Node.js
Python
Sicherheitsmarkierungen werden während Batch-Scans verarbeitet, die zweimal täglich und nicht in Echtzeit ausgeführt werden. Es kann 12 bis 24 Stunden dauern, bis Sicherheitsmarkierungen verarbeitet und Erzwingungsrichtlinien angewendet werden, die Ergebnisse auflösen oder wieder öffnen.
Assets mit Sicherheitsmarkierungsfiltern auflisten
Wenn Sicherheitsmarkierungen für ein Asset festgelegt sind, können sie im Filterargument für den API-Aufruf ListAssets
verwendet werden. Wenn Sie beispielsweise alle Assets abfragen möchten, bei denen key_a = value_a
verwendet wird, verwenden Sie den folgenden Code:
gcloud
# ORGANIZATION=12344321 FILTER="security_marks.marks.key_a = \"value_a\"" gcloud scc assets list $ORGANIZATION \ --filter="$FILTER"
Go
Java
Node.js
Python
Ergebnisse mit Sicherheitsmarkierungsfiltern auflisten
Wenn Sicherheitsmarkierungen für ein Ergebnis festgelegt sind, können sie im Filterargument für den API-Aufruf ListFindings
verwendet werden. Wenn Sie beispielsweise alle Assets mit key_a != value_a
abfragen möchten, verwenden Sie den folgenden Code:
gcloud
gcloud scc findings list PARENT/PARENT_ID \ --location=LOCATION \ --source=SOURCE_ID \ --filter=FILTER
PARENT
: die Ebene der Ressourcenhierarchie, auf der sich der Befund befindet. Verwenden Sieorganizations
,folders
oderprojects
.PARENT_ID
: Die numerische ID der übergeordneten Organisation, des übergeordneten Ordners oder des übergeordneten Projekts oder die alphanumerische ID des übergeordneten Projekts.LOCATION
: Der Security Command Center-Standort, an dem Ergebnisse aufgeführt werden sollen. Wenn die Datenresidenz aktiviert ist, verwenden Sieeu
,ksa
oderus
. Andernfalls verwenden Sie den Wertglobal
.SOURCE_ID
: die Quell-ID.FILTER
: der Filter, der auf die Ergebnisse angewendet werden soll. Wenn Sie beispielsweise Ergebnisse mit der Sicherheitsmarkierungkey_a=value_a
ausschließen möchten, verwenden Sie"NOT security_marks.marks.key_a=\"value_a\""
.