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. Security Command Center API-Benachrichtigungen enthalten alle Ergebnisinformationen, die in Security Command Center in der Google Cloud Console angezeigt werden.
Sie können Security Command Center-Benachrichtigungen in Pub/Sub direkt mit Cloud Run-Funktionen verbinden. Beispielfunktionen, die beim Antworten, bei der Anreicherung und der Problembehebung helfen, finden Sie im Open-Source-Repository von Security Command Center unter Cloud Run-Funktionscode. 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.
Hinweis
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 - Sicherheitscenter-Admin-Betrachter (
roles/securitycenter.adminViewer
): für den Zugriff auf das Security Command Center in der Google Cloud Console - Wenn Sie dem Benachrichtigungsdienstkonto oder dem gcloud CLI-Konto Rollen auf Organisations-, Ordner- oder Projektebene zuweisen möchten, können Sie 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 in der Organisation, Ordner- oder Projektebene. Ob Sie Ergebnisse, Assets und Sicherheitsquellen ansehen, bearbeiten, erstellen oder aktualisieren können, hängt davon ab, auf welcher Ebene Sie Zugriff erhalten. Weitere Informationen über 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, die Continuous Exports für Pub/Sub-notificationConfig
-Ressourcen definieren, der Datenstandortsteuerung und werden an Ihrem Security Command Center-Speicherort gespeichert.
So exportieren Sie Ergebnisse an einem Security Command Center-Speicherort nach Pub/Sub verwenden, müssen Sie die kontinuierliche und zwar am selben Security Command Center-Speicherort wie die Ergebnisse.
Da die Filter, die in kontinuierlichen Exporte können Daten enthalten, die Standortkontrollen unterliegen, achten Sie darauf, dass Sie den richtigen Speicherort angeben, bevor Sie sie erstellen. Security Command Center schränkt nicht ein, welchen Standort Sie erstellen die Exporte enthalten sollen.
Kontinuierliche Exporte werden nur an dem Ort gespeichert, an dem sie erstellt wurden. Sie können an anderen Orten nicht angezeigt oder bearbeitet werden.
Nachdem Sie einen kontinuierlichen Export erstellt haben, können Sie diese Einstellung nicht mehr ihren Standort. Wenn Sie den Speicherort ändern möchten, müssen Sie den kontinuierlichen Export löschen und am neuen Speicherort neu erstellen.
So rufen Sie einen kontinuierlichen Export mithilfe von API-Aufrufen ab:
müssen Sie den Standort im vollständigen Ressourcennamen der
notificationConfig
Beispiel:
GET https://securitycenter.googleapis.com/v2/{name=organizations/123/locations/eu/notificationConfigs/my-pubsub-export-01}
Wenn Sie einen kontinuierlichen Export mit der gcloud CLI abrufen möchten, müssen Sie den Speicherort entweder im vollständigen Ressourcennamen der Konfiguration oder mit dem Flag --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
Wenn Sie eine NotificationConfig
erstellen möchten, müssen Sie Ihrem gcloud CLI-Konto die folgenden Rollen zuweisen:
- Sicherheitscenter-Administrator (
roles/securitycenter.admin
) oder Bearbeiter von Konfigurationen für Benachrichtigungen des Sicherheitscenters (roles/securitycenter.notificationConfigEditor
). Diese Rolle muss auf derselben Ebene – Organisation, Ordner oder Projekt – zugewiesen werden, auf der Sie dieNotificationConfig
erstellen. - Pub/Sub-Administrator (
roles/pubsub.admin
) für das Pub/Sub-Thema, das Benachrichtigungen empfängt
auf die Organisation, den Ordner oder das Projekt Level
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
ORGANIZATION_ID
durch Ihre Organisation ersetzen 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, mit 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 im Projekt, Ordner oder Organisationsebene.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 ist aktiviertROLE_NAME
: die zugewiesene Rolle
So weisen Sie die Rolle auf Organisationsebene zu:
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 für das Dienstkonto.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 hier gewähren: Projekt-, Ordner- oder Organisationsebene.So weisen Sie die Rolle auf Projektebene zu:
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 weisen Sie die Rolle auf Organisationsebene zu:
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 zur Verwendung mit Benachrichtigungen und dem Dienst eingerichtet.
der Kontoschlüssel in der KEY_LOCATION
gespeichert ist,
angegeben ist. 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
ABSOLUTE_PATH_TO_SERVICE_ACCOUNT_KEY
ersetzen durch den vollständigen Pfad zu Ihrem Dienstkontoschlüssel.
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 ein
eine begrenzte Anzahl von NotificationConfig
-Dateien. Weitere Informationen finden Sie unter Kontingente und Limits.
Das Feld NotificationConfig
enthält ein Feld filter
, das Benachrichtigungen auf nützliche Ereignisse beschränkt. Dieses Feld akzeptiert alle Filter, die in der
Security Command Center API findings.list
.
Wenn Sie ein NotificationConfig
erstellen, legen Sie ein übergeordnetes Element für die
NotificationConfig
aus der Google Cloud-Ressourcenhierarchie, entweder ein
Organisation, Ordner oder Projekt. Wenn Sie die NotificationConfig
später abrufen, aktualisieren oder löschen möchten, müssen Sie bei der Verlinkung die numerische ID der übergeordneten Organisation, des übergeordneten Ordners oder des übergeordneten Projekts angeben.
So erstellen Sie NotificationConfig
mit der gewünschten Programmiersprache oder Plattform:
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. Der Name muss zwischen 1 und 128 Zeichen lang sein und darf nur alphanumerische Zeichen, Unterstriche oder Bindestriche enthalten.PARENT
: Der Bereich in der Ressourcenhierarchie, auf den sich die Benachrichtigung bezieht,organization
,folder
oderproject
.PARENT_ID
: Die ID der übergeordneten Organisation, des übergeordneten Ordners oder des übergeordneten Projekts im Formatorganizations/123
,folders/456
oderprojects/789
.LOCATION
: Wenn der Datenstandort aktiviert ist, geben Sie den Security Command Center-Standort an, an dem die Benachrichtigung erstellt werden soll. Der resultierendenotificationConfig
Ressource wird nur an diesem Standort gespeichert. Nur Ergebnisse, die an diesem Standort ausgegeben werden, werden an Pub/Sub gesendet.
Wenn der Datenstandort nicht aktiviert ist, wird durch Angabe des Flags --location
erstellt,
die Benachrichtigung mit der Security Command Center API v2. Die einzige gültige
Wert für das Flag ist global
.
* NOTIFICATION_DESCRIPTION
: eine Beschreibung des
Benachrichtigung mit einer Länge
von maximal 1024 Zeichen.
* PUBSUB_TOPIC
: Das Pub/Sub-Thema, an das Benachrichtigungen gesendet werden. Das Format ist
projects/PROJECT_ID/topics/TOPIC
* FILTER
: Der Ausdruck, mit dem Sie auswählen, welche Ergebnisse an Pub/Sub gesendet werden. Beispiel:
state=\"ACTIVE\"
Python
Im folgenden Beispiel wird die v1 API verwendet. So ändern Sie die Einstellungen:
im Beispiel für v2, ersetzen Sie v1
durch v2
und fügen Sie
/locations/LOCATION
für den Ressourcennamen.
Fügen Sie bei den meisten Ressourcen dem Ressourcennamen nach /PARENT/PARENT_ID
die Zahl /locations/LOCATION
hinzu. Dabei steht PARENT
für organizations
, folders
oder projects
.
Fügen Sie der Ressource /locations/LOCATION
hinzu, um Ergebnisse zu erhalten
Name nach /sources/SOURCE_ID
, wobei SOURCE_ID
ist die ID des
Security Command Center-Dienst
die das Fundament erhalten haben.
Java
Im folgenden Beispiel wird die v1-API verwendet. So ändern Sie die Einstellungen:
im Beispiel für v2, ersetzen Sie v1
durch v2
und fügen Sie
/locations/LOCATION
für den Ressourcennamen.
Für die meisten Ressourcen fügen Sie /locations/LOCATION
zum
Ressourcenname nach /PARENT/PARENT_ID
, wobei
PARENT
ist der organizations
, folders
,
oder projects
.
Fügen Sie der Ressource /locations/LOCATION
hinzu, um Ergebnisse zu erhalten
Name nach /sources/SOURCE_ID
, wobei SOURCE_ID
ist die ID des
Security Command Center-Dienst
die das Fundament erhalten haben.
Go
Im folgenden Beispiel wird die v1 API verwendet. So ändern Sie die Einstellungen:
im Beispiel für v2, ersetzen Sie v1
durch v2
und fügen Sie
/locations/LOCATION
für den Ressourcennamen.
Fügen Sie bei den meisten Ressourcen dem Ressourcennamen nach /PARENT/PARENT_ID
die Zahl /locations/LOCATION
hinzu. Dabei steht PARENT
für organizations
, folders
oder projects
.
Fügen Sie der Ressource /locations/LOCATION
hinzu, um Ergebnisse zu erhalten
Name nach /sources/SOURCE_ID
, wobei SOURCE_ID
ist die ID des
Security Command Center-Dienst
die das Fundament erhalten haben.
Node.js
Im folgenden Beispiel wird die v1-API verwendet. Wenn Sie das Beispiel für Version 2 anpassen möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Fügen Sie bei den meisten Ressourcen dem Ressourcennamen nach /PARENT/PARENT_ID
die Zahl /locations/LOCATION
hinzu. Dabei steht PARENT
für organizations
, folders
oder projects
.
Fügen Sie der Ressource /locations/LOCATION
hinzu, um Ergebnisse zu erhalten
Name nach /sources/SOURCE_ID
, wobei SOURCE_ID
ist die ID des
Security Command Center-Dienst
die das Fundament erhalten haben.
PHP
Im folgenden Beispiel wird die v1-API verwendet. Wenn Sie das Beispiel für Version 2 anpassen möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Für die meisten Ressourcen fügen Sie /locations/LOCATION
zum
Ressourcenname nach /PARENT/PARENT_ID
, wobei
PARENT
ist der organizations
, folders
,
oder projects
.
Fügen Sie bei Ergebnissen dem Ressourcennamen nach /sources/SOURCE_ID
die Zeichenfolge /locations/LOCATION
hinzu. Dabei ist SOURCE_ID
die ID des Security Command Center-Dienstes, der das Ergebnis ausgegeben hat.
Ruby
Im folgenden Beispiel wird die v1 API verwendet. Wenn Sie das Beispiel für Version 2 anpassen möchten, ersetzen Sie v1
durch v2
und fügen Sie dem Ressourcennamen /locations/LOCATION
hinzu.
Fügen Sie bei den meisten Ressourcen dem Ressourcennamen nach /PARENT/PARENT_ID
die Zahl /locations/LOCATION
hinzu. Dabei steht PARENT
für organizations
, folders
oder projects
.
Fügen Sie der Ressource /locations/LOCATION
hinzu, um Ergebnisse zu erhalten
Name nach /sources/SOURCE_ID
, wobei SOURCE_ID
ist die ID des
Security Command Center-Dienst
die das Fundament erhalten haben.
C#
Im folgenden Beispiel wird die v1-API verwendet. So ändern Sie die Einstellungen:
im Beispiel für v2, ersetzen Sie v1
durch v2
und fügen Sie
/locations/LOCATION
für den Ressourcennamen.
Für die meisten Ressourcen fügen Sie /locations/LOCATION
zum
Ressourcenname nach /PARENT/PARENT_ID
, wobei
PARENT
ist der organizations
, folders
,
oder projects
.
Fügen Sie der Ressource /locations/LOCATION
hinzu, um Ergebnisse zu erhalten
Name nach /sources/SOURCE_ID
, wobei SOURCE_ID
ist die ID des
Security Command Center-Dienst
die das Fundament erhalten haben.
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 beim Erstellen der ersten NotificationConfig
erstellt und erhält beim Erstellen der Benachrichtigungskonfiguration automatisch die Rolle securitycenter.notificationServiceAgent
in der 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.
Erstellen Sie Regeln für eingehenden und ausgehenden Traffic für die Hauptkonten, um Zugriff auf Projekte zu gewähren
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 den Nutzer ein, mit dem die Security Command Center API aufgerufen 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 den Nutzer ein, mit dem die Security Command Center API aufgerufen 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:
- Die Eingangsregel für das Hauptkonto
- Die 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
- Weitere Informationen zum Aktivieren von E-Mail- und Chatbenachrichtigungen in Echtzeit
- Hier erfahren Sie, wie Sie die Notifications API verwalten.
- Weitere Informationen zum Filtern von Benachrichtigungen