GSuite module
editGSuite module
editThis functionality is in beta and is subject to change. The design and code is less mature than official GA features and is being provided as-is with no warranties. Beta features are not subject to the support SLA of official GA features.
Deprecated in 7.12.
This is a module for ingesting data from the different GSuite audit reports API’s.
Read the quick start to learn how to configure and run modules.
Compatibility
editIt is compatible with a subset of applications under the Google Reports API v1. As of today it supports:
GSuite Service | Description | |
---|---|---|
View users’ successful and failed sign-ins to SAML applications. |
||
Audit actions carried out by users on their own accounts including password changes, account recovery details and 2-Step Verification enrollment. |
||
Track user sign-in activity to your domain. |
||
View administrator activity performed within the Google Admin console. |
||
Record user activity within Google Drive including content creation in such as Google Docs, as well as content created elsewhere that your users upload to Drive such as PDFs and Microsoft Word files. |
||
Track changes to groups, group memberships and group messages. |
Configure the module
editIn order for Filebeat to ingest data from the Google Reports API you must:
- Have an administrator account.
- Set up a ServiceAccount using the administrator account.
- Set up access to the Admin SDK API for the ServiceAccount.
- Enable Domain-Wide Delegation for your ServiceAccount.
This module will make use of the following oauth2 scope:
-
https://www.googleapis.com/auth/admin.reports.audit.readonly
Once you have downloaded your service account credentials as a JSON file, you can set up your module:
Configuration options
edit- module: gsuite saml: enabled: true var.jwt_file: "./credentials_file.json" var.delegated_account: "user@example.com" user_accounts: enabled: true var.jwt_file: "./credentials_file.json" var.delegated_account: "user@example.com" login: enabled: true var.jwt_file: "./credentials_file.json" var.delegated_account: "user@example.com" admin: enabled: true var.jwt_file: "./credentials_file.json" var.delegated_account: "user@example.com" drive: enabled: true var.jwt_file: "./credentials_file.json" var.delegated_account: "user@example.com" groups: enabled: true var.jwt_file: "./credentials_file.json" var.delegated_account: "user@example.com"
Every fileset has the following configuration options:
-
var.jwt_file
- Specifies the path to the JWT credentials file.
-
var.delegated_account
- Email of the admin user used to access the API.
-
var.http_client_timeout
-
Duration of the time limit on HTTP requests made by the module. Defaults to
60s
. -
var.interval
-
Duration between requests to the API. Defaults to
2h
.
GSuite defaults to a 2 hour polling interval because Google reports can go from some minutes up to 3 days of delay. For more details on this, you can read more here.
-
var.user_key
-
Specifies the user key to fetch reports from. Defaults to
all
. -
var.initial_interval
-
It will poll events up to this time period when the module starts. This is to prevent polling too many or repeated events on module restarts. Defaults to
24h
.
GSuite Reports ECS fields
editThis is a list of GSuite Reports fields that are mapped to ECS.
GSuite Reports | ECS Fields | |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
These are the common ones to all filesets.
Fields
editFor a description of each field in the module, see the exported fields section.