IT OPS

New-Hire Cloudflare Access Grant-Gap Checker

On a new-hire event from HR, checks which baseline Cloudflare Access apps the role should have, compares against what is actually granted.

CategoryIT Ops
Enginesim
Difficultyintermediate
Triggerwebhook
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerHR new-hire webhook receivedHTTP webhook
  • ActionLook up role access baseline in PostgresPostgreSQLPostgres
  • ActionQuery current Cloudflare Access grants for emailCloudflareCloudflare
  • LogicCompute baseline apps not yet granted
  • ActionOpen PagerDuty alert for provisioning on-callPagerDutyPagerDuty
  • OutputPost gap list to IT provisioning Slack channelSlack

What it does

Catches under-provisioning, the inverse of orphaned access. When HR adds a new hire, it looks up the access baseline their role requires, compares it to what Cloudflare Access actually grants them, and alerts IT to any gaps so the new employee isn't blocked on day one.

When to use it

Use this when slow or incomplete provisioning is the pain rather than lingering access. It pairs naturally with the offboarding reconciler to cover both ends of the employee lifecycle against the same HR source of truth.

How it works

  1. 1An HR new-hire webhook delivers the employee email and role.
  2. 2A logic step looks up the role's required Access app baseline from Postgres.
  3. 3It queries Cloudflare for the grants the email currently holds.
  4. 4A logic step computes the set of baseline apps not yet granted.
  5. 5If gaps exist, it opens a PagerDuty alert for the provisioning on-call.
  6. 6It posts the gap list to the IT provisioning Slack channel with the employee, role, and missing apps.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect HTTP webhookTrigger any URL on agent actions.
  2. 2
    Connect PostgresAny Postgres URL — query, write, migrate.
  3. 3
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  4. 4
    Connect PagerDutyIncidents, on-call, escalations.
  5. 5
    Connect SlackChannels, DMs, threads, mentions.
  6. 6
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  7. 7
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  8. 8
    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.