Google Workspace Logs

Panther supports pulling logs directly from Google Workspace

Overview

Panther can fetch Google Workspacearrow-up-right (known formerly as G Suite) log events by querying the Google Workspace Reports APIarrow-up-right. Panther will query the Reports API for new events every 60 seconds.

chevron-rightGoogle Workspace applications Panther pulls logs forhashtag

Panther pulls Google Workspace logs for the following applications:

  • Access Transparency

  • Admin

  • Calendar

  • Chat

  • Chrome

  • Context-Aware Access

  • Data Studio (Looker Studio)

  • Drive

  • GCP

  • Gmail

  • Groups

  • Groups Enterprise

  • Keep

  • Login

  • Meet

  • Mobile

  • Rules

  • SAML

  • User Accounts

  • Token

How to onboard Google Workspace logs to Panther

In order for Panther to access the Google Workspace Reports API, you need to create and configure a Google Cloud app, and provide its credentials to Panther.

Prerequisites

To complete the steps below, your Google user must:

Step 1: Create a new Google Workspace source in Panther

  1. In the left sidebar menu of the Panther Console, click Configure > Log Sources.

  2. Click Create New.

  3. Search for “Google Workspace,” then click its tile.

  4. On the slide-out panel, click Start Setup.

  5. On the Configuration page, configure the following field:

    • Name: Enter a descriptive name for the source e.g., My Google Workspace logs.

  6. Click Setup.

Step 2: Create and configure a Google Cloud app

Before setting up a Google Cloud app, you'll need to choose an authentication method. You can use a service accountarrow-up-right or OAutharrow-up-right —see the top-level tabs below.

  1. Create a new app in Google Cloud:

    1. Click + Create project. In Google Cloud console, the "+Create Project" button appears at the top of the page under the search bar. In this image, there is a teal circle around it.

    2. Enter a descriptive Project name (e.g. Panther Integration) and choose a Location.

    3. Click Create.

      • It will take a few seconds to create the project. Once created, you will see a notification on the page.

    4. On the left sidebar menu, click the three lines icon, then Cloud Overview > Dashboard.

    5. If the project you just created is not already selected in the dropdown at the top of the page, open the dropdown and select it. At the top of the Google Cloud dashboard, there is a dropdown. "Panther integration test" has been selected, and the select box is circled.

  2. Enable the Admin SDK API:

    1. In the search bar, enter"Admin SDK API," and select Admin SDK API.

    2. On the Admin SDK API page, click Enable. In the Google Cloud console, an Admin SDK API page is shown. An Enable button is circled.

      • You will be redirected to a new screen.

  3. Generate a JSON key filearrow-up-right for the service account:

    1. In the IAM & Admin section, click Service Accounts.

    2. On the row of the service account you just created, click Actions, then Manage keys.

    3. Click Add Key > Create new key.

    4. Under Key type, select JSON, then click Create.

      • A JSON file will be downloaded.

    circle-info

    Keep this file in a safe place—it contains the credentials for this service account.

  4. Enable Domain-wide delegation:

    1. On the row of the service account you just created, click Actions, then Manage details.

    2. Click Advanced settings, then copy the Client ID.

    3. Click View Google Workspace Admin Console.

    4. Sign in with an Administrator account.

    5. Click SecurityAccess and data controlAPI controls.

    6. Click Manage Domain-wide delegations.

    7. Click Add new.

    8. Fill in the fields:

      1. Client ID: enter the Client ID you copied above.

      2. OAuth scopes (comma-separated, no spaces): enter https://www.googleapis.com/auth/admin.reports.audit.readonly

        • (Optional) If user profiles are desired, also enter (separated by a comma) https://www.googleapis.com/auth/admin.directory.user.readonly

    9. Click Authorize.

  5. Finish the source setup in Panther:

    1. Under Provide pulling configuration & JSON Keyfile, upload your JSON key file.

    2. In the Admin User Email field, enter the email address for which you enabled Domain-wide delegation.

    3. On the Enrichment page, if you would like to enable Google Workspace User Profiles, to the right of User Profiles, click the toggle ON.

    4. Click Setup. You will be directed to a success screen:

      The success screen reads, "Everything looks good! Panther will now automatically pull & process logs from your account"
      • You can optionally enable one or more Detection Packsarrow-up-right.

      • If you have not done so already, click Attach or Infer Schemas to attach one or more schemas to the source.

      • The Trigger an alert when no events are processed setting defaults to YES. We recommend leaving this enabled, as you will be alerted if data stops flowing from the log source after a certain period of time. The timeframe is configurable, with a default of 24 hours.

Panther-managed detections

See Panther-managed rules for Google Workspace in the panther-analysis GitHub repositoryarrow-up-right (in directories prefixed with gsuite_).

Supported log types

Panther pulls data from Google's Reports Activities APIarrow-up-right which includes admin activity, login activity, token activity, Google Drive activity, and more.

This data gets stored as both GSuite.ActivityEvent and GSuite.Reports log types—while these two schemas contain the same data, it's recommended to use Gsuite.ActivityEvent because it flattens the events, making the fields easier to reference in queries and detections.

While both schemas capture the same data, they store it differently in the data lake. For example, GSuite.Reports may have a slightly smaller number of logs in the data lake because multiple events are wrapped in one payload. In GSuite.ActivityEvent, however, each event becomes a single event in Panther. More information about this behavior can be found in the Knowledge Base article: What is the difference between the Panther log types GSuite.Reports and GSuite.ActivityEvent?arrow-up-right

circle-info

While Google Workspace logs are stored in both the GSuite.ActivityEvent and GSuite.Reports tables in your data lake, the data is only counted once against your ingestion quota.

GSuite.ActivityEvent

Contains the activity events for a specific account and application, such as the Admin console application or the Google Drive application.

Reference: Google Workspace Documentation on Reports API Activities List.arrow-up-right

GSuite.Reports

circle-exclamation

Contains the activity events for a specific account and application, such as the Admin console application or the Google Drive application.

Reference: Google Workspace Documentation on Reports API Activities List.arrow-up-right

Last updated

Was this helpful?