Zugriffssteuerung für Features mit IAM konfigurieren
Google Security Operations kann in die Identitäts- und Zugriffsverwaltung (IAM) von Google Cloud eingebunden werden, um Google SecOps-spezifische Berechtigungen und vordefinierte Rollen bereitzustellen. Google SecOps-Administratoren können den Zugriff auf Features steuern, indem sie IAM-Richtlinien erstellen, die Nutzer oder Gruppen an vordefinierte Rollen binden oder benutzerdefinierte IAM-Rollen erstellen können. Mit dieser Funktion wird nicht der Zugriff auf bestimmte UDM-Einträge oder Felder in einem UDM-Eintrag gesteuert.
In diesem Dokument wird Folgendes beschrieben:
- Beschreibt die Einbindung von Google SecOps in IAM.
- Hier wird erläutert, wie sich vordefinierte IAM-Rollen von den ursprünglichen Feature-RBAC-Gruppen unterscheiden.
- Enthält Schritte zum Migrieren einer Google SecOps-Instanz zu IAM.
- Enthält Beispiele für das Zuweisen von Berechtigungen mithilfe von IAM.
- Fasst die in IAM verfügbaren Berechtigungen und vordefinierten Rollen zusammen.
Eine Liste der häufig verwendeten Google SecOps-Berechtigungen und der von ihnen erstellten Audit-Logs finden Sie unter Berechtigungen und API-Methoden nach Ressourcengruppe. Eine Liste aller Google SecOps-Berechtigungen finden Sie unter Berechtigungsreferenz zu Identity and Access Management.
Möglicherweise sind Sie dabei, Ihre Google SecOps-Instanzen von der ursprünglichen RBAC-Feature-Implementierung zu migrieren. In diesem Dokument wird der Name Feature-RBAC verwendet, um auf die zuvor verfügbare featurebasierte Zugriffssteuerung zu verweisen, die mit Google SecOps und nicht mit IAM konfiguriert wird. Mit IAM wird eine funktionsbasierte Zugriffssteuerung beschrieben, die Sie mit IAM konfigurieren.
Jede Google SecOps-Berechtigung ist einer Google SecOps API-Ressource und -Methode zugeordnet. Wenn einem Nutzer oder einer Gruppe eine Berechtigung gewährt wird, kann der Nutzer auf die Funktion in Google SecOps zugreifen und eine Anfrage mit der zugehörigen API-Methode senden.
Einbindung von Google SecOps in IAM
Zur Verwendung von IAM muss Google SecOps an ein Google Cloud-Projekt gebunden und mit Cloud Identity, Google Workspace oder der Google Cloud-Mitarbeiteridentitätsföderation als Vermittler im Authentifizierungsvorgang bei einem externen Identitätsanbieter konfiguriert werden. Informationen zum Authentifizierungsvorgang für Drittanbieter finden Sie unter Google SecOps mit externen Identitätsanbietern einbinden.
Google SecOps führt die folgenden Schritte aus, um den Zugriff auf Funktionen zu verifizieren und zu steuern:
- Nach der Anmeldung bei Google SecOps greift ein Nutzer auf eine Google SecOps-Anwendungsseite zu. Alternativ kann der Nutzer eine API-Anfrage an Google SecOps senden.
- Google SecOps überprüft die Berechtigungen, die in den für diesen Nutzer definierten IAM-Richtlinien gewährt wurden.
- IAM gibt die Autorisierungsinformationen zurück. Wenn der Nutzer eine Anwendungsseite aufgerufen hat, ermöglicht Google SecOps nur den Zugriff auf die Funktionen, auf die er Zugriff hat.
- Wenn der Nutzer eine API-Anfrage gesendet und keine Berechtigung zum Ausführen der angeforderten Aktion hat, enthält die API-Antwort einen Fehler. Andernfalls wird eine Standardantwort zurückgegeben.
Google SecOps bietet eine Reihe vordefinierter Rollen mit festgelegten Berechtigungen, mit denen gesteuert wird, ob ein Nutzer auf das Feature zugreifen kann. Diese IAM-Richtlinie steuert den Zugriff auf das Feature über die Weboberfläche und die API.
Wenn andere Google Cloud-Dienste im Google Cloud-Projekt an Google SecOps gebunden sind und Sie einen Nutzer mit der Rolle „Projekt-IAM-Administrator“ so einschränken möchten, dass er nur die Google SecOps-Ressourcen ändern kann, fügen Sie der Zulassungsrichtlinie IAM-Bedingungen hinzu. Ein Beispiel dafür finden Sie unter Nutzern und Gruppen Rollen zuweisen.
Administratoren passen den Zugriff auf Google SecOps-Features je nach Rolle eines Mitarbeiters in Ihrer Organisation an.
Hinweise
- Sie sollten mit Cloud Shell, dem gcloud CLI-Befehl und der Google Cloud Console vertraut sein.
- Machen Sie sich mit IAM sowie den folgenden Konzepten vertraut:
- Übersicht über IAM.
- Übersicht über Rollen und Berechtigungen, vordefinierte Rollen im Vergleich zu benutzerdefinierten Rollen und Erstellen von benutzerdefinierten Rollen.
- IAM-Bedingungen
- Führen Sie alle Schritte unter Google SecOps an ein Google Cloud-Projekt binden aus, um ein Projekt einzurichten, das an Google SecOps gebunden wird.
- Konfigurieren Sie Ihren Identitätsanbieter mit einer der folgenden Methoden:
- Google Cloud-Identitätsanbieter konfigurieren
- Führen Sie alle Schritte unter Externen Identitätsanbieter in Google SecOps einbinden aus, um die Authentifizierung über einen externen Identitätsanbieter (Identity Provider, IdP) einzurichten.
- Binden Sie ein Projekt an Ihre Google SecOps-Instanz und konfigurieren Sie den Identitätsanbieter.
- Prüfen Sie, ob Sie die Berechtigungen zum Ausführen der Schritte in diesem Dokument haben. Informationen zu den erforderlichen Berechtigungen für die einzelnen Phasen des Onboarding-Prozesses finden Sie unter Erforderliche Rollen.
Implementierung planen
Sie erstellen IAM-Richtlinien, die die Bereitstellungsanforderungen Ihrer Organisation unterstützen. Sie können entweder vordefinierte Google SecOps-Rollen oder von Ihnen erstellte benutzerdefinierte Rollen verwenden.
Überprüfen Sie die Liste der vordefinierten Rollen und Berechtigungen für Google SecOps anhand der Anforderungen Ihrer Organisation. Ermitteln Sie, welche Mitglieder Ihrer Organisation Zugriff auf die einzelnen Google SecOps-Funktionen haben sollen. Wenn Ihre Organisation IAM-Richtlinien benötigt, die sich von den vordefinierten Google SecOps-Rollen unterscheiden, erstellen Sie benutzerdefinierte Rollen, die diese Anforderungen erfüllen. Informationen zu benutzerdefinierten IAM-Rollen finden Sie unter Benutzerdefinierte Rollen erstellen und verwalten.
Zusammenfassung der Google SecOps-Rollen und -Berechtigungen
Die folgenden Abschnitte enthalten eine allgemeine Zusammenfassung vordefinierter Rollen.
Die aktuelle Liste der Google SecOps-Berechtigungen finden Sie in der Referenz für IAM-Berechtigungen. Suchen Sie im Abschnitt Nach einer Berechtigung suchen nach dem Begriff chronicle
.
Die aktuelle Liste vordefinierter Google SecOps-Rollen finden Sie in der Referenz zu einfachen und vordefinierten IAM-Rollen. Wählen Sie im Bereich Vordefinierte Rollen entweder den Dienst Chronicle API-Rollen aus oder suchen Sie nach dem Begriff chronicle
.
Informationen zu API-Methoden und -Berechtigungen, den Seiten, auf denen Berechtigungen verwendet werden, und den Informationen, die beim Aufruf der API in Cloud-Audit-Logs aufgezeichnet werden, finden Sie unter Chronicle-Berechtigungen in IAM.
Vordefinierte Google SecOps-Rollen in IAM
Google Security Operations bietet die folgenden vordefinierten Rollen, wie sie in IAM angezeigt werden.
Vordefinierte Rolle in IAM | Titel | Beschreibung |
---|---|---|
roles/chronicle.admin |
Chronicle API-Administrator | Vollständiger Zugriff auf Google Security Operations-Anwendungs- und API-Dienste, einschließlich globaler Einstellungen. |
roles/chronicle.editor |
Chronicle API Editor | Zugriff zum Ändern des Zugriffs auf Google Security Operations-Anwendungs- und API-Ressourcen. |
roles/chronicle.viewer |
Chronicle API-Betrachter | Lesezugriff auf Google Security Operations-Anwendungs- und API-Ressourcen |
roles/chronicle.limitedViewer |
Chronicle API Limited Viewer | Gewährt Lesezugriff auf Anwendungs- und API-Ressourcen von Google Security Operations, ausgenommen Regeln für Erkennungs-Engines und Retrohunts. |
Google SecOps-Berechtigungen in IAM
Google SecOps-Berechtigungen entsprechen 1:1 den Google SecOps API-Methoden. Jede Google SecOps-Berechtigung aktiviert eine bestimmte Aktion für ein bestimmtes Google SecOps-Feature, wenn die Webanwendung oder die API verwendet wird. Google SecOps APIs, die mit IAM verwendet werden, befinden sich in der Alpha-Einführungsphase.
Google SecOps-Berechtigungsnamen haben das Format SERVICE.FEATURE.ACTION
.
Der Berechtigungsname chronicle.dashboards.edit
besteht beispielsweise aus Folgendem:
chronicle
: der Name des Google SecOps API-Dienstes.dashboards
: der Name der Funktion.edit
: die Aktion, die für das Element ausgeführt werden kann
Der Berechtigungsname beschreibt die Aktion, die Sie für das Feature in Google SecOps ausführen können. Alle Google SecOps-Berechtigungen haben den Dienstnamen chronicle
.
Nutzern und Gruppen Rollen zuweisen
In den folgenden Abschnitten finden Sie Anwendungsfälle zum Erstellen von IAM-Richtlinien. Der Begriff <project>
steht für die Projekt-ID des Projekts, das Sie an Google SecOps gebunden haben.
Nachdem Sie die Chronicle API aktiviert haben, sind die vordefinierten Rollen und Berechtigungen von Google SecOps in IAM verfügbar. Außerdem können Sie Richtlinien erstellen, die den Anforderungen der Organisation entsprechen.
Wenn Sie eine neu erstellte Google SecOps-Instanz haben, beginnen Sie mit dem Erstellen von IAM-Richtlinien, um die Organisationsanforderungen zu erfüllen.
Wenn es sich um eine vorhandene Google SecOps-Instanz handelt, finden Sie unter Google SecOps zu IAM für die Feature-Zugriffssteuerung migrieren Informationen zum Migrieren der Instanz zu IAM.
Beispiel: Rolle „Projekt-IAM-Administrator“ in einem dedizierten Projekt zuweisen
In diesem Beispiel ist das Projekt Ihrer Google SecOps-Instanz zugeordnet. Sie gewähren einem Nutzer die Rolle Projekt-IAM-Administrator, damit er die IAM-Rollenbindungen des Projekts gewähren und ändern kann. Der Nutzer kann alle Google SecOps-Rollen und -Berechtigungen im Projekt verwalten und Aufgaben ausführen, die von der Rolle Projekt-IAM-Administrator gewährt werden.
Rolle über die Google Cloud Console zuweisen
In den folgenden Schritten wird beschrieben, wie Sie einem Nutzer über die Google Cloud Console eine Rolle zuweisen.
- Öffnen Sie die Google Cloud Console.
- Wählen Sie das Projekt aus, das an Google SecOps gebunden ist.
- Wählen Sie IAM & Admin.
- Wählen Sie Zugriff gewähren aus. Die Meldung Zugriff auf
<project>
gewähren wird angezeigt. - Geben Sie im Bereich Hauptkonten hinzufügen die E-Mail-Adresse des verwalteten Kontos in das Feld Neue Hauptkonten ein.
- Wählen Sie im Abschnitt Rollen zuweisen im Menü Rolle auswählen die Rolle Projekt-IAM-Administrator aus.
- Klicken Sie auf Speichern.
- Öffnen Sie die Seite IAM > Berechtigungen, um zu prüfen, ob dem Nutzer die richtige Rolle gewährt wurde.
Rolle über die Google Cloud CLI zuweisen
Der folgende Beispielbefehl zeigt, wie Sie einem Nutzer bei der Verwendung der Mitarbeiteridentitätsföderation die Rolle chronicle.admin
zuweisen.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.admin
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.WORKFORCE_POOL_ID
: die Kennung für den Personalpool, der für Ihren Identitätsanbieter erstellt wurde.USER_EMAIL
: Die E-Mail-Adresse des Nutzers.
Der folgende Beispielbefehl zeigt, wie Sie einer Gruppe die Rolle chronicle.admin
zuweisen, wenn Sie Cloud Identity oder Google Workspace verwenden.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member "user:USER_EMAIL" \
--role=roles/chronicle.admin
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.USER_EMAIL
: Die E-Mail-Adresse des Nutzers.
Beispiel: Rolle „Projekt-IAM-Administrator“ in einem freigegebenen Projekt zuweisen
In diesem Beispiel wird das Projekt für mehrere Anwendungen verwendet. Sie ist an eine Google SecOps-Instanz gebunden und führt Dienste aus, die nicht mit Google SecOps zusammenhängen. Zum Beispiel eine Compute Engine-Ressource, die für einen anderen Zweck verwendet wird.
In diesem Fall können Sie einem Nutzer die Rolle Projekt-IAM-Administrator zuweisen, damit er die IAM-Rollenbindungen des Projekts gewähren und ändern sowie Google SecOps konfigurieren kann. Sie fügen der Rollenbindung außerdem IAMs hinzu, um den Zugriff auf Google SecOps-bezogene Rollen im Projekt zu beschränken. Dieser Nutzer kann nur Rollen zuweisen, die in der IAM-Bedingung angegeben sind.
Weitere Informationen zu IAM-Bedingungen finden Sie unter Übersicht über IAM-Bedingungen und Bedingte Rollenbindungen verwalten.
Rolle über die Google Cloud Console zuweisen
In den folgenden Schritten wird beschrieben, wie Sie einem Nutzer über die Google Cloud Console eine Rolle zuweisen.
- Öffnen Sie die Google Cloud Console.
- Wählen Sie das Projekt aus, das an Google SecOps gebunden ist.
- Wählen Sie IAM & Admin.
- Wählen Sie Zugriff gewähren aus. Die Meldung Zugriff auf
<project>
gewähren wird angezeigt. - Geben Sie im Dialogfeld Zugriff auf
<project>
gewähren im Abschnitt Hauptkonten hinzufügen die E-Mail-Adresse des Nutzers in das Feld Neue Hauptkonten ein. - Wählen Sie im Abschnitt Rollen zuweisen im Menü Rolle auswählen die Rolle Projekt-IAM-Administrator aus.
- Klicken Sie auf + IAM-Bedingung hinzufügen.
- Geben Sie im Dialogfeld Bedingung hinzufügen die folgenden Informationen ein:
- Geben Sie einen Titel für die Bedingung ein.
- Wählen Sie den Bedingungseditor aus.
- Geben Sie die folgende Bedingung ein:
api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])
- Klicken Sie im Dialogfeld Bedingung hinzufügen auf Speichern.
- Klicken Sie im Dialogfeld Zugriff auf
<project>
gewähren auf Speichern. - Öffnen Sie die Seite IAM > Berechtigungen, um zu prüfen, ob dem Nutzer die richtige Rolle gewährt wurde.
Rolle über die Google Cloud CLI zuweisen
Der folgende Beispielbefehl zeigt, wie Sie einem Nutzer die Rolle chronicle.admin
gewähren und IAM-Bedingungen bei der Verwendung der Mitarbeiteridentitätsföderation anwenden.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.admin\
--condition=^:^'expression=api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])':'title=Chronicle Role Admin'
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.WORKFORCE_POOL_ID
: die Kennung für den Personalpool, der für Ihren Identitätsanbieter erstellt wurde.USER_EMAIL
: Die E-Mail-Adresse des Nutzers.
Der folgende Beispielbefehl zeigt, wie Sie einer Gruppe die Rolle chronicle.admin
zuweisen und IAM-Bedingungen anwenden, wenn Sie Cloud Identity oder Google Workspace verwenden.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=user:USER_EMAIL \
--role=roles/chronicle.admin\
--condition=^:^'expression=api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])':'title=Chronicle Role Admin'
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.USER_EMAIL
: die E-Mail-Adresse des Nutzers, z. B.bob@example.com
.
Beispiel: Einem Nutzer die Rolle „Chonicle API Editor“ zuweisen
In dieser Situation möchten Sie einem Nutzer die Möglichkeit geben, den Zugriff auf Google SecOps API-Ressourcen zu ändern.
Rolle über die Google Cloud Console zuweisen
- Öffnen Sie die Google Cloud Console.
- Wählen Sie das Projekt aus, das an Google SecOps gebunden ist.
- Wählen Sie IAM & Admin.
- Wählen Sie Zugriff gewähren aus. Das Dialogfeld Zugriff auf
<project>
gewähren wird geöffnet. - Geben Sie im Bereich Hauptkonten hinzufügen in das Feld Neue Hauptkonten die E-Mail-Adresse des Nutzers ein.
- Wählen Sie im Abschnitt Rollen zuweisen im Menü Rolle auswählen die Rolle Google SecOps API-Bearbeiter aus.
- Klicken Sie im Dialogfeld Zugriff auf
<project>
gewähren auf Speichern. - Öffnen Sie die Seite IAM > Berechtigungen, um zu prüfen, ob dem Nutzer die richtige Rolle gewährt wurde.
Rolle über die Google Cloud CLI zuweisen
Der folgende Beispielbefehl zeigt, wie Sie einem Nutzer bei der Verwendung der Mitarbeiteridentitätsföderation die Rolle chronicle.editor
gewähren.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.editor
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.WORKFORCE_POOL_ID
: die Kennung für den Personalpool, der für Ihren Identitätsanbieter erstellt wurde.USER_EMAIL
: Die E-Mail-Adresse des Nutzers.Der folgende Beispielbefehl zeigt, wie Sie einem Nutzer die Rolle
chronicle.editor
gewähren, wenn er Cloud Identity oder Google Workspace verwendet.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=user:USER_EMAIL \
--role=roles/chronicle.editor
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.WORKFORCE_POOL_ID
: die Kennung für den Personalpool, der für Ihren Identitätsanbieter erstellt wurde.USER_EMAIL
: Die E-Mail-Adresse des Nutzers.
Beispiel: Benutzerdefinierte Rolle erstellen und einer Gruppe zuweisen
Wenn vordefinierte Google SecOps-Rollen nicht die Gruppe von Berechtigungen bieten, die dem Anwendungsfall Ihrer Organisation entsprechen, können Sie eine benutzerdefinierte Rolle erstellen und dieser Google SecOps-Berechtigungen zuweisen. Sie weisen die benutzerdefinierte Rolle einem Nutzer oder einer Gruppe zu. Weitere Informationen zu benutzerdefinierten IAM-Rollen finden Sie unter Benutzerdefinierte Rollen erstellen und verwalten.
Mit den folgenden Schritten können Sie eine benutzerdefinierte Rolle mit dem Namen LimitedAdmin
erstellen.
Erstellen Sie eine YAML- oder JSON-Datei, in der die benutzerdefinierte Rolle mit dem Namen
LimitedAdmin
und die dieser Rolle gewährten Berechtigungen definiert werden. Im Folgenden sehen Sie eine YAML-Beispieldatei.title: "LimitedAdmin" description: "Admin role with some permissions removed" stage: "ALPHA" includedPermissions: - chronicle.collectors.create - chronicle.collectors.delete - chronicle.collectors.get - chronicle.collectors.list - chronicle.collectors.update - chronicle.dashboards.copy - chronicle.dashboards.create - chronicle.dashboards.delete - chronicle.dashboards.get - chronicle.dashboards.list - chronicle.extensionValidationReports.get - chronicle.extensionValidationReports.list - chronicle.forwarders.create - chronicle.forwarders.delete - chronicle.forwarders.generate - chronicle.forwarders.get - chronicle.forwarders.list - chronicle.forwarders.update - chronicle.instances.get - chronicle.instances.report - chronicle.legacies.legacyGetCuratedRulesTrends - chronicle.legacies.legacyGetRuleCounts - chronicle.legacies.legacyGetRulesTrends - chronicle.legacies.legacyUpdateFinding - chronicle.logTypeSchemas.list - chronicle.multitenantDirectories.get - chronicle.operations.cancel - chronicle.operations.delete - chronicle.operations.get - chronicle.operations.list - chronicle.operations.wait - chronicle.parserExtensions.activate - chronicle.parserExtensions.create - chronicle.parserExtensions.delete - chronicle.parserExtensions.generateKeyValueMappings - chronicle.parserExtensions.get - chronicle.parserExtensions.legacySubmitParserExtension - chronicle.parserExtensions.list - chronicle.parserExtensions.removeSyslog - chronicle.parsers.activate - chronicle.parsers.activateReleaseCandidate - chronicle.parsers.copyPrebuiltParser - chronicle.parsers.create - chronicle.parsers.deactivate - chronicle.parsers.delete - chronicle.parsers.get - chronicle.parsers.list - chronicle.parsers.runParser - chronicle.parsingErrors.list - chronicle.validationErrors.list - chronicle.validationReports.get - resourcemanager.projects.getIamPolicy
Erstellen Sie die benutzerdefinierte Rolle. Das folgende gcloud CLI-Beispielbefehl zeigt, wie Sie diese benutzerdefinierte Rolle mithilfe der YAML-Datei erstellen, die Sie im vorherigen Schritt erstellt haben.
gcloud iam roles create ROLE_NAME \ --project=PROJECT_ID \ --file=YAML_FILE_NAME
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.YAML_FILE_NAME
: der Name der Datei, die Sie im vorherigen Schritt erstellt haben.ROLE_NAME
: der Name der benutzerdefinierten Rolle, wie in der YAML-Datei definiert.
Weisen Sie die benutzerdefinierte Rolle mithilfe der Google Cloud CLI zu.
Der folgende Beispielbefehl zeigt, wie Sie einer Gruppe von Nutzern die benutzerdefinierte Rolle
limitedAdmin
gewähren, wenn die Mitarbeiteridentitätsföderation verwendet wird.gcloud projects add-iam-policy-binding PROJECT_ID \ --member=principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID \ --role=projects/PROJECT_ID/roles/limitedAdmin
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.WORKFORCE_POOL_ID
: die Kennung für den Personalpool, der für Ihren Identitätsanbieter erstellt wurde.GROUP_ID
: die in der Mitarbeiteridentitätsföderation erstellte Gruppen-ID. Weitere Informationen zur in der Mitarbeiteridentitätsföderation erstellten Gruppen-ID finden Sie unter Personalpool-Nutzer in IAM-Richtlinien repräsentieren. Informationen zuGROUP_ID
finden Sie unter Personalpoolnutzer in IAM-Richtlinien repräsentieren.
Der folgende Beispielbefehl zeigt, wie Sie einer Gruppe von Nutzern die benutzerdefinierte Rolle
limitedAdmin
gewähren, wenn Sie Cloud Identity oder .gcloud projects add-iam-policy-binding PROJECT_ID \ --member=groupid:GROUP_ID \ --role=projects/PROJECT_ID/roles/limitedAdmin
Ersetzen Sie Folgendes:
PROJECT_ID
: die Projekt-ID des an Google SecOps gebundenen Projekts, das Sie im Schritt Google SecOps-Instanz an Google Cloud-Projekt binden erstellt haben. Eine Beschreibung der Felder, die ein Projekt identifizieren, finden Sie unter Projekte erstellen und verwalten.WORKFORCE_POOL_ID
: die Kennung für den Personalpool, der für Ihren Identitätsanbieter erstellt wurde.GROUP_ID
: die in der Mitarbeiteridentitätsföderation erstellte Gruppen-ID. Weitere Informationen zur in der Mitarbeiteridentitätsföderation erstellten Gruppen-ID finden Sie unter Personalpool-Nutzer in IAM-Richtlinien repräsentieren. Informationen zuGROUP_ID
finden Sie unter Personalpoolnutzer in IAM-Richtlinien repräsentieren.
Audit-Logging überprüfen
Nutzeraktionen in Google SecOps und Anfragen an die Google SecOps API werden als Cloud-Audit-Logs aufgezeichnet. Führen Sie die folgenden Schritte aus, um zu prüfen, ob Logs geschrieben werden:
- Melden Sie sich in Google SecOps als Nutzer mit Zugriffsberechtigungen für alle Funktionen an. Weitere Informationen finden Sie unter In Google SecOps anmelden.
- Aktion ausführen, z. B. eine Suche
- Verwenden Sie in der Google Cloud Console den Log-Explorer, um die Audit-Logs im an Google SecOps gebundenen Cloud-Projekt anzusehen. Google SecOps-Audit-Logs haben den Dienstnamen
chronicle.googleapis.com
.
Weitere Informationen zum Aufrufen von Cloud-Audit-Logs finden Sie unter Informationen zum Audit-Logging in Google SecOps.
Das folgende Beispiellog wurde geschrieben, als der Nutzer alice@example.com
die Liste der Parsererweiterungen in Google SecOps aufgerufen hat.
{
"protoPayload": {
"@type": "type.googleapis.com/google.cloud.audit.AuditLog",
"authenticationInfo": {
"principalEmail": "alice@example.com"
},
"requestMetadata": {
"callerIp": "private",
"callerSuppliedUserAgent": "abc_client",
"requestAttributes": {
"time": "2023-03-27T21:09:43.897772385Z",
"reason": "8uSywAYeWhxBRiBhdXRoIFVwVGljay0-REFUIGV4Y2abcdef",
"auth": {}
},
"destinationAttributes": {}
},
"serviceName": "chronicle.googleapis.com",
"methodName": "google.cloud.chronicle.v1main.ParserService.ListParserExtensions",
"authorizationInfo": [
{
"resource": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-",
"permission": "chronicle.parserExtensions.list",
"granted": true,
"resourceAttributes": {}
}
],
"resourceName": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-",
"numResponseItems": "12",
"request": {
"@type": "type.googleapis.com/google.cloud.chronicle.v1main.ListParserExtensionsRequest",
"parent": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-"
},
"response": {
"@type": "type.googleapis.com/google.cloud.chronicle.v1main.ListParserExtensionsResponse"
}
},
"insertId": "1h0b0e0a0",
"resource": {
"type": "audited_resource",
"labels": {
"project_id": "dev-sys-server001",
"method": "google.cloud.chronicle.v1main.ParserService.ListParserExtensions",
"service": "chronicle.googleapis.com"
}
},
"timestamp": "2023-03-27T21:09:43.744940164Z",
"severity": "INFO",
"logName": "projects/dev-sys-server001/logs/cloudaudit.googleapis.com%2Fdata_access",
"receiveTimestamp": "2023-03-27T21:09:44.863100753Z"
}
Google SecOps für die Feature-Zugriffssteuerung zu IAM migrieren
Verwenden Sie die Informationen in diesen Abschnitten, um eine vorhandene SIEM-Instanz von Google Security Operations aus der vorherigen funktionsbasierten Zugriffssteuerung (Feature RBAC) zu IAM zu migrieren.
Nach der Migration zu IAM können Sie Aktivitäten in der Google SecOps-Instanz auch mithilfe von Cloud-Audit-Logs prüfen.
Unterschiede zwischen Feature-RBAC und IAM
Obwohl die Namen vordefinierter IAM-Rollen den Feature-RBAC-Gruppen ähneln, bieten die vordefinierten IAM-Rollen keinen identischen Featurezugriff wie die ursprünglichen Feature-RBAC-Gruppen. Die Berechtigungen, die jeder vordefinierten IAM-Rolle zugewiesen werden, unterscheiden sich geringfügig. Weitere Informationen finden Sie unter Zuordnung von IAM-Berechtigungen zu den einzelnen ursprünglichen Feature-RBAC-Gruppen.
Sie können vordefinierte Google SecOps-Rollen unverändert verwenden, die in jeder vordefinierten Rolle definierten Berechtigungen ändern oder benutzerdefinierte Rollen erstellen und einen anderen Satz von Berechtigungen zuweisen.
Nach der Migration der Google SecOps-Instanz verwalten Sie Rollen, Berechtigungen und IAM-Richtlinien mithilfe von IAM in der Google Cloud Console. Die folgenden Google SecOps-Anwendungsseiten wurden geändert, um Nutzer zur Google Cloud Console weiterzuleiten:
- Nutzer und Gruppen
- Rollen
In Feature-RBAC wird jede Berechtigung durch den Featurenamen und eine Aktion beschrieben. IAM-Berechtigungen werden durch den Ressourcennamen und die Methode beschrieben. Die folgende Tabelle veranschaulicht den Unterschied anhand von zwei Beispielen, die sich auf Dashboards und das zweite auf Feeds beziehen.
Dashboard-Beispiel: Zur Steuerung des Zugriffs auf Dashboards bietet Feature-RBAC fünf Aktionen, die Sie auf Dashboards ausführen können. IAM bietet ähnliche Berechtigungen mit dem zusätzlichen
dashboards.list
, mit dem ein Nutzer verfügbare Dashboards auflisten kann.Beispiel für Feeds: Zur Steuerung des Zugriffs auf Feeds bietet RBAC-Feature sieben Aktionen, die Sie aktivieren oder deaktivieren können. In IAM gibt es vier:
feeds.delete
,feeds.create
,feeds.update
undfeeds.view
.
Feature | Berechtigung in Feature-RBAC | IAM-Berechtigung | Beschreibung der Nutzeraktion |
---|---|---|---|
Dashboards | Bearbeiten | chronicle.dashboards.edit |
Dashboards bearbeiten |
Dashboards | Copy | chronicle.dashboards.copy |
Dashboards kopieren |
Dashboards | Erstellen | chronicle.dashboards.create |
Dashboards erstellen |
Dashboards | Zeitplan | chronicle.dashboards.schedule |
Berichte planen |
Dashboards | Löschen | chronicle.dashboards.delete |
Berichte löschen |
Dashboards | – Dies ist nur in IAM verfügbar. | chronicle.dashboards.list |
Verfügbare Dashboards auflisten |
Feeds | DeleteFeed | chronicle.feeds.delete |
Feed löschen |
Feeds | CreateFeed | chronicle.feeds.create |
Erstellen Sie einen Feed. |
Feeds | UpdateFeed | chronicle.feeds.update |
Aktualisieren Sie einen Feed. |
Feeds | EnableFeed | chronicle.feeds.update |
Aktualisieren Sie einen Feed. |
Feeds | DisableFeed | chronicle.feeds.update |
Aktualisieren Sie einen Feed. |
Feeds | ListFeeds | chronicle.feeds.view |
Geben Sie einen oder mehrere Feeds zurück. |
Feeds | GetFeed | chronicle.feeds.view |
Geben Sie einen oder mehrere Feeds zurück. |
Schritte zum Migrieren vorhandener Berechtigungen für die Zugriffssteuerung
Nachdem Sie die Schritte zur Migration einer vorhandenen Google SecOps-Instanz ausgeführt haben, können Sie auch die Konfiguration der Zugriffssteuerung für Features migrieren.
Google SecOps bietet automatisch generierte Befehle, die neue IAM-Richtlinien erstellen, die Ihrer vorherigen featurebasierten RBAC entsprechen, die in Google SecOps auf der Seite SIEM-Einstellungen > Nutzer und Gruppen konfiguriert wurde.
Prüfen Sie, ob Sie die erforderlichen Berechtigungen haben, wie unter Google Cloud-Projekt für Google SecOps konfigurieren beschrieben, und führen Sie dann die Schritte unter Vorhandene Berechtigungen und Rollen zu IAM migrieren aus.
Zuordnung von IAM-Berechtigungen zu jeder Feature-RBAC-Gruppe
Die Zuordnungsinformationen in diesem Abschnitt erläutern einige der Zugriffsunterschiede für vordefinierte Rollen vor und nach der Migration. Obwohl die Namen von Feature-RBAC-Rollen den vordefinierten IAM-Rollen ähneln, unterscheiden sich die Aktionen, auf die jede Zugriffsberechtigung gewährt. In diesem Abschnitt werden einige dieser Unterschiede vorgestellt.
Chronicle API Limited Viewer
Diese Rolle gewährt Lesezugriff auf die Google SecOps-Anwendung und API-Ressourcen, ausgenommen Erkennungs-Engine-Regeln und Retrohunts. Der Name der Rolle lautet chronicle.limitedViewer
.
Diese Rolle ist neu. Eine detaillierte Liste der Berechtigungen finden Sie unter Chronicle API Viewer.
Chronicle API-Betrachter
Diese Rolle bietet Lesezugriff auf die Google SecOps-Anwendung und API-Ressourcen. Der Name der Rolle lautet chronicle.viewer
.
Die folgenden Berechtigungen veranschaulichen einige der Unterschiede zwischen einer ähnlichen RBAC-Funktionsgruppe und IAM. Eine detaillierte Liste der Berechtigungen finden Sie unter Chronicle API Viewer.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.ruleDeployments.get |
Viewer |
chronicle.ruleDeployments.list |
Viewer |
chronicle.rules.verifyRuleText |
Viewer |
chronicle.rules.get |
Viewer |
chronicle.rules.list |
Viewer |
chronicle.legacies.legacyGetRuleCounts |
Viewer |
chronicle.legacies.legacyGetRulesTrends |
Viewer |
chronicle.rules.listRevisions |
Viewer |
chronicle.legacies.legacyGetCuratedRulesTrends |
Viewer |
chronicle.ruleExecutionErrors.list |
Viewer |
chronicle.curatedRuleSets.get |
Viewer |
chronicle.curatedRuleSetDeployments.get |
Viewer |
chronicle.curatedRuleSets.list |
Viewer |
chronicle.curatedRuleSetDeployments.list |
Viewer |
chronicle.curatedRuleSetCategories.get |
Viewer |
chronicle.curatedRuleSetCategories.list |
Viewer |
chronicle.curatedRuleSetCategories.countAllCuratedRuleSetDetections |
Viewer |
chronicle.curatedRuleSets.countCuratedRuleSetDetections |
Viewer |
chronicle.curatedRules.get |
Viewer |
chronicle.curatedRules.list |
Viewer |
chronicle.referenceLists.list |
Viewer |
chronicle.referenceLists.get |
Viewer |
chronicle.referenceLists.verifyReferenceList |
Viewer |
chronicle.retrohunts.get |
Viewer |
chronicle.retrohunts.list |
Viewer |
chronicle.dashboards.schedule |
Editor |
chronicle.operations.get |
None. This is available in IAM only. |
chronicle.operations.list |
None. This is available in IAM only. |
chronicle.operations.wait |
None. This is available in IAM only. |
chronicle.instances.report |
None. This is available in IAM only. |
chronicle.collectors.get |
None. This is available in IAM only. |
chronicle.collectors.list |
None. This is available in IAM only. |
chronicle.forwarders.generate |
None. This is available in IAM only. |
chronicle.forwarders.get |
None. This is available in IAM only. |
chronicle.forwarders.list |
None. This is available in IAM only. |
Chronicle API Editor
Mit dieser Rolle können Nutzer den Zugriff auf Google SecOps-Anwendungs- und API-Ressourcen ändern. Der Name der Rolle lautet chronicle.editor
.
Die folgenden Berechtigungen veranschaulichen einige der Unterschiede zwischen einer ähnlichen RBAC-Funktionsgruppe und IAM. Eine detaillierte Liste der Berechtigungen finden Sie im Chronicle API Editor.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.ruleDeployments.update |
Editor |
chronicle.rules.update |
Editor |
chronicle.rules.create |
Editor |
chronicle.referenceLists.create |
Editor |
chronicle.referenceLists.update |
Editor |
chronicle.rules.runRetrohunt |
Editor |
chronicle.retrohunts.create |
Editor |
chronicle.curatedRuleSetDeployments.batchUpdate |
Editor |
chronicle.curatedRuleSetDeployments.update |
Editor |
chronicle.dashboards.copy |
Editor |
chronicle.dashboards.edit |
Editor |
chronicle.dashboards.create |
Editor |
chronicle.legacies.legacyUpdateFinding |
Editor |
chronicle.dashboards.delete |
Editor |
chronicle.operations.delete |
None. This is available in IAM only. |
Chronicle API-Administrator
Diese Rolle bietet vollständigen Zugriff auf die Google SecOps-Anwendung und die API-Dienste, einschließlich globaler Einstellungen. Der Name der Rolle lautet chronicle.admin
.
Die folgenden Berechtigungen veranschaulichen einige der Unterschiede zwischen einer ähnlichen RBAC-Funktionsgruppe und IAM. Eine detaillierte Liste der Berechtigungen finden Sie unter Chronicle API Admin.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.parserExtensions.delete |
Admin |
chronicle.parsers.copyPrebuiltParser |
Admin |
chronicle.extensionValidationReports.get |
Admin |
chronicle.extensionValidationReports.list |
Admin |
chronicle.validationErrors.list |
Admin |
chronicle.parsers.runParser |
Admin |
chronicle.parserExtensions.get |
Admin |
chronicle.parserExtensions.list |
Admin |
chronicle.validationReports.get |
Admin |
chronicle.parserExtensions.create |
Admin |
chronicle.parserExtensions.removeSyslog |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parserExtensions.activate |
Admin |
chronicle.parsers.activateReleaseCandidate |
Admin |
chronicle.parsers.deactivate |
Admin |
chronicle.parsers.deactivate |
Admin |
chronicle.parserExtensions.generateKeyValuechronicle.Mappings |
Admin |
chronicle.parserExtensions.legacySubmitParserExtension |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.list |
Admin |
chronicle.parsers.create |
Admin |
chronicle.parsers.delete |
Admin |
chronicle.feeds.delete |
Admin |
chronicle.feeds.create |
Admin |
chronicle.feeds.update |
Admin |
chronicle.feeds.enable |
Admin |
chronicle.feeds.disable |
Admin |
chronicle.feeds.list |
Admin |
chronicle.feeds.get |
Admin |
chronicle.feedSourceTypeSchemas.list |
Admin |
chronicle.logTypeSchemas.list |
Admin |
chronicle.operations.cancel |
Editor |
chronicle.collectors.create |
None. This is available in IAM only. |
chronicle.collectors.delete |
None. This is available in IAM only. |
chronicle.collectors.update |
None. This is available in IAM only. |
chronicle.forwarders.create |
None. This is available in IAM only. |
chronicle.forwarders.delete |
None. This is available in IAM only. |
chronicle.forwarders.update |
None. This is available in IAM only. |
chronicle.parsingErrors.list |
None. This is available in IAM only. |