Files
claudetools/clients/cascades-tucson/reports/2026-04-22-m365-orphan-deletes.md
Howard Enos abfb0a18b0 cascades: M365 orphan/stale user cleanup (pre-Entra Connect)
Deleted 7 former-employee / zombie accounts via Graph user-manager tier.
All verified in soft-delete bin (30-day recovery):

- ann.dery, anna.pitzlin, jeff.bristol, kristiana.dowse, nela.durut-azizi,
  nick.pavloff (all were disabled already)
- jodi.ramstack (was a zombie: enabled in M365 with 1 Business Standard
  license but deleted from AD 2026-04-13. Freed $12.50/mo seat.)

admin@NETORGFT... (Sandra Fish) confirmed already gone from tenant.

Role-based accounts (accounting@, frontdesk@, hr@, etc.) NOT touched —
pending delegation decisions before shared-mailbox conversion. Stephanie.Devin
left alone pending Meredith confirmation.

Report: reports/2026-04-22-m365-orphan-deletes.md
Docs updated: docs/cloud/m365.md

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 22:10:49 -07:00

4.7 KiB

M365 Orphan / Stale User Deletes - 2026-04-22

Scope

Pre-Entra-Connect cleanup. Remove confirmed former employees and zombie accounts from M365 so they don't sync/mismatch when Entra Connect goes live. Per Howard's direction 2026-04-22: delete orphans/stale users; leave role-based accounts alone until delegation decisions are made.

Pre-check results

Queried Graph for each candidate. One already gone (admin@NETORGFT4257522.onmicrosoft.com Sandra Fish blocked admin). 7 candidates remained:

UPN Display Enabled Licenses Proxies Why delete
ann.dery@cascadestucson.com Ann Dery False 0 2 Already deleted from AD (2026-04-13)
anna.pitzlin@cascadestucson.com Anna Pitzlin False 0 2 HR confirmed DELETE (per m365.md)
jeff.bristol@cascadestucson.com Jeff Bristol False 0 1 Former Business Office Director, replaced by Lauren Hasselman
jodi.ramstack@cascadestucson.com Jodi Ramstack True 1 Business Standard 2 Zombie — enabled in M365 but deleted from AD in 2026-04-13 cleanup. Wasting a $12.50/mo seat.
kristiana.dowse@cascadestucson.com Kristiana Dowse (Shared) False 0 1 HR confirmed not an employee
nela.durut-azizi@cascadestucson.com Nela Durut-Azizi False 0 1 HR confirmed DELETE (per m365.md)
nick.pavloff@cascadestucson.com nick pavloff False 0 1 Disabled in M365, never had an AD account

Actions executed

Tier: user-manager (Graph write permissions).

All 7 deletes returned HTTP 204. After 15 sec propagation delay:

  • All 7 verified deleted: HTTP 404 on GET /users/{id}
  • All 7 confirmed in directory/deletedItems/microsoft.graph.user (30-day soft-delete recovery window)
User Object ID
ann.dery 103b3ac4-2302-4334-8c8e-e66d383c883d
anna.pitzlin 06aa2955-f124-447d-8a16-cc7779aaf28f
jeff.bristol 8ec8248a-46e8-4771-9220-047887928777
jodi.ramstack b7cddbeb-6026-436b-a3aa-67c4be43e3fb
kristiana.dowse 0c501281-3e80-48e0-8a3f-e460a15df470
nela.durut-azizi 84cef8a2-6988-44ea-bf20-a72fe622750d
nick.pavloff 4b46f47a-6c57-477d-bd6d-53f99324aee4

License freed: 1 Business Standard seat (from jodi.ramstack). Next account-creation event (Alma.Montt or Kyla.QuickTiffany in Wave 1) can take that seat without new purchase.

Mail forwarding consideration: Jeff Bristol and Anna Pitzlin/Nela Durut-Azizi historically had mail forwarded to Meredith per docs/cloud/m365.md. If Cascades needs any legacy mail that was routed through those boxes, restore from the soft-delete bin within 30 days (Restore-MgDirectoryDeletedItem -DirectoryObjectId <id>) or keep a backup.

NOT deleted (role-based / service accounts)

Deferred pending delegation decisions per Howard's direction:

UPN Disposition
accounting@cascadestucson.com Pending Gate G2 conversion (→ shared, delegate: Ashley, Lauren)
accountingassistant@ Pending Gate G2 (→ shared, delegate: Allison)
boadmin@ Pending Gate G2 (delegates TBD)
frontdesk@ Pending Gate G2 (delegates: Cathy, Shontiel, Kyla, Michelle, Sebastian, Sheldon, Ray)
hr@ Pending Gate G2 (delegate: Meredith)
medtech@ Pending Gate G2 (delegates TBD)
memcarereceptionist@ Pending Gate G2 (delegates: Michelle, Matt)
nurse@ Pending Gate G2 (delegates: Lois, Karen)
security@ Pending Gate G2 (delegates TBD)
Training@ Pending Gate G2 (delegates TBD)
transportation@ Pending Gate G2 (retain? drivers being disabled — ask Meredith)
fax@ Keep (fax-to-email service)
Kitchenipad@ Keep (iPad device account)
MDMS@ Keep (active Intune service account)
sysadmin@ Keep (MSP Global Admin path)

Not deleted (yet) — pending your confirmation

UPN Reason to delete Reason to keep
Stephanie.Devin@cascadestucson.com Disabled member, appears to be former employee Description says "Accounting Assist" — may still be in a grace window post-departure?

Ask Meredith before deleting.

Rollback

All deletes recoverable within 30 days via:

Connect-MgGraph -Scopes 'Directory.Read.All','User.ReadWrite.All'
Restore-MgDirectoryDeletedItem -DirectoryObjectId <object-id>

Impact on Entra Connect

  • Duplicate-match risk reduced — 7 fewer cloud orphans to collide with AD sync targets
  • jodi.ramstack was the most dangerous: enabled member with no AD counterpart. If left in place and AD was re-synced, Entra Connect would have seen her as a dangling member.
  • Zero impact on currently-active users

Next steps (unchanged)

  • Gate G2 role-account conversion (pending delegation decisions from Meredith)
  • Sign Microsoft BAA
  • Create break-glass admin
  • Gate G3 Entra Connect install (staging mode)