AZ-500 ยท MICROSOFT AZURE SECURITY TECHNOLOGIES

Complete Exam Notes
Study Reference

Comprehensive, structured notes covering all AZ-500 exam domains. Exam-critical items marked throughout.

๐Ÿ“‹ 10 Major Domains
๐Ÿ”ด Critical items flagged
โญ Exam tips included
๐Ÿ“Š Comparison tables

// Table of Contents

01

Identity & Access Management (Advanced)

Microsoft Entra ID Licensing

Feature Free Entra P1 Entra P2 Entra Suite
Basic user/group managementโœ”โœ”โœ”โœ”
MFABasicโœ”โœ”โœ”
Conditional Accessโœ˜โœ”โœ”โœ”
Dynamic Groupsโœ˜โœ”โœ”โœ”
Group-based licensingโœ˜โœ”โœ”โœ”
Application Proxyโœ˜โœ”โœ”โœ”
Identity Protectionโœ˜โœ˜โœ”โœ”
PIM (Privileged Identity Management)โœ˜โœ˜โœ”โœ”
Access Reviewsโœ˜โœ˜โœ”โœ”
โญ
Exam Key Points

P1 required for Conditional Access, Dynamic Groups, Application Proxy. P2 required for Identity Protection, PIM, and Access Reviews. Trial licenses do NOT charge you unless a valid payment method (credit card) is on file.

๐Ÿ’ก
License Assignment Note

A security group cannot be deleted if it has an active license assigned to it. You must remove the license first, then delete the group.

Groups & Dynamic Membership

Security Groups
  • Used to grant access to Azure resources
  • Support dynamic membership rules
  • Can have licenses assigned
  • Can be nested inside other security groups
Microsoft 365 Groups
  • Provides shared mailbox, calendar, Teams, SharePoint
  • Collaboration focused
  • Cannot be added to a security group
  • Support dynamic membership rules

Dynamic Membership Rules

What: Users/devices can be automatically added to a group based on attribute-based rules (e.g., department = "Engineering", jobTitle = "Developer").

How: Rules are configured the same way for both Security Groups and M365 Groups. When a user attribute matches the rule, they are automatically added/removed.

License needed: Entra ID P1 or P2

๐Ÿ”ด
Critical: M365 Groups

You CANNOT add a Microsoft 365 Group to a Security Group. This is a common exam trap.

Application Registration in Entra ID

Application Object
  • Global/blueprint object in home tenant
  • Can be used across all tenants (multi-tenant)
  • Defines permissions, certificates, secrets
  • Single definition, globally unique
Service Principal (SP)
  • Local representation in each tenant
  • Created automatically when app registered/granted access
  • Can only be used in its tenant
  • Holds actual role assignments and permissions
Permission TypeDescriptionWho Grants?
Delegated PermissionsApp acts on behalf of a signed-in user. Access is based on the user's permissions.User or Admin consent
Application PermissionsApp runs as itself (no user). Access based on app's own permissions.Admin consent ONLY

Client Secrets vs. Certificates

Client Secrets
  • Password-like string for app authentication
  • Simpler to set up
  • Less secure โ€” string can be shared/leaked
  • Have expiry date (max 24 months)
Certificates
  • Public/private key pair
  • More secure โ€” private key never shared
  • Preferred for production environments
  • Certificate stored in app; private key in app's secure store

Managed Identities

Problem solved: Traditionally, apps needing to access Azure resources (like Key Vault) needed credentials embedded in code โ€” a security risk.

Managed Identity: Azure manages the identity automatically. No credentials in code. The resource gets an SP in Entra ID, and you assign RBAC to that SP.

System-Assigned
  • Tied to a specific Azure resource
  • Deleted when resource is deleted
  • 1:1 relationship (one identity per resource)
  • Enabled directly on the resource
User-Assigned
  • Standalone Azure resource
  • Can be assigned to multiple resources
  • Lifecycle independent of assigned resources
  • Created separately, then attached
โญ
How it works

Resource (e.g., VM) โ†’ Managed Identity created in Entra ID โ†’ Assign RBAC on target resource (e.g., Key Vault) to that managed identity โ†’ App code uses Azure SDK to get token automatically โ€” no credentials in code.

Passwordless Authentication Methods

MethodHow It WorksStrength
Windows Hello for BusinessBiometric (face/fingerprint) or PIN tied to deviceVery High
Microsoft Authenticator AppPush notification or number matching on mobileHigh
FIDO2 Security KeysPhysical hardware key (USB/NFC) โ€” phishing-resistantHighest

Multi-Factor Authentication (MFA)

MFA adds an extra layer of authentication beyond username/password. Even if credentials are compromised, attacker still cannot authenticate without the second factor.

Security Defaults: Free tier feature that enables baseline MFA for all users. Replaces the old baseline Conditional Access policies.

Conditional Access

Conditional Access is if-then policies: IF a user/condition is detected, THEN enforce a control. Think of it as the zero-trust policy engine for access decisions.

ComponentExamples
Signals (IF)User, Group, IP/Location, Device platform, Application, Risk level
Controls (THEN)Require MFA, Block access, Require compliant device, Require Hybrid Azure AD join
๐Ÿ’ก
Important Note

All authentication-related settings are now managed under Authentication Methods Policies section in Entra ID. Named Locations can be defined (trusted IPs, countries) and used as signals in Conditional Access policies.

โญ
Exam: Requires P1/P2

Conditional Access requires Entra ID P1 or P2. Security Defaults (free) are mutually exclusive โ€” you must disable Security Defaults to use Conditional Access.

Identity Protection

Detects inconsistencies and anomalies in the sign-in process using machine learning. Generates risk signals that can be used in Conditional Access policies.

User Risk
  • Probability that an identity is compromised
  • Examples: leaked credentials, unusual behavior
  • Policy action: Require password change
Sign-In Risk
  • Probability that a sign-in is not by owner
  • Examples: atypical travel, unfamiliar location, anonymous IP
  • Policy action: Require MFA or Block
โญ
Requires Entra P2

Identity Protection is a P2-only feature. Risky users and risky sign-ins dashboards are available to review and remediate flagged identities.

Privileged Identity Management (PIM)

๐Ÿ”ด
Critical โ€” Requires Entra P2

PIM is heavily tested. Know the workflow, time limits, and what "Eligible" vs "Active" means.

PIM manages users with privileged roles. Instead of permanent role assignments, users get eligible assignments and must activate the role on demand.

PIM Workflow

STEP 1Admin makes user "Eligible" for role
โ†’
STEP 2User logs in & requests role activation in PIM portal
โ†’
STEP 3Approval (if required) & role activated
โ†’
STEP 4Role auto-removed after max 8 hours
ConceptDescription
Eligible AssignmentUser CAN activate the role but doesn't have it permanently. Must activate when needed.
Active AssignmentUser HAS the role right now. Can be permanent or time-bound.
Max Activation TimeUp to 8 hours per activation. After 8 hours, PIM automatically removes the role.
Permanently EligibleUser can re-request the role indefinitely (no expiry on eligibility).
ScopeWorks for Azure Resource roles, Entra ID roles, Groups, and specific users.
๐Ÿ’ก
PIM Alerts & Access Reviews

PIM can generate alerts for suspicious activity (e.g., roles activated without MFA). Access Reviews can be created within PIM to periodically verify whether users still need their privileged roles.

Application Proxy

Purpose: Provides remote access to on-premises web applications without opening inbound firewall ports. Users access on-prem apps through Entra ID from anywhere on the internet.

Prerequisites

  • Entra ID P1 or P2 license required
  • Application Administrator account
  • Users synchronized from on-premises to Entra ID (via Entra Connect)
  • App Proxy connector installed on-premises

Authentication Methods for Hybrid Sync

MethodAuth LocationWorks If AD Down?
Password Hash Sync (PHS)Cloud (Entra ID)Yes โ€” hash already synced
Pass-Through Auth (PTA)On-premises Domain ControllerNo โ€” needs DC
Federation (AD FS)On-premises AD FS serversNo โ€” needs AD FS
๐Ÿ”ด
Synced Users Are Read-Only in Entra

Users synced from on-premises Active Directory cannot have their properties changed in Entra ID. All attribute changes must be made in the on-premises AD and synced.

Hybrid Authentication โ€” Full Comparison

FeatureFederation (AD FS)Pass-Through Auth (PTA)Password Hash Sync (PHS)
Enforces Logon Hour LimitsYes (Real-time)Yes (Real-time)No (Sync-based)
Password PoliciesAD-drivenAD-drivenCloud-driven (once synced)
Server FootprintHigh (4+ servers)Low (Lightweight agents)Lowest (None beyond Connect)
Auth DependencyFails if AD FS downFails if AD/agents downWorks even if AD is down
Best ForComplex on-prem needsReal-time on-prem policy enforcementResilience, simplicity, cloud-first
02

Network Security

Azure Virtual Network (VNet)

An isolated network on the Azure cloud. Resources hosted in a VNet communicate privately. Scoped to a specific region and subscription.

๐ŸŒ VNet (Region + Subscription)
๐Ÿ“ฆ Subnet 1 (e.g., WebSubnet โ€” 10.0.1.0/24)
๐Ÿ–ฅ VM1, VM2
๐Ÿ“ฆ Subnet 2 (e.g., AppSubnet โ€” 10.0.2.0/24)
๐Ÿ–ฅ VM3, App Service
๐Ÿ“ฆ GatewaySubnet (reserved for VPN/ExpressRoute Gateways)

Network Security Groups (NSGs)

NSGs filter network traffic between Azure resources in a VNet. They contain Inbound and Outbound security rules.

NSG Rule Properties

PropertyDescription
NameUnique name for the rule
Priority100โ€“4096. Lower number = Higher priority
Source/DestinationIP, CIDR range, Service Tag, or ASG
ProtocolTCP, UDP, ICMP, or Any
Port RangeSingle port, range, or wildcard (*)
ActionAllow or Deny
๐Ÿ”ด
Critical NSG Rules โ€” Must Know
  • Rules are evaluated in priority order โ€” ONCE A RULE MATCHES, PROCESSING STOPS
  • Lower priority number = Higher priority (100 beats 200)
  • NSG can be associated with a Subnet OR a NIC โ€” NOT the entire VNet
  • If multiple NSGs exist, rules must be in ALL relevant NSGs to allow traffic

Default NSG Rules (Cannot Be Deleted)

PriorityNameInbound/OutboundAction
65000AllowVNetInBoundInboundAllow
65001AllowAzureLoadBalancerInBoundInboundAllow
65500DenyAllInBoundInboundDeny
65000AllowVNetOutBoundOutboundAllow
65001AllowInternetOutBoundOutboundAllow
65500DenyAllOutBoundOutboundDeny

Application Security Groups (ASGs)

ASGs are an extension to NSGs that allow you to group VMs together logically and use those groups as source/destination in NSG rules. Instead of managing IP addresses, you manage app-layer groups.

Without ASGs
  • NSG rule: Allow 10.0.1.4, 10.0.1.5, 10.0.1.6 on port 80
  • Must update IPs manually as VMs change
  • Error-prone and complex
With ASGs
  • Group VMs into "WebServers" ASG
  • NSG rule: Allow "WebServers" ASG on port 80
  • VMs added/removed from ASG โ€” rule stays same

VNet Peering

Connects two VNets together so resources can communicate directly using Microsoft backbone network (low latency, high bandwidth). Works same region and cross-region.

๐Ÿ”ด
No Overlapping CIDR Blocks

When peering VNets, they CANNOT have overlapping IP address ranges (CIDR blocks). This is a common exam scenario โ€” peering fails if address spaces overlap.

VPN Connections

VPN TypeUse CaseKey Details
Point-to-Site (P2S) Individual client computers โ†’ Azure VNet Protocols: OpenVPN, SSTP, IKEv2. Auth: Certificate, Entra ID, RADIUS+AD DS. Charged per hour.
Site-to-Site (S2S) On-premises network โ†’ Azure VNet (IPSec/IKE tunnel) Requires VPN device with public IP. Local Network Gateway needed. No overlapping subnets. Traffic encrypted via IPSec.

Point-to-Site: Certificate-Based Auth Flow

1Generate Root Certificate
โ†’
2Upload Root Cert Public Key to VPN Gateway
โ†’
3Generate Client Cert from Root Cert
โ†’
4Install Client Cert on each client PC
โ†’
5Download & install VPN client from Gateway

Site-to-Site: Key Requirements

  • On-prem VPN device with a publicly routable IP address (hardware like Cisco router, or software like Windows Server RRAS)
  • Local Network Gateway in Azure โ€” provides routing info to VPN Gateway for on-prem network
  • No overlapping subnets between on-prem and Azure VNet
  • Connection uses IPSec tunnel for encryption
  • Different SKUs available for VPN Gateway โ€” each has different throughput and pricing

ExpressRoute

Extends on-premises network to Microsoft cloud via a private, dedicated connection โ€” NOT over the internet. Provided through a connectivity partner.

  • 2 connections per circuit for built-in redundancy
  • Azure Private Peering โ€” access VMs via private IPs
  • Microsoft Peering โ€” access public services like M365, Azure PaaS
  • Higher reliability, lower latency, consistent bandwidth compared to VPN over internet
โญ
ExpressRoute vs VPN โ€” Key Difference

ExpressRoute = Private connection, NOT over internet. VPN = Encrypted tunnel OVER internet. ExpressRoute is for enterprises needing reliability and compliance.

Azure Virtual WAN

Centralized networking service to connect all network entities (VNets, on-premises branches, users) through a managed hub-and-spoke architecture.

๐ŸŒ Virtual WAN
๐Ÿข Virtual Hub (Region)
๐Ÿ”— Hub-VNet connections (connect spoke VNets)
๐Ÿญ VPN Sites (on-premises branch offices)
๐Ÿ’ป User VPN (P2S clients)
โšก ExpressRoute circuits

Network Watcher Service

ToolPurpose
Connection MonitorCheck network connectivity between machines (Azure or on-premises). Continuous monitoring.
Next HopShows the next route for a packet โ€” helps verify correct routing.
IP Flow VerifyChecks if a packet is allowed or denied to/from a VM. Shows which NSG rule is blocking traffic.
Connection TroubleshootTest connection from VM to VM, FQDN, URI, or IPv4 address.
NSG DiagnosticDetailed info about NSG security configuration for troubleshooting.
Traffic AnalyticsLog and visualize IP traffic flowing through NSGs.
NSG Flow LogsVisibility into user/app activity. Retires September 2027.
โญ
Exam Scenario

If asked "which tool to identify which NSG rule is blocking traffic" โ†’ IP Flow Verify. If asked "check if VM can reach a destination" โ†’ Connection Troubleshoot.

03

PaaS Security

Azure Storage Accounts

Storage TypeUse Case
Blob StorageUnstructured data โ€” images, documents, video, audio files (Object storage)
Azure FilesManaged file shares โ€” users/machines can map drives (SMB/NFS)
Storage QueueMessaging โ€” apps send and receive messages
Table StorageNon-relational structured data (NoSQL key-value)

Service Endpoints vs Private Endpoints

๐Ÿ”ด
Critical โ€” Heavily Tested

This comparison is a very common exam scenario. Know the differences deeply.

Service Endpoints
  • Traffic travels over Microsoft backbone network (not public internet)
  • Service remains a public service with public IP
  • Storage firewall used to restrict access to specific subnet
  • Does NOT block internet access to the service โ€” still publicly reachable by others
  • No additional cost
  • Simpler to configure
Private Endpoints
  • Creates a private NIC in your VNet for the PaaS service
  • Traffic NEVER leaves your VNet โ€” not even to MS backbone
  • Service gets a private IP address in your VNet
  • Effectively brings the service INTO your network
  • Charged per hour
  • Private DNS zone auto-created to map service FQDN to private IP
โญ
Setup Steps โ€” Service Endpoint

1. Enable service endpoint on subnet (e.g., Microsoft.Storage). 2. On storage account firewall, allow access only from that subnet. Two-step process.

Azure Cosmos DB

Fully managed NoSQL, relational, and vector database service. Provides fast, globally distributed data access.

๐ŸŒ Cosmos DB Account
๐Ÿ—„ Database
๐Ÿ“ฆ Container
๐Ÿ“„ Documents (JSON items)
  • Security: network firewall rules, private endpoints, Entra ID auth, role-based access
  • Data encrypted at rest by default (Microsoft-managed keys)
  • Supports customer-managed keys (CMK) for encryption
04

Web Application Security

Azure App Service

Fully managed platform for hosting web apps. Infrastructure (VM, OS, patching) is managed by Azure. High availability built-in.

VNet Integration TypeUse CaseRequirement
Regional VNet IntegrationApp accesses resources in a VNet (outbound)Dedicated empty subnet in same region
Gateway Required VNet IntegrationApp accesses resources in different region/classic VNetVPN Gateway required in VNet
Private Endpoints for Web AppsInbound private access to the web appPrivate endpoint + Private DNS zone
Hybrid ConnectionsApp connects to on-prem resources (TCP)Hybrid Connection Manager on-prem
๐Ÿ’ก
Regional VNet Integration Note

Requires a dedicated, empty subnet โ€” no other resources can be in that subnet. This is for outbound traffic from the app to VNet resources.

Azure Application Gateway

A Layer 7 (HTTP/HTTPS) load balancer that routes traffic based on HTTP request attributes (URL path, hostname, headers). Deployed in a dedicated empty subnet.

Components

ComponentRole
ListenersListen for incoming client connections (protocol, port, hostname, IP)
Frontend IP ConfigPublic or Private IP where clients connect
RulesRoute requests to backend targets based on listener + HTTP settings
Backend PoolTargets: NICs, VM Scale Sets, Public IPs, FQDNs, on-prem servers
HTTP SettingsProtocol, port, cookie-based affinity, connection drain, override hostname
Health ProbeMonitor health of backend resources. Custom or default probes.
URL RoutingRoute based on URL path (e.g., /videos โ†’ VideoServers, /* โ†’ DefaultServers)
Multiple Site HostingHost multiple websites on same gateway using different hostnames

WAF โ€” Web Application Firewall

Can be enabled on Application Gateway to protect against common web attacks like SQL Injection (SQLi) and Cross-Site Scripting (XSS). Uses OWASP rule sets.

โญ
App Gateway vs Azure Front Door vs CDN
  • Application Gateway: Regional Layer 7 LB + WAF. Within a region.
  • Azure Front Door: Global Layer 7 LB + WAF + CDN. Content delivery with low latency globally. Enhanced CDN.
  • Azure CDN: Content caching at edge locations globally (simpler than Front Door).

DDoS Protection

DDoS Network Protection
  • For individual public IP resources
  • 24/7 traffic monitoring
  • Real-time attack metrics
  • Access to Rapid Response team
  • DDoS Cost Protection (credits for scaling costs during attack)
DDoS IP Protection
  • Per public IP (pay per IP protected)
  • Core DDoS mitigation
  • No Rapid Response team
  • Simpler, lower-cost option
05

Firewall & Network Architecture

Azure Firewall

A fully managed, cloud-native, stateful network security appliance. Unlike NSGs (which filter within VNets), Azure Firewall provides full network/application-level inspection and can look into requests from external users or internal users trying to reach the internet.

Azure Firewall Rule Types

1
DNAT Rules โ€” Destination Network Address Translation. Used for port forwarding (like a bastion). Processed FIRST.
2
Network Rules โ€” Layer 3/4 rules (IP, port, protocol). Processed SECOND.
3
Application Rules โ€” Layer 7 (FQDNs, HTTP/HTTPS). Processed THIRD/LAST.
๐Ÿ”ด
Firewall Rule Processing Order โ€” Critical

Rule Collections Groups โ†’ processed by priority. Within a group, Rule Collections โ†’ processed by priority. Order is always: DNAT โ†’ Network โ†’ Application.

Routing Traffic Through Firewall

Creating a firewall alone doesn't route traffic through it. You must:

  1. Create the Azure Firewall in a hub VNet (needs AzureFirewallSubnet)
  2. Create a Route Table with a route: 0.0.0.0/0 โ†’ Azure Firewall private IP
  3. Associate the Route Table with the spoke subnets (e.g., WebSubnet)
  4. Create Firewall application/network rules to allow needed traffic
๐Ÿ’ก
Traffic destination note

Any traffic destined for the internet has the next hop IP 0.0.0.0/0. Adding a UDR (User Defined Route) for 0.0.0.0/0 pointing to the firewall private IP forces all internet-bound traffic through the firewall.

Azure Bastion

Fully managed service providing secure RDP/SSH connections to VMs from the Azure Portal โ€” no public IP needed on the VM. Eliminates exposure of RDP/SSH ports to the internet.

  • Deployed in its own subnet: AzureBastionSubnet
  • Connections made via browser (HTML5) โ€” no VPN client needed
  • Protects against port scanning as VM has no public IP
  • Supports both Windows (RDP) and Linux (SSH)

Hub-Spoke Network Architecture

HUB VNet Azure Firewall VPN / ExpressRoute GW Azure Bastion Spoke VNet 1 Web/App Workloads Dev Environment Spoke VNet 2 DB Workloads Prod Environment Spoke VNet 3 Management On-Premises VPN/ExpressRoute All traffic flows through Hub โ€” Firewall inspects everything

Hub contains shared services: Azure Firewall, VPN/ExpressRoute Gateway, Azure Bastion, DNS. Spokes contain workloads and connect to Hub via VNet Peering. All traffic between spokes or to internet is routed through Hub Firewall via UDRs.

Azure SQL Managed Instance Networking

Azure SQL Managed Instance has native virtual network implementation. It is deployed inside a VNet, providing full VNet integration unlike Azure SQL Database (which is a public service by default).

  • Deployed in a dedicated subnet in a VNet
  • Near 100% compatibility with SQL Server Enterprise Edition
  • Supports private IP communication natively
  • Good for lift-and-shift migrations of on-prem SQL Server
06

Key Management & Encryption

Azure Key Vault

Managed service for storing secrets (connection strings, passwords), encryption keys, and certificates (HTTPS). Used to keep sensitive data out of code and config files.

Key Vault Access Models

Access Policies (Legacy)
  • Set permissions per object type (keys, secrets, certs)
  • Less granular โ€” grant access to all keys or all secrets
  • Still supported but being replaced by RBAC
RBAC (Recommended)
  • Use Azure RBAC roles: Key Vault Officer, Key Vault Reader, Key Vault Secrets User, etc.
  • More granular โ€” can scope to individual secrets
  • Centralized in IAM blade
  • Preferred for new deployments

Soft Delete & Purge Protection

FeatureDescription
Soft DeleteAllows recovery of deleted vaults/objects within a retention period (7โ€“90 days configurable). Object goes to "deleted" state, not permanently removed.
Purge ProtectionWhen enabled, you CANNOT permanently delete a vault or object until the retention period expires. Prevents even admins from destroying data. Protects against ransomware/insider threats.
โญ
Deletion Process with Soft Delete

Step 1: Delete the vault โ†’ goes to soft-deleted state. Step 2: Purge the vault โ†’ permanently deleted. With Purge Protection enabled, Step 2 cannot happen until retention period expires.

Backup & Restore

Secrets, keys, and certificates can be backed up to an encrypted backup file and restored at any time. The backup is encrypted and can only be restored to the same Azure geography.

Key Rotation

Azure Key Vault supports automatic key rotation. You can configure a rotation policy to automatically rotate keys on a schedule. Integrates with services like Azure Storage for auto-rotating encryption keys.

Key Vault Network Security

  • By default Key Vault is accessible over the internet
  • Configure firewall rules to restrict to specific IP ranges or VNet service endpoints
  • Use Private Endpoint for fully private access (traffic stays in VNet)

Encryption Types & Concepts

Data States

Encryption at Rest
  • Protects data stored on physical disks
  • TDE for SQL databases
  • Azure Storage Service Encryption (SSE) โ€” enabled by default
  • Azure Disk Encryption for VM disks
Encryption in Transit
  • Protects data moving over network
  • TLS/SSL for web apps and storage
  • Enforce HTTPS-only on storage and App Service
  • ExpressRoute (private) vs VPN (IPSec)

Azure Disk Encryption

Encrypts Windows VM disks using BitLocker and Linux VM disks using DM-Crypt. Keys stored in Azure Key Vault. Protects data if physical disks are removed from datacenter.

Customer-Managed Keys (CMK)

By default, Azure uses Microsoft-managed keys for encryption. With CMK, you bring your own keys stored in Azure Key Vault. You control the key lifecycle (rotation, revocation). If you revoke the key, data becomes inaccessible โ€” giving you full control.

โญ
Platform-managed vs Customer-managed

Platform-managed keys: Azure handles everything. Customer-managed keys: You store keys in Key Vault, you control rotation/revocation. CMK is required for some compliance frameworks (HIPAA, PCI-DSS).

07

Governance & Compliance

Azure Policy

Helps govern Azure resources by defining rules (policies) that resources must comply with. Can enforce at subscription or management group level.

Initiative: A collection of policies grouped together (e.g., ISO 27001 initiative = 100+ policies).

Policy EffectBehaviorUse Case
DenyPrevents resource creation/update if non-compliantEnforce regions, SKUs, tags
AuditCreates compliance warning but does NOT blockMonitoring/reporting
DeployIfNotExistsDeploys a related resource if not presentAuto-deploy monitoring agent to VMs
ModifyAdds/changes tags or properties on resourcesAuto-tag resources
AppendAppends additional fields to resources during create/updateForce IP restrictions
AuditIfNotExistsAudit if a related resource does not existCheck if antimalware extension installed

Policy Remediation

For existing non-compliant resources: Remediation Tasks can be created to bring resources into compliance. Example: if "enable diagnostic settings" policy is added, remediation can automatically enable it on existing resources.

Management Groups

๐Ÿข Tenant Root Management Group
๐Ÿ“ Management Group (e.g., "Corp")
๐Ÿ“ Child Management Group (e.g., "Prod")
๐Ÿ”‘ Subscription A
๐Ÿ”‘ Subscription B
๐Ÿ“ Child Management Group (e.g., "Dev")
๐Ÿ”‘ Subscription C
๐Ÿ’ก
Root Management Group Access

To manage the root management group, you must first elevate your access via the Entra ID Properties blade (toggle "Access management for Azure resources"). This gives you User Access Administrator at root scope.

Azure Blueprints

Governance service that packages policies, RBAC assignments, ARM templates, and resource groups into a versioned, reusable blueprint. Applied across subscriptions to ensure consistent, compliant environments.

๐Ÿ”ด
Blueprint Resource Locks

When a lock is placed on a Blueprint assignment, nobody can delete the resources โ€” not even subscription owners. To delete resources, you must first unassign the blueprint, then delete the resources.

Blueprint Artifacts

  • Resource Groups โ€” scaffold the environment
  • ARM Templates โ€” deploy infrastructure as code
  • Role Assignments (RBAC) โ€” assign roles at subscription/RG level
  • Policy Assignments โ€” enforce compliance policies

Resource Locks

CanNotDelete Lock
  • Users can read and modify the resource
  • Cannot delete the resource
  • Use when you want to prevent accidental deletion
ReadOnly Lock
  • Users can only read the resource
  • Cannot modify or delete
  • Similar to applying Reader RBAC to everyone
  • Most restrictive lock type
08

Security Operations & Monitoring

Azure Monitor

Central platform for collecting, analyzing, and acting on telemetry from Azure and on-premises resources.

CapabilityDescription
MetricsNumerical data collected at regular intervals (CPU %, memory, disk I/O). Near real-time.
LogsStructured/unstructured data stored in Log Analytics workspace. Queryable with KQL.
AlertsTrigger actions when metrics/logs meet threshold. Action groups define what happens (email, webhook, ITSM).
InsightsPre-built monitoring experiences for VMs, containers, networks, apps.
WorkbooksInteractive visual reports combining data from multiple sources.

Log Analytics Workspace

Central repository for log data. Data is stored in tables with rows and columns. Multiple resources (VMs, services) can send data to a single workspace. Queried using Kusto Query Language (KQL).

  • Charged for data ingested (GB) and data retention duration
  • Data Collection Rules (DCR) define what data to collect from VMs and where to deliver it
  • Diagnostic settings on Azure resources send metrics/logs to Log Analytics

KQL Key Operators

OperatorPurposeExample
whereFilter rows by conditionSecurityEvent | where EventID == 4625
projectSelect specific columns| project TimeGenerated, Account, Computer
summarizeAggregate data (count, sum, avg)| summarize count() by Computer
joinCombine two tablesTable1 | join Table2 on $left.id == $right.id
extendAdd calculated columns| extend Age = now() - TimeGenerated
order bySort results| order by TimeGenerated desc
take / limitReturn N rows| take 100
binGroup time into intervals| summarize count() by bin(TimeGenerated, 1h)

Microsoft Sentinel

Cloud-native SIEM (Security Information and Event Management) + SOAR (Security Orchestration, Automation and Response). Sits on top of a Log Analytics workspace and provides threat detection, investigation, and response capabilities.

Architecture

Data SourcesAzure, M365, 3rd party SaaS
โ†’
Data ConnectorsStream data in
โ†’
Log Analytics WorkspaceData stored in tables
โ†’
SentinelAnalytics, Alerts, Incidents
โ†’
PlaybooksAutomated response

Analytics Rule Types

Rule TypeDescription
Scheduled RulesKQL-based queries that run on a schedule. Generate alerts when conditions met. Most flexible.
Near Real-Time (NRT)Limited set of scheduled rules that run every minute. For fast-moving threats.
Anomaly RulesML-based rules that observe behavior over time and alert on deviations from baseline.
Fusion RulesBuilt-in ML rules that correlate low-fidelity alerts from multiple sources into high-fidelity incidents.
Threat IntelligenceMatch known IoCs (IP, domain, file hash) from threat intel feeds against your data.

Sentinel RBAC Roles

RoleCan Do
ReaderView data, incidents, workbooks, other Sentinel resources
ResponderReader + manage incidents (assign, close, comment)
ContributorResponder + install solutions, create workbooks, analytic rules, automation rules
Playbook OperatorList, view, and manually run playbooks (Logic Apps)
Automation ContributorAdd playbooks to automation rules (needed by Sentinel service account)

Incident Workflow

1Raw Event Data
โ†’
2Analytics Rule runs KQL
โ†’
3Alert generated
โ†’
4Alerts correlated โ†’ Incident
โ†’
5Assign & Investigate Incident
โ†’
6Playbook (SOAR) auto-responds
๐Ÿ’ก
Pricing

Sentinel pricing is based on data analyzed and data stored in the Log Analytics workspace. Commitment tiers available for large deployments.

09

Microsoft Defender for Cloud

Overview

Cloud Security Posture Management (CSPM) + Cloud Workload Protection Platform (CWPP). Protects workloads across Azure, AWS, GCP, and on-premises.

  • Free 30-day trial available for enhanced plans
  • Free tier: Foundational CSPM, recommendations, secure score, regulatory compliance (Microsoft Cloud Security Benchmark)
  • Centralized Azure Policy based on Microsoft Cloud Security Benchmark (MCSB)

Secure Score

Numeric score (0โ€“100%) representing your overall security posture. Based on security controls โ€” each control has a max score. Remediating recommendations increases your score. Higher score = better security posture.

Defender Plans โ€” Workload Protection

Defender PlanProtectsKey Features
Defender for Servers Windows & Linux VMs (Azure, AWS, GCP, on-prem) Threat detection, Defender for Endpoint integration, JIT VM Access, Adaptive App Controls, Vulnerability Assessment, Security baselines, OS assessments
Defender for Storage Azure Storage Accounts Detects malicious file uploads, data exfiltration, data corruption
Defender for SQL Azure SQL DB, SQL MI, Synapse, SQL on VM/on-prem Vulnerability Assessment + Advanced Threat Protection with immediate security alerts
Defender for Containers AKS, container registries, Kubernetes clusters Container image scanning, runtime threat protection, Kubernetes security
Defender for App Service Azure App Service plans Threat detection for web apps, identify attack patterns

Just-In-Time (JIT) VM Access

Part of Defender for Servers. Locks down inbound ports (RDP 3389, SSH 22) on a VM by default. When access is needed, a request is made and access is granted for a limited time, then automatically revoked. Reduces attack surface.

โญ
JIT Workflow

Default: RDP/SSH ports BLOCKED by NSG rule. User requests access via portal/API โ†’ JIT creates temporary NSG rule allowing access from specific IP โ†’ Timer expires โ†’ Rule removed, ports blocked again.

Adaptive Application Controls

ML-powered feature in Defender for Servers. Analyzes what applications run on your VMs and creates an allowlist of known-good applications. Alerts when unexpected applications run (potential malware or unauthorized software).

Workflow Automation & Security Recommendations

Workflow Automation: Trigger Logic Apps in response to Defender for Cloud alerts or recommendation state changes. Used to auto-remediate or notify teams.

Security Recommendations: Actionable suggestions to improve security posture. Each recommendation shows affected resources, severity, and remediation steps.

10

Database & Storage Security

Azure SQL Database Security

Microsoft Entra Authentication for Databases

Instead of SQL logins, use Entra ID users/groups for database access. Set an Entra Admin for the SQL Server. Users can then connect using their Entra credentials (SSO, MFA, conditional access apply).

Database Auditing

Tracks database events and writes an audit log. Used for regulatory compliance and security investigation.

  • Can be set at database level or server level (server level applies to all DBs)
  • Audit logs sent to: Azure Storage Account, Log Analytics Workspace, or Event Hub
  • Important: When using Storage Account via portal, database server and storage account must be in the same region

Dynamic Data Masking

Hides sensitive data (e.g., credit cards, emails) from non-privileged users at query time. Data remains stored unmasked in the database. Only the query results are masked for non-privileged users.

โญ
Key Point

Dynamic Data Masking does NOT encrypt data โ€” it just masks it in query output. Privileged users see real data. Available for Azure SQL Database.

Transparent Data Encryption (TDE)

Encrypts database files, backups, and transaction logs at rest on physical discs. Encryption/decryption happens in real-time, transparent to the application. Already enabled by default on Azure SQL Database.

Always Encrypted

Protects sensitive column data (credit cards, SSNs) even from DBAs. Data is encrypted client-side before being sent to the database. The database engine never sees plaintext.

Column Master Key (CMK)
Stored in Key Vault or Windows Cert Store
protects โ†“
Column Encryption Key (CEK)
Encrypts actual column data
encrypts โ†“
Column Data
e.g., Credit Card Numbers
Deterministic Encryption
  • Same plaintext โ†’ always same ciphertext
  • Supports equality lookups, grouping, joins
  • Less secure (patterns may be inferred)
Randomized Encryption
  • Same plaintext โ†’ different ciphertext each time
  • More secure
  • Does NOT support searching, grouping, indexing, or joins
๐Ÿ’ก
Always Encrypted Setup

Must use SQL Server Management Studio (SSMS) to configure Always Encrypted โ€” not available via Azure portal. The Always Encrypted Wizard guides through key creation and column selection.

Database Firewall Rules

Azure SQL Database has server-level and database-level firewall rules. By default, all external access is blocked. You must explicitly allow client IP ranges or Azure services.

Storage Account Security

Shared Access Signatures (SAS)

A SAS is a signed URI that grants time-limited, granular access to storage resources without sharing account keys. Fine-grained permissions (read, write, delete, list) on specific resources.

SAS LevelScopeUse Case
Account SASEntire storage account (blobs, files, queues, tables)Admin access to all services
Service SASSingle service (e.g., Blob or Table)Access to specific service type
User Delegation SASBlob service onlyMost secure โ€” signed with Entra credentials, not account key

Blob Security Features

FeatureDescription
Blob SnapshotsRead-only, point-in-time copy of a blob. Manual creation.
Blob VersioningAutomatically maintains a copy (immutable snapshot) on every write. Full history.
Soft Delete (Blobs)Protects individual blob/snapshot/version from accidental delete by retaining data for a specified period.
โญ
Snapshots vs Versioning vs Soft Delete

Snapshots = manual point-in-time copy. Versioning = automatic copy on every write. Soft Delete = recovery window after deletion. These can all be used together for comprehensive data protection.

11

Container Security

Container Fundamentals

Containers package application code + dependencies into a portable, isolated unit. Lighter than VMs (share OS kernel). Docker is the standard container runtime.

Azure Container Registry (ACR)

A private container registry (like a private Docker Hub) for storing Docker container images. Supports geo-replication for multi-region deployments.

ACR RBAC Roles

RolePrimary PurposePermissions
AcrPullConsumptiondocker pull only. For production apps, AKS clusters.
AcrPushDeploymentdocker push AND pull. For CI/CD pipelines.
ReaderView-OnlySee registry settings in portal. Cannot pull images.
ContributorManagementCan delete registry, change pricing tiers. No Data Plane access by default in ABAC-enabled registries.
๐Ÿ”ด
ACR Role Trick โ€” Exam Trap

The Reader role does NOT allow pulling images โ€” it's view-only in portal. To pull images you need AcrPull. The Contributor role has no Data Plane access in newer registries โ€” cannot pull/push images.

ACR Authentication Methods

  • Entra ID / RBAC โ€” Recommended. Use managed identities for AKS/App Service
  • Admin account โ€” Legacy. Single username/password. Not recommended for production.
  • Service Principal โ€” For CI/CD pipelines and automation
  • Repository-scoped tokens โ€” Fine-grained access to specific repositories

Azure Container Instances (ACI)

Run containers directly in Azure without managing VMs or orchestrators. Serverless containers. Good for simple tasks, batch jobs, and burst workloads. No cluster management needed.

Azure Kubernetes Service (AKS)

Managed Kubernetes service. Azure manages the control plane. You manage worker nodes (or use nodepools). Supports auto-scaling, rolling deployments, and advanced networking.

AKS Security Best Practices

  • Use Managed Identity for AKS to pull from ACR (AcrPull role)
  • Use Azure Policy for AKS to enforce pod security standards
  • Use Private Clusters โ€” control plane API server only reachable via private IP
  • Enable Microsoft Defender for Containers for threat detection
  • Use Azure CNI for pod-level NSG enforcement

Microsoft Defender for Containers

Container Image Scanning
  • Scans images in ACR for known vulnerabilities (CVEs)
  • Scans on push and periodically
  • Integrates with Defender for Cloud recommendations
  • Registry-level scanning
Runtime Threat Protection
  • Detects suspicious activity in running containers
  • Crypto mining, privilege escalation, reverse shells
  • Works in AKS, Arc-enabled Kubernetes, EKS, GKE
  • Real-time alerts
12

Quick Reference & Critical Exam Tips

License Requirements โ€” At a Glance

FeatureRequired License
Basic Users/Groups/MFAFree
Conditional AccessP1 or P2
Dynamic GroupsP1 or P2
Group-Based LicensingP1 or P2
Application ProxyP1 or P2
Identity ProtectionP2 ONLY
PIMP2 ONLY
Access Reviews (in PIM)P2 ONLY

๐Ÿ”ด Critical Rules โ€” Never Forget

  • NSG priority: Lower number = Higher priority. 100 beats 4096. Once a rule matches, processing STOPS.
  • NSG association: Can ONLY attach to Subnet or NIC โ€” NOT to an entire VNet.
  • VNet Peering: No overlapping CIDR blocks allowed.
  • Service Endpoint: Does NOT block internet traffic to the service โ€” use Private Endpoint for that.
  • Private Endpoint: Creates NIC in your VNet. Traffic NEVER leaves your VNet. Chargeable per hour.
  • PIM max activation: 8 hours maximum per role activation.
  • M365 Groups: Cannot be added to a Security Group.
  • Blueprint locks: Even subscription owners cannot delete locked resources โ€” must unassign blueprint first.
  • TDE: Already enabled by default on Azure SQL Database.
  • Dynamic Data Masking: Does NOT encrypt โ€” masks at query result level only.
  • Always Encrypted: Must use SSMS to configure โ€” not Azure portal.
  • Firewall rule order: DNAT โ†’ Network โ†’ Application rules (always in this order).
  • Azure Bastion subnet: Must be named exactly AzureBastionSubnet.
  • Synced users: Properties of on-prem synced users CANNOT be changed in Entra ID.
  • AcrPull/AcrPush: Reader role โ‰  image pull. Contributor โ‰  data plane access.
  • Security Defaults vs Conditional Access: Mutually exclusive โ€” disable one to use the other.
  • Purge Protection: When enabled, even admins cannot permanently delete until retention period expires.
  • Soft Delete retention: 7โ€“90 days (configurable).

Common Exam Scenarios โ€” Know the Answer

ScenarioCorrect Answer / Tool
Block NSG traffic โ€” which rule is denying?IP Flow Verify (Network Watcher)
VM can't reach destination โ€” diagnoseConnection Troubleshoot (Network Watcher)
Route VM traffic through firewallUser Defined Route (UDR) with 0.0.0.0/0 โ†’ Firewall IP
Secure access to on-prem web app remotelyApplication Proxy (requires P1)
App accesses Key Vault without credentials in codeManaged Identity + RBAC on Key Vault
Limit RDP access to VM with time-based accessJust-In-Time (JIT) VM Access
Private access to Azure Storage โ€” no internet exposurePrivate Endpoint
Access to Storage over MS backbone (public still exists)Service Endpoint
Detect compromised user sign-in patternsIdentity Protection (P2)
Auto-add users to group based on department attributeDynamic Group Membership (P1)
Give privileged role access for limited timePIM (P2) โ€” Eligible assignment
Alert when unknown app runs on VMAdaptive Application Controls
Protect SQL column data even from DBAsAlways Encrypted
Mask credit card numbers for non-admin queriesDynamic Data Masking
Secure RDP to VM without public IPAzure Bastion
Detect threats in container imagesMicrosoft Defender for Containers (image scanning)
Prevent deletion of critical resourceResource Lock (CanNotDelete)
Force all subscriptions to use specific VM SKUsAzure Policy (Deny effect) at Management Group level

Important Numbers to Remember

ItemNumber/Value
PIM max role activation time8 hours
NSG rule priority range100 to 4096
Soft delete retention range7 to 90 days
Client secret max expiry24 months
ExpressRoute redundancy connections2 connections per circuit
Defender for Cloud free trial30 days
NSG flow logs retirementSeptember 2027
Firewall: DNAT โ†’ Network โ†’ ApplicationProcessing order (always)