Drive Detections with Watchlists and Threat Intelligence in Microsoft Sentinel
Enrich Sentinel detections by uploading a watchlist, referencing it in a KQL rule with _GetWatchlist(), and adding threat-intelligence indicators.

Lab overview
Modern SOCs drown in alerts, and the difference between a noisy detection and an actionable one is usually context. Microsoft Sentinel provides two enrichment surfaces built for exactly this: watchlists, which import your own business context (high-value accounts, known-bad IP ranges, VIP devices) as a queryable reference table, and threat-intelligence indicators, which carry curated indicators of compromise (malicious domains, IPs, hashes, URLs) so detections fire the moment a known-bad entity appears in your telemetry. Rather than hand-coding long IOC lists into every rule, you store them once and reference them everywhere.
The bridge between these reference sets and live detections is the KQL function _GetWatchlist('<name>'), which pulls a watchlist into a query so it can be joined against any log source on a SearchKey. In this lab, you will upload a watchlist of high-value accounts and known-bad IPs into a pre-onboarded Sentinel workspace, author and deploy a scheduled analytics rule that enriches a sign-in detection with _GetWatchlist(), add a threat-intelligence indicator, and explore the Threat Intelligence blade to understand IOC-driven detection end to end.
Objectives
Upon completion of this intermediate level lab, you will be able to:
- Inspect a pre-onboarded Sentinel workspace and confirm the analytics and threat-intelligence surfaces
- Create a watchlist and populate it with high-value-account and known-bad-IP items using a defined SearchKey
- Author a KQL detection that enriches a sign-in query with watchlist context via
_GetWatchlist() - Deploy the watchlist-driven detection as a scheduled analytics rule with Terraform
- Add a threat-intelligence indicator so detections can match a known-bad entity
Who is this lab for?
This lab is designed for:
- SOC analysts enriching detections with business and threat context
- Security engineers who know basic KQL and the Sentinel analytics blade
- Detection engineers managing watchlists and threat intelligence as code
Verified against your live environment
An automated validation engine inspects your actual resources and configurations as you work. Completion means the task was performed, not multiple choice, real-world proficiency.
More labs like this
Implement Network Security Groups (NSGs) and Application Security Groups (ASGs) in Azure
Secure Azure VMs using Network Security Groups and Application Security Groups. Create rules, control traffic flow, and implement least privilege access.
Deploying Your First Microsoft Sentinel Workspace on Azure
Learn to set up Microsoft Sentinel workspace, connect it to a Log Analytics workspace, and prepare for advanced security monitoring and threat detection.
Deploy Azure SQL Database with Terraform
Define and deploy an Azure SQL Server and database using Terraform with firewall rules, variables, and output values in this hands-on lab.
Related reading
Environment
Every lab includes
- Real environment, pre-credentialed
- Automated checks on every step
- Isolated sandbox, auto cleanup
- AI-recommended next steps
Lab curriculum
- 01
Logging into Azure CLI
- 02
Create a Watchlist and Populate Enrichment Items
1 automated check
- 03
Author a GetWatchlist Enrichment Detection Query
1 automated check
- 04
Deploy the Watchlist-Driven Scheduled Analytics Rule
1 automated check
- 05
Add a Threat Intelligence Indicator and View the Map
1 automated check
Skills validated
Not the lab you were looking for?
Browse 200+ hands-on labs across AWS, Azure, Kubernetes, Docker, and cloud security.