#Tools

53 posts

Automating Excel Reports with Microsoft Graph: Sessions, Tables, Chart Images
5 min read

Automating Excel Reports with Microsoft Graph: Sessions, Tables, Chart Images

The Graph workbook API that reads and writes Excel files without opening them: the three session modes and what persistChanges means, eliminating the per-call file reopen cost, reading data with usedRange and appending rows through tables, creating charts and extracting them as images for reports, the delegated-permission-centric constraint peculiar to the Excel API and its practical workarounds, plus operational cautions like session expiry and retries.

Entra ID Automation #5 PIM and Auditing: Killing Standing Admins, Logs, and Access Reviews
5 min read

Entra ID Automation #5 PIM and Auditing: Killing Standing Admins, Logs, and Access Reviews

The track finale on privilege and accountability: the PIM structure that replaces standing admin rights with eligibility and time-boxed activation, Graph roleEligibilityScheduleRequests and the self-activation API, the pattern combining role-assignable groups with PIM, pulling audit and sign-in logs through the API to alert on high-risk events, automating periodic access reviews, and the adoption order for everything in this track.

Entra ID Automation #4 Conditional Access: Managing Policy as Code
4 min read

Entra ID Automation #4 Conditional Access: Managing Policy as Code

The sign-in-moment defense line, from an automation angle: the if-then structure of signals, decisions, and enforcement, CRUD on policies through the Graph conditionalAccess endpoint, the policy-as-code flow of source control, review, and CI deployment, why every new policy must run in report-only mode first, the rule that break-glass accounts are excluded from every policy, and the 30-day restore window for accidentally deleted policies.

Entra ID Automation #3 Group Design: Dynamic Groups, Group-Based Licensing, Access Packages
4 min read

Entra ID Automation #3 Group Design: Dynamic Groups, Group-Based Licensing, Access Packages

Designing groups — the unit of access management — for automation: when to use security groups versus Microsoft 365 groups, dynamic groups whose membership is computed from attribute rules and their P1 licensing, rule syntax and processing delays as operational realities, group-based licensing that automates assignment and reclamation on entry and exit, the security boundary of role-assignable groups, and access packages that productize self-service access requests.

Entra ID Automation #2 The User Lifecycle: Creation, Disabling, and Lifecycle Workflows
4 min read

Entra ID Automation #2 The User Lifecycle: Creation, Disabling, and Lifecycle Workflows

Handling joiners, movers, and leavers in code: why attribute standardization matters when creating users through the Graph API, delivering initial credentials with a Temporary Access Pass, why offboarding starts with disabling rather than deletion and how the 30-day soft delete works, why group-based licensing beats per-user assignment, and the product features that package the whole flow — Entra lifecycle workflows and HR-driven provisioning.

Entra ID Automation #1 The Big Picture: Tenants, Directory Objects, and the JML Lifecycle
5 min read

Entra ID Automation #1 The Big Picture: Tenants, Directory Objects, and the JML Lifecycle

First post in a series on automating Microsoft Entra ID administration with code: where Entra ID (renamed from Azure AD) sits, the structure of a tenant and its directory objects — users, groups, apps, devices — the joiner-mover-leaver (JML) model that forms the backbone of account automation, the tooling landscape across Graph API, PowerShell, and IaC, and how features map to the Free, P1, P2, and Governance license tiers.

GitHub Foundations #10 Bonus — Full-Scale Practice Exam (50 Questions with Explanations)
24 min read

GitHub Foundations #10 Bonus — Full-Scale Practice Exam (50 Questions with Explanations)

The final post of the GitHub Foundations series. Work through 50 questions distributed across the seven exam domains, with the answer and explanation available on every question. If you score 38 or more (76%), consider yourself ready to book the exam.

GitHub Foundations #9 Domain 7: The GitHub Community + Exam Tips
6 min read

GitHub Foundations #9 Domain 7: The GitHub Community + Exam Tips

Open source versus source-available, InnerSource, and community features like Sponsors and Marketplace, followed by question-type strategies, commonly missed patterns, and a test-environment checklist to finish your preparation.

GitHub Foundations #8 Domain 6: Privacy, Security, and Administration — Permissions, 2FA, and Dependabot
6 min read

GitHub Foundations #8 Domain 6: Privacy, Security, and Administration — Permissions, 2FA, and Dependabot

The five repository roles, the Organization permission model, 2FA and PAT authentication, branch protection, and the boundaries between Dependabot, secret scanning, and code scanning. This post covers Domain 6 of GitHub Foundations.

GitHub Foundations #7 Domain 5: Project Management — Projects, Automation, and Insights
6 min read

GitHub Foundations #7 Domain 5: Project Management — Projects, Automation, and Insights

GitHub Projects with its table, board, and roadmap views, custom fields, built-in automation workflows, and the repository Insights tab. This post covers Domain 5, Project Management, of GitHub Foundations.

GitHub Foundations #6 Domain 4: Modern Development — Actions, Codespaces, Copilot, and Packages
5 min read

GitHub Foundations #6 Domain 4: Modern Development — Actions, Codespaces, Copilot, and Packages

The features that turn GitHub into a development platform beyond a code host. The structure of Actions workflows, the difference between Codespaces and github.dev, Copilot plans, Packages and the Marketplace — all from the exam's point of view.

GitHub Foundations #5 Domain 3-2: Collaboration — Pull Requests, Code Review, and Discussions
6 min read

GitHub Foundations #5 Domain 3-2: Collaboration — Pull Requests, Code Review, and Discussions

The second half of the collaboration domain. The Pull Request lifecycle and drafts, CODEOWNERS and the three review states, suggested changes, the split between Issues and Discussions, and GitHub Pages — all from the exam's point of view.