SECOPS

Open a PagerDuty Incident for High-Risk OAuth Grants

On a schedule, scans recent OAuth token grants in Google Workspace for high-blast-radius scopes (full Drive, Gmail send.

CategorySecOps
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerScheduled scan of active OAuth tokens
  • ActionEnumerate workspace OAuth tokens and scopesGoogle DriveGoogle Drive
  • LogicKeep only high-blast-radius scope grants
  • LogicDrop apps on the approved-vendor allowlist
  • ActionOpen PagerDuty incident per flagged grantPagerDutyPagerDuty
  • OutputPost incident link to security Slack channelSlack

What it does

This workflow treats a dangerous OAuth grant as a security incident, not just a notification. On a recurring scan it lists tokens issued across the workspace, filters for the scopes that let an app read all mail, modify every file, or act as an admin, checks each app against your approved-vendor allowlist, and pages the on-call security engineer through PagerDuty for anything that slips through.

When to use it

Use it when over-permissioned OAuth apps need an SLA-backed response, not a Slack message that scrolls away. Good for regulated environments where an unsanctioned app with mailbox-wide access must be acknowledged and remediated within a defined window.

How it works

  1. 1A schedule triggers the scan every few hours.
  2. 2The flow enumerates active OAuth tokens and their scopes from the Workspace directory.
  3. 3A logic step keeps only grants holding high-blast-radius scopes.
  4. 4A second logic step drops any app present on the approved-vendor allowlist.
  5. 5For each remaining grant, the flow opens a PagerDuty incident with the app, user, and scopes.
  6. 6A Slack note links the incident so the channel has context.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect Google DriveDocs, sheets, slides, files.
  2. 2
    Connect PagerDutyIncidents, on-call, escalations.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.