---
title: "ATA Learning Tutorials"
description: "Learn from the best IT how-to tutorials from a range of experienced instructors comprising knowledge and skill from around the world!"
canonical: "https://adamtheautomator.com/tutorials/"
---

# ATA Learning Tutorials

> Learn from the best IT how-to tutorials from a range of experienced instructors comprising knowledge and skill from around the world!

Source: https://adamtheautomator.com/tutorials/

---

# ATA Learning Adam the Automator

Tap to hide

[

ATA Learning

](/)

*   [Home](/)
*   [Tutorials](/tutorials/)
*   [Instructors](/author/)
*   [Advertising](/advertising/)
*   [Recommended Resources](/resources/)
*   [About Adam](/about-adam/)

Search for:  

*   [](https://twitter.com/adbertram)
*   [](https://github.com/Adam-the-Automator)
*   [](https://www.linkedin.com/company/adam-the-automator-llc)
*   [](/feed/)

Show FilterReset Filters

×

Reset Filters

## Tag Search

Search tags

## Tags

*   PowerShell(339)
*   Linux(136)
*   Azure(85)
*   Active Directory(77)
*   AWS(70)
*   Ubuntu Linux(65)
*   Microsoft Azure(60)
*   Command Line(59)
*   Docker(56)
*   Windows(54)
*   Kubernetes(51)
*   Security(44)
*   DevOps(34)
*   Python(34)
*   Windows 10(33)
*   Ansible(30)
*   windows server(29)
*   Terraform(28)
*   Automation(22)
*   Azure Virtual Machines(22)
*   Networking(22)
*   Specops(21)
*   VmWare(19)
*   AI(17)
*   Office 365(17)
*   Azure DevOps(16)
*   File Management(16)
*   macOS(15)
*   Powershell Administration(15)
*   Raspberry Pi(14)

See 10 more

No posts match those tags. Reset the filters and try again.

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b8183bec6e5cc0f0356c5/a323a4d03629188de1d5ed18ca60a64a65f94bef73d5390488bde5511859fa05.webp)](/az-800-vs-az-802/)

*   [Active Directory](/tag/active-directory/)
*   [Azure](/tag/azure/)
*   [Microsoft Windows Server](/tag/microsoft-windows-server/)
*   [PowerShell](/tag/powershell/)

[

## AZ-800 vs. AZ-802: Avoid the Wrong Windows Server Exam

See what the AZ-800 retirement means for your Windows Server certification path and how to re-weight your study plan around the current AZ-802 exam.

](/az-800-vs-az-802/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram13 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b811089d5d31807a89aa3/4f6fca0bf1e9083ef5217f16ceed8f939aa4f322e0b4be8d8e3dbb7be8ca3114.webp)](/automate-windows-11-context-menu-registry/)

*   [PowerShell](/tag/powershell/)
*   [Windows](/tag/windows/)
*   [Windows Registry](/tag/windows-registry/)

[

## Automate Windows 11 Context Menu Actions with Registry

Add custom right-click actions to Windows 11 context menus by editing registry verbs, deploying .reg files, and scripting with PowerShell.

](/automate-windows-11-context-menu-registry/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram13 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3f25d9c85b2b81d1ab64dfa279a5857d/85b63aa642603bdd12b4fca256ee8c837736b9fabea4ca8078d1ba31916f346f.webp)](/notion-workers-github-issue-sync/)

*   [API](/tag/api/)
*   [GitHub](/tag/github/)
*   [Notion](/tag/notion/)
*   [TypeScript](/tag/typescript/)

[

## Automate GitHub Issue Sync with Notion Workers

Give a Notion Worker your GitHub issues endpoint and sync them into a Notion database with a stable key, API pagination, and replace-mode cleanup.

](/notion-workers-github-issue-sync/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram11 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3f25d9c85b2b811ca960ed14d86985b1/923eae6c1f8fdcc5d36226cfc9f1bbf87f972302e969a84b03b2bf71088b8ae9.webp)](/notion-agent-api-cost-tracking/)

*   [AI](/tag/ai/)
*   [API](/tag/api/)
*   [Automation](/tag/automation/)
*   [Monitoring](/tag/monitoring/)
*   [Notion](/tag/notion/)

[

## Stop Runaway Notion Agent Costs with the Agent API

Use the Notion Agent API to read credits and runs per agent, compute cost per run, and gate runaway spending with status and credit-limit controls.

](/notion-agent-api-cost-tracking/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram8 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3f35d9c85b2b81db9b78e52704dbd111/3650a0b7acbaf739069578f880254f978fe1383bc1b0453cd800afd989ff19ef.png)](/stop-copilot-web-searches/)

*   [Microsoft 365](/tag/microsoft-365/)
*   [Microsoft 365 Copilot](/tag/microsoft-365-copilot/)
*   [Security](/tag/security/)

[

## Stop Copilot Web Searches from Leaking Sensitive Data

Block Microsoft 365 Copilot from sending sensitive prompt text to external web search with a Purview DLP rule, then prove the block in the audit log.

](/stop-copilot-web-searches/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram5 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3f35d9c85b2b8157af67cfe805737c4c/d87a8e3ffd5988406606bd14f49a16ebbed72206f31a33a1f24372061a22b0e9.webp)](/purview-missing-ai-prompts/)

*   [Microsoft 365](/tag/microsoft-365/)
*   [Microsoft Exchange](/tag/microsoft-exchange/)
*   [PowerShell](/tag/powershell/)
*   [Security](/tag/security/)

[

## Troubleshoot Missing AI Prompts in Purview Activity Explorer

Find why Purview records AI activity without prompt text. Check audit settings, capture policies, and viewer permissions in a scoped test.

](/purview-missing-ai-prompts/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram9 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3f25d9c85b2b81a897a0e1623e958463/cb5678abd6a8724484f6f9f958245d4db7e58d587e9f2a52d22e92432f546c7d.webp)](/notion-custom-agents-task-checklists/)

*   [AI](/tag/ai/)
*   [Automation](/tag/automation/)
*   [Notion](/tag/notion/)

[

## Notion Custom Agents: Automate Your Task Checklists

Build a Notion Custom Agent that turns task descriptions into three-step checklists. Set permissions, test database triggers, and inspect saved results.

](/notion-custom-agents-task-checklists/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram8 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b81b19274c73baf4c55f3/98f4af306255355a84e7293721f7eba0ae787ac2055f021d4fddbae4f4385bee.webp)](/power-automate-expense-approval-flow/)

*   [Automation](/tag/automation/)
*   [Microsoft 365](/tag/microsoft-365/)
*   [Power Automate](/tag/power-automate/)
*   [SharePoint](/tag/sharepoint/)

[

## Automate Expense Report Approvals with Power Automate

Build a Power Automate approval flow on a SharePoint list that routes expense reports, closes the self-trigger loop, and exports approved spend for finance.

](/power-automate-expense-approval-flow/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram10 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b81ec815dd67b3720f831/f1259be740bd3b3dc8b6d6dc209ed026d438ad6ea109e47ae76c353b3f50c00c.webp)](/copilot-studio-agents-email-triage/)

*   [AI](/tag/ai/)
*   [Automation](/tag/automation/)
*   [Copilot Studio](/tag/copilot-studio/)
*   [Email Management](/tag/email-management/)

[

## Copilot Studio Agents: Triage Support Emails Instantly

Build a Copilot Studio agent that triages support email, tags urgency, extracts ticket details, and routes each message to the right owner.

](/copilot-studio-agents-email-triage/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram8 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b812da7abf2b9778c798e/8e7898c657638b870c388cf9b2e1ea1b99cfd5da6356984d5c703b14d7a098c8.webp)](/cks-certification-study-guide/)

*   [Containers](/tag/containers/)
*   [Kubernetes](/tag/kubernetes/)
*   [Linux](/tag/linux/)
*   [Security](/tag/security/)

[

## CKS Exam 2026: Study Guide, Practice Labs and Five-Week Plan

Map every CKS 2026 exam domain, build a kubeadm practice lab, drill Trivy, Falco, AppArmor, and RBAC, then follow a five-week plan to a passing score.

](/cks-certification-study-guide/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram11 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b8198b651eec70c447ee1/bc27e65fd261774769a0da850c0fe0f594bb2c6ba5bfcf317eadea5471382804.jpg)](/find-expired-certificates-powershell/)

*   [Certificates](/tag/certificates/)
*   [PowerShell](/tag/powershell/)
*   [Security](/tag/security/)
*   [Windows](/tag/windows/)

[

## Find Expired Windows Certificates Instantly via PowerShell

Use PowerShell to scan every certificate store across a Windows fleet, report expired and expiring certificates, and alert before authentication breaks.

](/find-expired-certificates-powershell/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram11 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b81d18bcdd4e82db4a47e/3655f2c9e9bdd72484d7c264e373fd1aaa68e5b72b9454cd575b1e0eb08f2063.png)](/kubernetes-pending-pods-scheduling/)

*   [Containers](/tag/containers/)
*   [DevOps](/tag/devops/)
*   [Kubernetes](/tag/kubernetes/)

[

## Kubernetes Pending Pods: Fix Scheduling and Resource Limits

Decode why Kubernetes pods stay Pending: read the FailedScheduling event, then fix requests, taints, node affinity, storage, or namespace quota.

](/kubernetes-pending-pods-scheduling/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram9 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b8151b299cdf1129b5930/07fca0c5d7b72581bdbccb06e9058b4f8b00f553e0bd60f4e2724cfa489a164d.png)](/run-ollama-on-windows-server-without-exposing-your/)

*   [AI](/tag/ai/)
*   [IIS](/tag/iis/)
*   [Microsoft Windows Server](/tag/microsoft-windows-server/)
*   [Security](/tag/security/)

[

## Run Ollama on Windows Server Without Exposing Your LLMs

Run Ollama as a hardened Windows Server service with NSSM, keep the API on loopback, and front it with an IIS reverse proxy, TLS, and authentication.

](/run-ollama-on-windows-server-without-exposing-your/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram11 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b81c8a7f8e65f33231fa4/606223a2505919db35cb97858e8eafa9a96eb8d297bab790394df6d592d2af99.webp)](/sysmon-detect-hidden-malware/)

*   [PowerShell](/tag/powershell/)
*   [Security](/tag/security/)
*   [Windows](/tag/windows/)
*   [Windows Events](/tag/windows-events/)

[

## Sysmon: Detect Hidden Malware in Windows Event Logs

Deploy Sysinternals Sysmon with a tuned config, then use Get-WinEvent and Sysmon event IDs to catch process injection and C2 beaconing.

](/sysmon-detect-hidden-malware/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram13 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/3ec5d9c85b2b81d9ab7cd5dbb6caf044/21b786d67f19d1813150edf9871e36ead78714b63880de8c6161c7fde11a9769.webp)](/pktmon-capture-windows-traffic/)

*   [Networking](/tag/networking/)
*   [PowerShell](/tag/powershell/)
*   [Windows](/tag/windows/)
*   [Wireshark](/tag/wireshark/)

[

## Pktmon: Capture Windows Traffic Without a Third-Party Driver

Use the in-box Windows Pktmon tool to capture packets and packet-drop reasons, then convert the ETL to pcapng and text for offline analysis.

](/pktmon-capture-windows-traffic/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram14 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/2e05d9c85b2b81d1a183f32356379208/90bb2192ef4e2f89f05de2af33aa4bff61921c1c0f9e1b8f86c0de25a90ba045.webp)](/vmware-to-azure-migration-roadmap/)

*   [Azure](/tag/azure/)
*   [Azure Migrate](/tag/azure-migrate/)
*   [Microsoft Licensing](/tag/microsoft-licensing/)
*   [Virtualization](/tag/virtualization/)

[

## VMware to Azure: Avoid the Broadcom Per-Core Trap

Compare Azure VMware Solution, Azure Local, and native Azure, then model Broadcom per-core licensing, build the landing zone, and migrate in waves.

](/vmware-to-azure-migration-roadmap/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram19 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/2e05d9c85b2b81c080b8d45ec1cdfbb3/71dd588b2369d52e1695c95c1493383c6c0ed2adb4aac7eba04c1ab324f3a6a6.webp)](/stop-service-principal-sprawl-entra-id-powershell/)

*   [Microsoft Entra](/tag/microsoft-entra/)
*   [Microsoft Graph](/tag/microsoft-graph/)
*   [PowerShell](/tag/powershell/)
*   [Security](/tag/security/)

[

## Stop Service Principal Sprawl in Entra ID with PowerShell

Inventory every app registration and service principal, then automate ownership, rotation, and safe disablement with PowerShell and Microsoft Graph.

](/stop-service-principal-sprawl-entra-id-powershell/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram16 min. read

](/author/adam-bertram/)

[![](https://adamtheautomator.com/wp-content/uploads/publisher/2e05d9c85b2b8187b503fb0f6ceff47e/e15d54857176da3fe72b1f0692faaa7000367a5fbe6edf5f6a5f1034395fea45.webp)](/azure-bicep-production-patterns/)

*   [Azure](/tag/azure/)
*   [DevOps](/tag/devops/)
*   [GitHub Actions](/tag/github-actions/)
*   [Infrastructure as Code](/tag/infrastructure-as-code/)

[

## Azure Bicep: Bulletproof Production Deployment Patterns

Own your Bicep blast radius: pin modules in a private registry, gate pull requests with lint and PSRule, and track production changes with stacks.

](/azure-bicep-production-patterns/)

[![Adam Bertram Avatar](https://secure.gravatar.com/avatar/d0b9d42e21e5622713f8b693aa5c0f9244d5f7dd200ed29b8398f52dee5de337?s=192&d=mm&r=g)

Adam Bertram20 min. read

](/author/adam-bertram/)

1…[76](/tutorials/page/76/)[»](/tutorials/page/2/)

## Categories

*   [IT Ops](/category/it-ops/)
*   [Cloud](/category/cloud/)
*   [DevOps](/category/devops/)
*   [Home Ops](/category/home-ops/)
*   [Information Security](/category/infosec/)
*   [Software Development](/category/software-development/)

## Site

*   [Home](/)
*   [Tutorials](/tutorials/)
*   [Instructors](/author/)
*   [Advertising](/advertising/)
*   [Recommended Resources](/resources/)
*   [About Adam](/about-adam/)

Copyright 2026© ATA Learning | [Privacy Policy](/privacy/)
