IT OPS

Detect First-Time SSO Logins to Unapproved Apps

Queries SSO authentication logs in Snowflake on a schedule, finds applications a user signed into for the first time that are not on the approved-app registry.

CategoryIT Ops
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule
  • ActionQuery first-seen SSO app loginsSnowflakeSnowflake
  • LogicDrop apps in approved registry
  • ActionEnrich with department and OAuth scopesSnowflakeSnowflake
  • OutputPost digest to security channelSlack

What it does

Reads your identity provider's authentication events landed in Snowflake, identifies any app a user authenticated to for the very first time, and cross-checks the app against your approved-application registry. New, unapproved app sign-ins are flagged as shadow IT and escalated. This catches free or trial SaaS that employees access via Google or Microsoft SSO with no spend trail at all.

When to use it

Use when your shadow-IT risk is dominated by OAuth and SSO sign-ups rather than card spend. Best for organizations piping Okta, Entra, or Google Workspace logs into a warehouse.

How it works

  1. 1A daily schedule triggers the run.
  2. 2An action queries Snowflake for distinct first-seen app sign-ins in the last 24 hours.
  3. 3A logic step filters out apps already present in the approved registry table.
  4. 4For each remaining app, an action enriches it with the user's department and OAuth scopes granted.
  5. 5A final output posts a digest to the security Slack channel and tags each user's manager for awareness.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect SnowflakeWarehouses, queries, shares.
  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.