Auf dieser Seite wird erläutert, wie Sie Security Command Center API-Benachrichtigungen aktivieren.
Benachrichtigungen senden Ergebnisse und Ergebnisaktualisierungen innerhalb von Minuten an ein Pub/Sub-Thema. Die Benachrichtigungen der Security Command Center API enthalten alle Ergebnisinformationen, die von Security Command Center in der Google Cloud Console angezeigt werden.
Sie können Security Command Center-Benachrichtigungen in Pub/Sub direkt mit Cloud Functions-Aktionen verbinden. Beispielfunktionen, die beim Antworten, bei der Anreicherung und der Problembehebung helfen, finden Sie im Open-Source-Repository von Security Command Center unter Cloud Functions-Code. Das Repository enthält Lösungen, die Sie bei der Durchführung automatisierter Aktionen zu Sicherheitsergebnissen unterstützen.
Alternativ können Sie Ergebnisse nach BigQuery exportieren oder in der Google Cloud Console kontinuierliche Exporte für Pub/Sub einrichten.
Hinweise
Zum Einrichten und Konfigurieren von Benachrichtigungen benötigen Sie die folgenden IAM-Rollen (Identity and Access Management):
- Sicherheitscenter-Administrator (
roles/securitycenter.Admin
): zum Aktivieren von Benachrichtigungen der Security Command Center API - Security Center Admin Viewer (
roles/securitycenter.adminViewer
): für den Zugriff auf Security Command Center in der Google Cloud Console - Wenn Sie dem Dienstkonto für Benachrichtigungen oder dem gcloud CLI-Konto Rollen auf Organisations-, Ordner- oder Projektebene zuweisen möchten, müssen Sie dafür eine der folgenden Rollen verwenden:
- Administrator der Organisation (
roles/resourcemanager.organizationAdmin
) - Ordner-IAM-Administrator (
roles/resourcemanager.folderIamAdmin
) - Project IAM Admin (
roles/resourcemanager.projectIamAdmin
)
- Administrator der Organisation (
Die IAM-Rollen für Security Command Center können auf Organisations-, Ordner- oder Projektebene gewährt werden. Die Möglichkeit, Ergebnisse, Assets und Sicherheitsquellen anzusehen, zu bearbeiten, zu erstellen oder zu aktualisieren, hängt von der Ebene ab, auf die Ihnen Zugriff gewährt wurde. Weitere Informationen zu Security Command Center-Rollen finden Sie unter Zugriffssteuerung.
Security Command Center API-Benachrichtigungen einrichten
Aktivieren Sie zum Einrichten von Benachrichtigungen der Security Command Center API.
Security Command Center API aktivieren
So aktivieren Sie das Security Command Center API:
Rufen Sie in der Google Cloud Console die Seite „API-Bibliothek“ auf.
Wählen Sie das Projekt aus, für das Sie die Benachrichtigungs-API aktivieren möchten.
Geben Sie im Feld Suchen
Security Command Center
ein und klicken Sie dann in den Suchergebnissen auf Security Command Center.Klicken Sie auf der angezeigten API-Seite auf Aktivieren.
Die Security Command Center API ist für Ihr Projekt aktiviert. Als Nächstes verwenden Sie das gcloud-CLI oder die Clientbibliotheken, um ein Pub/Sub-Thema zu abonnieren und Berechtigungen einzurichten.
Datenstandort und Benachrichtigungen
Wenn der Datenstandort für Security Command Center aktiviert ist, unterliegen die Konfigurationen, mit denen kontinuierliche Exporte in Pub/Sub-Ressourcen (notificationConfig
) definiert werden, der Datenstandortkontrolle und werden an Ihrem Security Command Center-Standort gespeichert.
Wenn Sie Ergebnisse von einem Security Command Center-Speicherort nach Pub/Sub exportieren möchten, müssen Sie den kontinuierlichen Export am selben Security Command Center-Speicherort wie die Ergebnisse konfigurieren.
Da die in kontinuierlichen Exporten verwendeten Filter Daten enthalten können, die Standortkontrollen unterliegen, müssen Sie vor dem Erstellen unbedingt den richtigen Speicherort angeben. Security Command Center schränkt nicht den Speicherort ein, an dem Exporte erstellt werden.
Kontinuierliche Exporte werden nur an dem Ort gespeichert, an dem sie erstellt wurden. Sie können nicht an anderen Orten aufgerufen oder bearbeitet werden.
Nachdem Sie einen kontinuierlichen Export erstellt haben, können Sie seinen Speicherort nicht mehr ändern. Wenn Sie den Speicherort ändern möchten, müssen Sie den kontinuierlichen Export löschen und am neuen Speicherort neu erstellen.
Wenn Sie einen kontinuierlichen Export mithilfe von API-Aufrufen abrufen möchten, müssen Sie den Standort im vollständigen Ressourcennamen von notificationConfig
angeben. Beispiel:
GET https://securitycenter.googleapis.com/v2/{name=organizations/123/locations/eu/notificationConfigs/my-pubsub-export-01}
Wenn Sie einen kontinuierlichen Export über die gcloud CLI abrufen möchten, müssen Sie den Speicherort auf ähnliche Weise entweder im vollständigen Ressourcennamen der Konfiguration oder mithilfe des Flags --locations
angeben. Beispiel:
gcloud scc notifications describe myContinuousExport organizations/123 \ --location=locations/us
Pub/Sub-Thema einrichten
In diesem Schritt erstellen und abonnieren Sie das Pub/Sub-Thema, an das Sie Benachrichtigungen senden möchten. Wenn Sie die API nicht programmatisch aufrufen müssen, werden die Befehle des gcloud CLI empfohlen.
gcloud
Führen Sie die folgenden Schritte aus, um das Benachrichtigungsfeature der Security Command Center API mit dem gcloud-CLI einzurichten:
- Pub/Sub-Thema und -Abo einrichten.
- Kontoberechtigungen für das gcloud-CLI einrichten
Schritt 1: Pub/Sub einrichten
So richten Sie ein Pub/Sub-Thema ein und abonnieren es:
Öffnen Sie die Google Cloud Console.
Wählen Sie das Projekt aus, für das Sie die Security Command Center API aktiviert haben.
Klicken Sie auf Cloud Shell aktivieren .
Führen Sie den folgenden Befehl aus, um ein neues Pub/Sub-Thema zu erstellen oder ein vorhandenes Thema zu verwenden:
gcloud pubsub topics create TOPIC_ID
Ersetzen Sie
TOPIC_ID
durch Ihren Themennamen.Legen Sie die Umgebungsvariable für die Themen-ID fest:
export TOPIC_ID=TOPIC_ID
Erstellen Sie ein Abo für das Thema:
gcloud pubsub subscriptions create SUBSCRIPTION_ID --topic TOPIC_ID
Ersetzen Sie
SUBSCRIPTION_ID
durch den Namen Ihres Abos.
Weitere Informationen zum Einrichten von Pub/Sub finden Sie unter Themen und Abos verwalten.
Als Nächstes richten Sie Berechtigungen für Ihr Konto ein.
Schritt 2: Kontoberechtigungen für das gcloud-CLI einrichten
Zum Erstellen eines NotificationConfig
müssen Sie Ihrem gcloud CLI-Konto die folgenden Rollen zuweisen:
- Sicherheitscenter-Administrator (
roles/securitycenter.admin
) oder Bearbeiter von Sicherheitscenter-Benachrichtigungskonfigurationen (roles/securitycenter.notificationConfigEditor
). Diese Rolle muss auf derselben Ebene gewährt werden – Organisation, Ordner oder Projekt, auf der Sie dasNotificationConfig
erstellen. - Pub/Sub-Administrator (
roles/pubsub.admin
) für das Pub/Sub-Thema, das Benachrichtigungen empfängt
auf Organisations-, Ordner- oder Projektebene festgelegt haben,
So erteilen Sie diese Berechtigungen:
Öffnen Sie die Google Cloud Console.
Wählen Sie das Projekt aus, für das Sie die Security Command Center API aktiviert haben.
Klicken Sie auf Cloud Shell aktivieren.
Geben Sie den Namen Ihrer Organisation ein:
export ORGANIZATION_ID=ORGANIZATION_ID
Ersetzen Sie
ORGANIZATION_ID
durch Ihre Organisations-ID.Bestimmen Sie die Projekt-ID für das Projekt, zu dem das Pub/Sub-Thema gehört:
export PUBSUB_PROJECT=PROJECT_ID
Ersetzen Sie
PROJECT_ID
durch Ihre Projekt-ID.Bestimmen Sie das von Ihnen verwendete gcloud CLI-Konto:
export GCLOUD_ACCOUNT=EMAIL
Ersetzen Sie
EMAIL
durch die E-Mail-Adresse des Kontos, in dem gcloud CLI-Befehle ausgeführt werden.Legen Sie die Themen-ID fest oder verwenden Sie das zuvor eingerichtete Thema.
export TOPIC_ID=TOPIC_ID
Ersetzen Sie
TOPIC_ID
durch Ihren Themennamen.Gewähren Sie dem gcloud-CLI-Konto eine Pub/Sub-Rolle mit der Berechtigung
pubsub.topics.setIamPolicy
:gcloud pubsub topics add-iam-policy-binding \ projects/$PUBSUB_PROJECT/topics/$TOPIC_ID \ --member="user:$GCLOUD_ACCOUNT" \ --role='roles/pubsub.admin'
Weisen Sie dem gcloud CLI-Konto eine Rolle zu, die alle
securitycenter.notification
-Berechtigungen enthält, z. B.roles/securitycenter.notificationConfigEditor
oderroles/securitycenter.admin
. Sie können die Rolle auf Projekt-, Ordner- oder Organisationsebene zuweisen.So gewähren Sie die Rolle auf Projektebene:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="user:$GCLOUD_ACCOUNT" \ --role='ROLE_NAME'
Ersetzen Sie Folgendes:
PROJECT_ID
: die ID des Projekts, in dem Security Command Center aktiviert istROLE_NAME
: die Rolle, die zugewiesen werden soll
So gewähren Sie die Rolle auf Organisationsebene:
gcloud organizations add-iam-policy-binding $ORGANIZATION_ID \ --member="user:$GCLOUD_ACCOUNT" \ --role='ROLE_NAME'
Ersetzen Sie
ROLE_NAME
durch die Rolle, die zugewiesen werden soll.
Als Nächstes erstellen Sie eine NotificationConfig.
Clientbibliotheken
Führen Sie die folgenden Schritte aus, um das Benachrichtigungsfeature der Security Command Center API mithilfe der Clientbibliotheken einzurichten:
- Dienstkonto einrichten.
- API-Clientbibliotheken herunterladen.
- Entwicklungsumgebung einrichten.
- Pub/Sub-Thema und -Abo einrichten.
Schritt 1: Dienstkonto einrichten
Das Benachrichtigungsfeature der Security Command Center API verwendet ein Dienstkonto mit den entsprechenden Berechtigungen zum Konfigurieren von Benachrichtigungen. Dieses Dienstkonto wird nur für die anfängliche Einrichtung einer Konfiguration verwendet und kann später verwendet werden, um weitere Benachrichtigungskonfigurationen zu erstellen. Dieses Dienstkonto ist unabhängig von dem Dienstkonto, das beim Einrichten des Security Command Center für Sie erstellt wurde.
So erstellen Sie ein Dienstkonto:
Öffnen Sie die Google Cloud Console.
Wählen Sie das Projekt aus, für das Sie die Security Command Center API aktiviert haben.
Klicken Sie auf Cloud Shell aktivieren.
Legen Sie Umgebungsvariablen fest:
Geben Sie den Namen Ihrer Organisation ein:
export ORGANIZATION_ID=ORGANIZATION_ID
Ersetzen Sie
ORGANIZATION_ID
durch Ihre Organisations-ID.Legen Sie die Projekt-ID für das Projekt fest, in dem Sie das Benachrichtigungs-API aktivieren möchten:
export PROJECT_ID=PROJECT_ID
Ersetzen Sie
PROJECT_ID
durch Ihre Projekt-ID.Legen Sie die benutzerdefinierte ID fest, die Sie für das neue Dienstkonto verwenden möchten, z. B.
scc-notifications
. Der Name des Dienstkontos muss zwischen 6 und 30 Zeichen lang sein, mit einem Buchstaben beginnen und darf nur alphanumerische Zeichen in Kleinschreibung sowie Bindestriche enthalten:export SERVICE_ACCOUNT=CUSTOM_ID
Ersetzen Sie
CUSTOM_ID
durch den benutzerdefinierten Namen des Dienstkontos.Legen Sie den Pfad fest, unter dem der Dienstkontoschlüssel gespeichert werden soll, z. B.
export KEY_LOCATION=/home/$USER/mykeys/$SERVICE_ACCOUNT.json
:export KEY_LOCATION=FULL_KEY_LOCATION_PATH # This is used by client libraries to find the key export GOOGLE_APPLICATION_CREDENTIALS=$KEY_LOCATION
Ersetzen Sie
FULL_KEY_LOCATION_PATH
durch den vollständigen Pfad zu Ihrem Dienstkontoschlüssel.
Erstellen Sie ein Ihrer Projekt-ID zugeordnetes Dienstkonto:
gcloud iam service-accounts create $SERVICE_ACCOUNT --display-name \ "Service Account for [USER]" --project $PROJECT_ID
Erstellen Sie einen Schlüssel zur Verknüpfung mit dem Dienstkonto. Der Schlüssel wird beim Erstellen einer
NotificationConfig
verwendet und dauerhaft unter derKEY_LOCATION
gespeichert, die Sie in vorherigen Schritten angegeben haben.gcloud iam service-accounts keys create $KEY_LOCATION --iam-account \ $SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com
Gewähren Sie dem Dienstkonto eine Rolle, die alle
securitycenter.notification
-Berechtigungen enthält, z. B.roles/securitycenter.notificationConfigEditor
oderroles/securitycenter.admin
. Sie können die Rolle auf Projekt-, Ordner- oder Organisationsebene zuweisen.So gewähren Sie die Rolle auf Projektebene:
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="serviceAccount:$SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com" \ --role='ROLE_NAME'
Ersetzen Sie
ROLE_NAME
durch die Rolle, die zugewiesen werden soll.So gewähren Sie die Rolle auf Organisationsebene:
gcloud organizations add-iam-policy-binding $ORGANIZATION_ID \ --member="serviceAccount:$SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com" \ --role='ROLE_NAME'
Ersetzen Sie
ROLE_NAME
durch die Rolle, die zugewiesen werden soll.
Das Dienstkonto ist jetzt für die Verwendung mit Benachrichtigungen eingerichtet und der Dienstkontoschlüssel wird unter dem von Ihnen angegebenen KEY_LOCATION
gespeichert. Weitere Informationen zu Dienstkonten finden Sie unter Dienstkontoschlüssel erstellen und verwalten.
Schritt 2: Entwicklungsumgebung einrichten
Um das Benachrichtigungsfeature der Security Command Center API zu nutzen, können Sie das gcloud CLI verwenden oder die Clientbibliotheken herunterladen und eine Entwicklungsumgebung für die Sprache Ihrer Wahl einrichten.
Python
Optional: Bevor Sie die Python-Bibliothek installieren, empfehlen wir Ihnen, mit Virtualenv eine isolierte Python-Umgebung zu erstellen.
virtualenv YOUR_ENV source YOUR_ENV/bin/activate
Ersetzen Sie
YOUR_ENV
durch den Namen Ihrer virtuellen Umgebung.Installieren Sie pip, um die Installation der Python-Bibliothek zu verwalten.
Führen Sie folgende Befehle aus, um die Python-Bibliothek zu installieren:
pip install google-cloud-securitycenter
Java
Wenn Sie die Java-Bibliothek von Security Command Center als Abhängigkeit in Ihr Projekt aufnehmen möchten, wählen Sie ein Artefakt aus dem Maven-Repository aus.
Benachrichtigungen sind in der Bibliothek ab Version 0.119.0
der Bibliothek enthalten.
Wenn Sie Intellij verwenden, legen Sie für die Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS
den absoluten Pfad des Dienstkontoschlüssels für Benachrichtigungen fest, den Sie in den vorherigen Schritten heruntergeladen haben:
- Klicken Sie in Intellij auf Ausführen > Konfigurationen bearbeiten.
Bestimmen Sie folgende Variable unter Anwendung > Run_Configuration_For_Sample > Umgebungsvariablen:
GOOGLE_APPLICATION_CREDENTIALS=ABSOLUTE_PATH_TO_SERVICE_ACCOUNT_KEY
Ersetzen Sie
ABSOLUTE_PATH_TO_SERVICE_ACCOUNT_KEY
durch den vollständigen Pfad zu Ihrem Dienstkontoschlüssel.
Einfach loslegen (Go)
Laden Sie die Go-Bibliothek herunter, um API-Go-Abhängigkeiten zu installieren:
go get cloud.google.com/go/securitycenter/apiv1
Node.js
Verwenden Sie im Projektordner npm
, um alle erforderlichen Abhängigkeiten der Benachrichtigungs-API zu installieren:
npm install --save @google-cloud/security-center/
Schritt 3: Pub/Sub einrichten
Wenn Sie Benachrichtigungen an Pub/Sub senden möchten, abonnieren Sie ein Pub/Sub-Thema und weisen Sie dem Benachrichtigungsdienstkonto eine IAM-Rolle mit der Berechtigung pubsub.topics.setIamPolicy
zu:
Erstellen Sie ein neues Pub/Sub-Thema oder verwenden Sie ein vorhandenes Thema:
gcloud pubsub topics create TOPIC_ID
Ersetzen Sie
TOPIC_ID
durch Ihre Themen-ID.Legen Sie Umgebungsvariablen fest:
Legen Sie die Themen-ID fest:
export TOPIC_ID=TOPIC_ID
Legen Sie die Projekt-ID für das Projekt fest, in dem Sie die Benachrichtigungs-API aktiviert haben:
export CONSUMER_PROJECT=PROJECT_ID
Ersetzen Sie
PROJECT_ID
durch Ihre Projekt-ID.Legen Sie die E-Mail-Adresse des Dienstkontos fest, das Sie in vorherigen Schritten erstellt haben:
export SERVICE_ACCOUNT_EMAIL=SERVICE_ACCOUNT_NAME@$CONSUMER_PROJECT.iam.gserviceaccount.com
Ersetzen Sie
SERVICE_ACCOUNT_NAME
durch den Namen des Dienstkontos.
Erstellen Sie ein Abo für das Thema:
gcloud pubsub subscriptions create SUBSCRIPTION_ID --topic TOPIC_ID
Ersetzen Sie
SUBSCRIPTION_ID
durch die Abo-ID.Gewähren Sie dem Benachrichtigungsdienstkonto eine Rolle mit dem Berechtigungs-
pubsub.topics.setIamPolicy
:gcloud pubsub topics add-iam-policy-binding \ projects/$CONSUMER_PROJECT/topics/$TOPIC_ID \ --member="serviceAccount:$SERVICE_ACCOUNT_EMAIL" \ --role='roles/pubsub.admin'
Weitere Informationen zum Einrichten von Pub/Sub finden Sie unter Themen und Abos verwalten. Im nächsten Schritt schließen Sie die Einrichtung ab, indem Sie eine NotificationConfig
erstellen.
NotificationConfig erstellen
Bevor Sie ein NotificationConfig
erstellen, beachten Sie, dass jede Organisation eine begrenzte Anzahl von NotificationConfig
-Dateien haben kann. Weitere Informationen finden Sie unter Kontingente und Limits.
Das Feld NotificationConfig
enthält ein Feld filter
, das Benachrichtigungen auf nützliche Ereignisse beschränkt. In diesem Feld werden alle Filter akzeptiert, die in der Methode findings.list
der Security Command Center API verfügbar sind.
Wenn Sie eine NotificationConfig
erstellen, geben Sie ein übergeordnetes Element für NotificationConfig
aus der Google Cloud-Ressourcenhierarchie an, entweder eine Organisation, einen Ordner oder ein Projekt. Wenn Sie die NotificationConfig
später abrufen, aktualisieren oder löschen möchten, müssen Sie die numerische ID der übergeordneten Organisation, des übergeordneten Ordners oder des Projekts angeben, wenn Sie darauf verweisen.
So erstellen Sie den NotificationConfig
mit der Sprache oder Plattform Ihrer Wahl:
gcloud
gcloud scc notifications create NOTIFICATION_NAME \ --PARENT=PARENT_ID \ --location=LOCATION --description="NOTIFICATION_DESCRIPTION" \ --pubsub-topic=PUBSUB_TOPIC \ --filter="FILTER"
Ersetzen Sie Folgendes:
NOTIFICATION_NAME
: der Name der Benachrichtigung. Muss 1 bis 128 Zeichen lang sein und darf nur alphanumerische Zeichen, Unterstriche oder Bindestriche enthalten.PARENT
: der Bereich in der Ressourcenhierarchie, für den die Benachrichtigung gilt,organization
,folder
oderproject
.PARENT_ID
: Die ID der übergeordneten Organisation, des übergeordneten Ordners oder des Projekts im Formatorganizations/123
,folders/456
oderprojects/789
.LOCATION
: Wenn der Datenstandort aktiviert ist, geben Sie den Speicherort von Security Command Center an, an dem die Benachrichtigung erstellt werden soll. Die resultierendenotificationConfig
-Ressource wird nur an diesem Speicherort gespeichert. Nur an diesem Standort ausgegebene Ergebnisse werden an Pub/Sub gesendet.Wenn der Datenstandort nicht aktiviert ist, wird durch Angabe des Flags
--location
die Benachrichtigung mithilfe der Security Command Center API v2 erstellt. Der einzige gültige Wert für das Flag istglobal
.NOTIFICATION_DESCRIPTION
: eine Beschreibung der Benachrichtigung mit maximal 1.024 Zeichen.PUBSUB_TOPIC
: Das Pub/Sub-Thema, das die Benachrichtigungen erhalten soll. Das Format istprojects/PROJECT_ID/topics/TOPIC
.FILTER
: Der Ausdruck, den Sie definieren, um auszuwählen, welche Ergebnisse an Pub/Sub gesendet werden. Beispiel:state="ACTIVE"
Python
Im folgenden Beispiel wird die API V1 verwendet. Wenn Sie das Beispiel für v2 ändern möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Für die meisten Ressourcen fügen Sie dem Ressourcennamen nach /PARENT/PARENT_ID
/locations/LOCATION
hinzu, wobei PARENT
entweder organizations
, folders
oder projects
ist.
Fügen Sie für Ergebnisse /locations/LOCATION
dem Ressourcennamen nach /sources/SOURCE_ID
hinzu, wobei SOURCE_ID
die ID des Security Command Center-Dienstes ist, der das Ergebnis ausgestellt hat.
Java
Im folgenden Beispiel wird die API V1 verwendet. Wenn Sie das Beispiel für v2 ändern möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Für die meisten Ressourcen fügen Sie dem Ressourcennamen nach /PARENT/PARENT_ID
/locations/LOCATION
hinzu, wobei PARENT
entweder organizations
, folders
oder projects
ist.
Fügen Sie für Ergebnisse /locations/LOCATION
dem Ressourcennamen nach /sources/SOURCE_ID
hinzu, wobei SOURCE_ID
die ID des Security Command Center-Dienstes ist, der das Ergebnis ausgestellt hat.
Einfach loslegen (Go)
Im folgenden Beispiel wird die API V1 verwendet. Wenn Sie das Beispiel für v2 ändern möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Für die meisten Ressourcen fügen Sie dem Ressourcennamen nach /PARENT/PARENT_ID
/locations/LOCATION
hinzu, wobei PARENT
entweder organizations
, folders
oder projects
ist.
Fügen Sie für Ergebnisse /locations/LOCATION
dem Ressourcennamen nach /sources/SOURCE_ID
hinzu, wobei SOURCE_ID
die ID des Security Command Center-Dienstes ist, der das Ergebnis ausgestellt hat.
Node.js
Im folgenden Beispiel wird die API V1 verwendet. Wenn Sie das Beispiel für v2 ändern möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Für die meisten Ressourcen fügen Sie dem Ressourcennamen nach /PARENT/PARENT_ID
/locations/LOCATION
hinzu, wobei PARENT
entweder organizations
, folders
oder projects
ist.
Fügen Sie für Ergebnisse /locations/LOCATION
dem Ressourcennamen nach /sources/SOURCE_ID
hinzu, wobei SOURCE_ID
die ID des Security Command Center-Dienstes ist, der das Ergebnis ausgestellt hat.
PHP
Im folgenden Beispiel wird die API V1 verwendet. Wenn Sie das Beispiel für v2 ändern möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Für die meisten Ressourcen fügen Sie dem Ressourcennamen nach /PARENT/PARENT_ID
/locations/LOCATION
hinzu, wobei PARENT
entweder organizations
, folders
oder projects
ist.
Fügen Sie für Ergebnisse /locations/LOCATION
dem Ressourcennamen nach /sources/SOURCE_ID
hinzu, wobei SOURCE_ID
die ID des Security Command Center-Dienstes ist, der das Ergebnis ausgestellt hat.
Ruby
Im folgenden Beispiel wird die API V1 verwendet. Wenn Sie das Beispiel für v2 ändern möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Für die meisten Ressourcen fügen Sie dem Ressourcennamen nach /PARENT/PARENT_ID
/locations/LOCATION
hinzu, wobei PARENT
entweder organizations
, folders
oder projects
ist.
Fügen Sie für Ergebnisse /locations/LOCATION
dem Ressourcennamen nach /sources/SOURCE_ID
hinzu, wobei SOURCE_ID
die ID des Security Command Center-Dienstes ist, der das Ergebnis ausgestellt hat.
C#
Im folgenden Beispiel wird die API V1 verwendet. Wenn Sie das Beispiel für v2 ändern möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Für die meisten Ressourcen fügen Sie dem Ressourcennamen nach /PARENT/PARENT_ID
/locations/LOCATION
hinzu, wobei PARENT
entweder organizations
, folders
oder projects
ist.
Fügen Sie für Ergebnisse /locations/LOCATION
dem Ressourcennamen nach /sources/SOURCE_ID
hinzu, wobei SOURCE_ID
die ID des Security Command Center-Dienstes ist, der das Ergebnis ausgestellt hat.
Benachrichtigungen werden jetzt in dem von Ihnen angegebenen Pub/Sub-Thema veröffentlicht.
Für die Veröffentlichung von Benachrichtigungen wird ein Dienstkonto in der Form service-org-ORGANIZATION_ID@gcp-sa-scc-notification.iam.gserviceaccount.com
erstellt.
Dieses Dienstkonto wird erstellt, wenn Sie Ihren ersten NotificationConfig
erstellen, und erhält beim Erstellen der Benachrichtigungskonfiguration automatisch die Rolle securitycenter.notificationServiceAgent
für die IAM-Richtlinie für PUBSUB_TOPIC.
Diese Dienstkontorolle ist erforderlich, damit Benachrichtigungen funktionieren.
Perimeterzugriff in VPC Service Controls gewähren
Wenn Sie VPC Service Controls verwenden und Ihr Pub/Sub-Thema Teil eines Projekts innerhalb eines Dienstperimeters ist, müssen Sie Zugriff auf Projekte gewähren, um Benachrichtigungen erstellen zu können.
Wenn Sie Zugriff auf Projekte gewähren möchten, erstellen Sie Regeln für eingehenden und ausgehenden Traffic für die Hauptkonten und Projekte, die zum Erstellen von Benachrichtigungen verwendet werden. Die Regeln erlauben den Zugriff auf geschützte Ressourcen und ermöglichen Pub/Sub zu prüfen, ob Nutzer die Berechtigung setIamPolicy
für das Pub/Sub-Thema haben.
Vor dem Erstellen einer NotificationConfig
Führen Sie die folgenden Schritte aus, bevor Sie die Schritte unter NotificationConfig erstellen ausführen:
Rufen Sie in der Google Cloud Console die Seite „VPC Service Controls“ auf.
Wählen Sie gegebenenfalls Ihre Organisation aus.
Klicken Sie auf den Namen des Dienstperimeters, den Sie ändern möchten.
Um den Dienstperimeter zu finden, den Sie ändern müssen, können Sie Ihre Logs auf Einträge prüfen, die
RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER
-Verstöße enthalten. Prüfen Sie in diesen Einträgen das FeldservicePerimeterName
:accessPolicies/ACCESS_POLICY_ID/servicePerimeters/SERVICE_PERIMETER_NAME
.Klicken Sie auf Perimeter bearbeiten.
Klicken Sie im Navigationsmenü auf Richtlinie für eingehenden Traffic.
Verwenden Sie die folgenden Parameter, um Regeln für eingehenden Traffic für Nutzer oder Dienstkonten zu konfigurieren:
- FROM-Attribute des API-Clients:
- Wählen Sie im Drop-down-Menü Quelle die Option Alle Quellen aus.
- Wählen Sie im Drop-down-Menü Identitäten die Option Ausgewählte Identitäten aus.
- Klicken Sie auf Auswählen und geben Sie dann das Hauptkonto ein, das zum Aufrufen der Security Command Center API verwendet wird.
- TO-Attribute von Google Cloud-Diensten/-Ressourcen:
- Wählen Sie im Drop-down-Menü Projekt die Option Ausgewählte Projekte aus.
- Klicken Sie auf Auswählen und geben Sie das Projekt ein, das das Pub/Sub-Thema enthält.
- Wählen Sie im Drop-down-Menü Dienste die Option Ausgewählte Dienste und dann Cloud Pub/Sub API aus.
- Wählen Sie im Drop-down-Menü Methoden die Option Alle Aktionen aus.
- FROM-Attribute des API-Clients:
Klicken Sie auf Speichern.
Klicken Sie im Navigationsmenü auf Richtlinie für ausgehenden Traffic.
Klicken Sie auf Add Rule (Regel hinzufügen).
Geben Sie folgende Parameter ein, um Regeln für ausgehenden Traffic für Nutzer- oder Dienstkonten zu konfigurieren:
- FROM-Attribute des API-Clients:
- Wählen Sie im Drop-down-Menü Identitäten die Option Ausgewählte Identitäten aus.
- Klicken Sie auf Auswählen und geben Sie dann das Hauptkonto ein, das zum Aufrufen der Security Command Center API verwendet wird.
- TO-Attribute von Google Cloud-Diensten/-Ressourcen:
- Wählen Sie im Drop-down-Menü Projekt die Option Alle Projekte aus.
- Wählen Sie im Drop-down-Menü Dienste die Option Ausgewählte Dienste und dann Cloud Pub/Sub API aus.
- Wählen Sie im Drop-down-Menü Methoden die Option Alle Aktionen aus.
- FROM-Attribute des API-Clients:
Klicken Sie auf Speichern.
Regel für eingehenden Traffic für die NotificationConfig erstellen
So erstellen Sie eine Regel für eingehenden Traffic für eine NotificationConfig
:
- Folgen Sie der Anleitung unter NotificationConfig erstellen.
- Öffnen Sie noch einmal den Dienstperimeter aus dem vorherigen Abschnitt.
- Klicken Sie auf Richtlinie für eingehenden Traffic.
- Klicken Sie auf Add Rule (Regel hinzufügen).
- Geben Sie die folgenden Parameter ein, um die Regel für eingehenden Traffic für das von Ihnen erstellte
NotificationConfig
-Dienstkonto zu konfigurieren:- FROM-Attribute des API-Clients:
- Wählen Sie im Drop-down-Menü Quelle die Option Alle Quellen aus.
- Wählen Sie im Drop-down-Menü Identitäten die Option Ausgewählte Identitäten aus.
- Klicken Sie auf Auswählen und geben Sie den Namen des
NotificationConfig
-Dienstkontos ein:service-org-ORGANIZATION_ID@gcp-sa-scc-notification.iam.gserviceaccount.com
.
- TO-Attribute von GCP-Diensten/-Ressourcen:
- Wählen Sie im Drop-down-Menü Projekt die Option Ausgewählte Projekte aus.
- Klicken Sie auf Auswählen und wählen Sie dann das Projekt aus, das das Pub/Sub-Thema enthält.
- Wählen Sie im Drop-down-Menü Dienste die Option Ausgewählte Dienste und dann Cloud Pub/Sub API aus.
- Wählen Sie im Drop-down-Menü Methoden die Option Alle Aktionen aus.
- FROM-Attribute des API-Clients:
- Klicken Sie im Navigationsmenü auf Speichern.
Die ausgewählten Projekte, Nutzer und Dienstkonten können jetzt auf die geschützten Ressourcen zugreifen und Benachrichtigungen erstellen.
Wenn Sie alle Schritte in dieser Anleitung ausgeführt haben und Benachrichtigungen ordnungsgemäß funktionieren, können Sie jetzt Folgendes löschen:
- Eingangsregel für das Hauptkonto
- Ausgangsregel für das Hauptkonto
Diese Regeln waren nur für die Konfiguration der NotificationConfig
erforderlich. Damit Benachrichtigungen weiterhin funktionieren, müssen Sie jedoch die Regel für eingehenden Traffic für die NotificationConfig
beibehalten, damit sie Benachrichtigungen in Ihrem Pub/Sub-Thema hinter dem Dienstperimeter veröffentlichen kann.
Nächste Schritte
- Echtzeit-E-Mail- und -Chat-Benachrichtigungen aktivieren
- Benachrichtigungen verwalten
- Weitere Informationen zum Filtern von Benachrichtigungen