SECOPS

Weekly OAuth Consent Sprawl Scan with Risk Scoring

Every week, enumerates all third-party OAuth app grants across your Microsoft tenant, scores each by scope sensitivity and user reach, and posts a ranked risk digest to Slack.

CategorySecOps
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerWeekly schedule fires
  • ActionEnumerate OAuth app grants and scopesOutlook
  • LogicScore each grant by scope sensitivity x user reach
  • LogicSort and flag top-risk apps
  • OutputPost ranked risk digest to SlackSlack

What it does

Pulls the full inventory of third-party OAuth applications that users have consented to in your Microsoft 365 / Entra tenant, computes a risk score for each grant, and delivers a ranked digest so security can see consent sprawl at a glance.

When to use it

Run this when you have no recurring visibility into which SaaS apps your employees have granted access to, and you want a standing weekly pulse instead of one-off manual exports. Good first step before tightening admin-consent policy.

How it works

  1. 1A weekly schedule fires the scan.
  2. 2It calls the directory to enumerate every OAuth app grant, the scopes (delegated and application permissions) each holds, and how many users authorized it.
  3. 3A scoring step weights each grant: read/write mail, full directory read, and offline_access raise the score; the number of consenting users multiplies reach.
  4. 4Grants are sorted high-to-low and the top risk items are flagged.
  5. 5A formatted digest — app name, scopes, user count, score — is posted to the security Slack channel for triage.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect OutlookMail, calendar, contacts.
  2. 2
    Connect SlackChannels, DMs, threads, mentions.
  3. 3
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  4. 4
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  5. 5
    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.