Skip to content

Commit ff948b9

Browse files
Merge pull request #53350 from wwlpublish/LP158678-4
Feedback bug fixes
2 parents e62da64 + ec567a1 commit ff948b9

22 files changed

Lines changed: 356 additions & 0 deletions
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.apply-governance-controls-ai-ready-workloads.introduction
3+
title: "Introduction"
4+
metadata:
5+
title: "Introduction"
6+
description: "Introduction."
7+
ms.date: 02/02/2026
8+
author: wwlpublish
9+
ms.author: bradj
10+
ms.topic: unit
11+
durationInMinutes: 3
12+
content: |
13+
[!include[](includes/1-introduction.md)]
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.apply-governance-controls-ai-ready-workloads.discover-classify-ai-infrastructure-assets
3+
title: "Discover and classify AI infrastructure assets"
4+
metadata:
5+
title: "Discover and classify AI infrastructure assets"
6+
description: "Discover and classify AI infrastructure assets."
7+
ms.date: 02/02/2026
8+
author: wwlpublish
9+
ms.author: bradj
10+
ms.topic: unit
11+
durationInMinutes: 12
12+
content: |
13+
[!include[](includes/2-discover-classify-ai-infrastructure-assets.md)]
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.apply-governance-controls-ai-ready-workloads.implement-azure-policy-guardrails-workloads
3+
title: "Implement Azure Policy guardrails for AI workloads"
4+
metadata:
5+
title: "Implement Azure Policy guardrails for AI workloads"
6+
description: "Implement Azure Policy guardrails for AI workloads."
7+
ms.date: 02/02/2026
8+
author: wwlpublish
9+
ms.author: bradj
10+
ms.topic: unit
11+
durationInMinutes: 11
12+
content: |
13+
[!include[](includes/3-implement-azure-policy-guardrails-workloads.md)]
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.apply-governance-controls-ai-ready-workloads.establish-data-lineage-track-pipelines
3+
title: "Establish data lineage tracking for AI pipelines Azure Policy guardrails for AI workloads"
4+
metadata:
5+
title: "Establish data lineage tracking for AI pipelines Azure Policy guardrails for AI workloads"
6+
description: "Establish data lineage tracking for AI pipelines Azure Policy guardrails for AI workloads."
7+
ms.date: 02/02/2026
8+
author: wwlpublish
9+
ms.author: bradj
10+
ms.topic: unit
11+
durationInMinutes: 10
12+
content: |
13+
[!include[](includes/4-establish-data-lineage-track-pipelines.md)]
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.apply-governance-controls-ai-ready-workloads.exercise-configure-governance-ai-deployment
3+
title: "Enable threat protection for AI services"
4+
metadata:
5+
title: "Enable threat protection for AI services"
6+
description: "Enable threat protection for AI services."
7+
ms.date: 02/02/2026
8+
author: wwlpublish
9+
ms.author: bradj
10+
ms.topic: unit
11+
durationInMinutes: 18
12+
content: |
13+
[!include[](includes/5-exercise-configure-governance-ai-deployment.md)]
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.apply-governance-controls-ai-ready-workloads.knowledge-check
3+
title: "Module assessment"
4+
metadata:
5+
title: "Knowledge check"
6+
description: "Knowledge check"
7+
ms.date: 02/02/2026
8+
author: wwlpublish
9+
ms.author: bradj
10+
ms.topic: unit
11+
module_assessment: true
12+
durationInMinutes: 6
13+
content: "Choose the best response for each of the following questions."
14+
quiz:
15+
questions:
16+
- content: "Your data science team trained an Azure Machine Learning model using a dataset that Purview classified as **Internal Use Only**. After deployment, Purview's automated classification detects that the source dataset now contains customer email addresses, upgrading the classification to **Confidential - personal data**. What governance action should you take first?"
17+
choices:
18+
- content: "Review lineage in Purview to identify all models trained from this dataset, verify that deployed endpoints use private network access, and flag models for security review to confirm access controls match the upgraded sensitivity level."
19+
isCorrect: true
20+
explanation: "Purview lineage identifies affected models so you can validate that existing security controls (private endpoints, access policies) match the elevated sensitivity. Security review confirms whether current protections suffice or require enhancement before taking disruptive action."
21+
- content: "Immediately delete all models trained from this dataset and redeploy them after removing personal data from the training data, as any model exposure represents a compliance violation requiring immediate remediation."
22+
isCorrect: false
23+
explanation: "Immediate deletion disrupts production without assessing actual risk—existing controls mayovide adequate protection for the upgraded classification. Downgrading classification ignores the discovered personal data and creates compliance risk by misrepresenting the data's true sensitivity level."
24+
- content: "Change the Purview classification back to **Internal Use Only** since the model was trained before the personal data was discovered, maintaining the original classification to avoid disrupting production services."
25+
isCorrect: false
26+
explanation: "Immediate deletion disrupts production without assessing actual risk—existing controls mayovide adequate protection for the upgraded classification. Downgrading classification ignores the discovered personal data and creates compliance risk by misrepresenting the data's true sensitivity level."
27+
- content: "You need to deploy an Azure Policy that enforces encryption with customer-managed keys for all Azure Machine Learning workspaces. Development teams report this requirement slows their experimentation because provisioning Key Vault and keys adds 15-20 minutes to workspace setup. Which policy enforcement strategy balances governance requirements with developer productivity?"
28+
choices:
29+
- content: "Assign the policy with DeployIfNotExists effect at the management group level, configuring automatic Key Vault and key provisioning so encryption is enforced transparently without manual developer configuration steps."
30+
isCorrect: false
31+
explanation: "DeployIfNotExists with automatic Key Vault provisioning still adds 15-20 minutes regardless of automation, and may create cost concerns with numerous test Key Vaults. Exemptions eliminate protection during development when data leaks often occur through experiment artifacts, creating unnecessary risk that staged enforcement avoids."
32+
- content: "Assign the policy with Audit effect to development subscriptions and Deny effect to production subscriptions, allowing developers to experiment freely while enforcing strict encryption controls before production deployment."
33+
isCorrect: true
34+
explanation: "Different policy effects for different environments balance security with productivity—Audit provides visibility in development without blocking work, while Deny enforces compliance in production where customer data risk is highest."
35+
- content: "Create a policy exemption for all development workspaces to eliminate the encryption requirement during experimentation, then require manual security review and encryption enablement before promoting workspaces to production."
36+
isCorrect: false
37+
explanation: "DeployIfNotExists with automatic Key Vault provisioning still adds 15-20 minutes regardless of automation, and may create cost concerns with numerous test Key Vaults. Exemptions eliminate protection during development when data leaks often occur through experiment artifacts, creating unnecessary risk that staged enforcement avoids."
38+
- content: "Your compliance team asks for a report showing which customer records influenced predictions made by your fraud detection model during August 2024. You need to provide this audit trail within 48 hours. Which Microsoft Purview capability enables you to meet this requirement efficiently?"
39+
choices:
40+
- content: "Use Purview's data lineage viewer to trace the model's inference endpoint back through registered model versions to the specific training dataset version used during August retraining, then query that dataset's lineage to identify source customer records."
41+
isCorrect: true
42+
explanation: "Purview lineage automatically captures version-specific relationships between inference endpoints, models, training datasets, and source records, letting you trace backwards from predictions to input data within minutes rather than days."
43+
- content: "Generate a Purview Data Catalog export showing all assets classified as **Confidential - Customer Data** and manually filter by creation dates in August, assuming these represent the records used for model training that month."
44+
isCorrect: false
45+
explanation: "Catalog exports show asset inventory but not data flow relationships, requiring manual correlation that takes days and introduces human error. Audit logs capture execution events but not data lineage—knowing a training job ran doesn't reveal which specific records it consumed without querying lineage metadata."
46+
- content: "Configure Purview audit logs to track all Azure Machine Learning training job executions during August, then contact data scientists to manually document which customer records they included in training datasets for that period."
47+
isCorrect: false
48+
explanation: "Catalog exports show asset inventory but not data flow relationships, requiring manual correlation that takes days and introduces human error. Audit logs capture execution events but not data lineage—knowing a training job ran doesn't reveal which specific records it consumed without querying lineage metadata."
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.apply-governance-controls-ai-ready-workloads.summary
3+
title: "Summary"
4+
metadata:
5+
title: "Summary"
6+
description: "Summary."
7+
ms.date: 02/02/2026
8+
author: wwlpublish
9+
ms.author: bradj
10+
ms.topic: unit
11+
durationInMinutes: 3
12+
content: |
13+
[!include[](includes/7-summary.md)]
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
Your organization deployed Azure OpenAI Service across three business units, each team spinning up models independently. Within weeks, your compliance officer discovers training datasets containing customer personal data scattered across storage accounts in five different regions—some outside approved jurisdictions. Meanwhile, your security team can't answer an Audit (Standard) question: which production applications consume which AI models, and who approved those connections?
2+
3+
This scenario reflects a common challenge as organizations scale AI workloads. Without governance controls, AI infrastructure becomes a compliance uncertainty. Training datasets multiply across environments without classification. Model deployments bypass network security policies. Data lineage remains invisible, making regulatory audits time-consuming and error-prone. As AI adoption accelerates, these gaps create measurable risk: organizations face potential regulatory fines, data breaches exposing sensitive training data, and operational overhead managing access controls across hundreds of AI resources.
4+
5+
Microsoft Purview and Azure Policy provide a unified governance framework that addresses these challenges head-on. Purview automatically discovers AI assets across your Azure environment, classifies sensitive data, and traces lineage from source datasets through model training to inference endpoints. Azure Policy enforces guardrails that prevent noncompliant deployments before they reach production. Together, these services transform AI governance from reactive firefighting into proactive risk management.
6+
7+
In this module, you implement governance controls for a multi-region AI deployment. You configure Purview to discover and classify Azure OpenAI Service and Azure Machine Learning resources, deploy policy guardrails that enforce data residency and encryption requirements, establish data lineage tracking for training pipelines, and monitor compliance using audit logs and reports. By the end, you have a repeatable framework for governing AI infrastructure that reduces compliance risk while enabling innovation.
8+
9+
## Learning objectives
10+
11+
By the end of this module, you're able to:
12+
13+
- Configure Microsoft Purview to discover and classify AI infrastructure assets
14+
- Implement Azure Policy guardrails for AI resource provisioning and management
15+
- Establish data lineage tracking for AI training datasets and model outputs
16+
- Monitor AI workload compliance using Microsoft Purview audit logs and reports
17+
- Design access controls that protect AI models and sensitive training data
18+
19+
## Prerequisites
20+
21+
- Familiarity with Azure fundamentals and resource management
22+
- Basic understanding of AI and machine learning concepts
23+
- Experience with Microsoft Entra ID (formerly Azure Active Directory) for identity management
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
Before you can govern AI infrastructure, you need visibility into what exists across your Azure environment. Consider a scenario where your data science teams have deployed Azure OpenAI Service instances, Azure Machine Learning workspaces, and storage accounts for training datasets across multiple subscriptions. Without a centralized catalog, your governance team can't answer fundamental questions: How many AI models are running in production? Which datasets contain regulated data? Who owns each resource?
2+
3+
Microsoft Purview Data Map solves this discovery challenge by automatically scanning your Azure subscriptions and cataloging AI resources. Unlike manual inventory spreadsheets that become outdated within days, Purview maintains a real-time catalog that reflects your actual environment. The Data Map discovers four critical categories of AI assets: Azure OpenAI Service deployments, Azure Machine Learning models and endpoints, training datasets in storage accounts, and inference pipelines. Each discovered asset appears in Purview's unified catalog with metadata including resource location, creation date, and ownership information.
4+
5+
## Automated discovery process
6+
7+
Purview's discovery engine integrates with Azure Resource Graph to enumerate AI resources across subscriptions you specify during setup. When you register an Azure subscription as a data source in Purview, the scanner queries Resource Graph APIs to identify Azure OpenAI Service instances, Azure Machine Learning workspaces, and storage accounts tagged for AI workloads. This automated approach eliminates the manual effort of tracking resources across environments. The scanner runs on a schedule you configure—typically daily for production environments—ensuring your catalog stays current as teams deploy new models or decommission old ones.
8+
9+
Once discovered, each asset requires classification to support governance decisions. With this foundation of discovery in place, you need a systematic approach to categorizing the sensitivity of your AI resources and the data they process.
10+
11+
## Classification schemas and sensitivity labeling
12+
13+
Purview applies classification rules to AI assets using built-in and custom schemas that identify sensitive data patterns. For training datasets stored in Azure Data Lake Storage or Blob Storage, Purview's automated classification engine scans file contents looking for patterns that match regulatory categories: credit card numbers, social security identifiers, healthcare records, or personal data. When the classifier detects sensitive patterns, it applies appropriate labels automatically—eliminating the manual review burden that slows governance initiatives.
14+
15+
Building on automated classification, you can integrate information protection sensitivity labels that propagate throughout the AI lifecycle. Suppose your organization defines a "Confidential - Customer Data" label for datasets containing personal data. When Purview classifies a training dataset with this label, the protection follows the data through transformation pipelines. The Azure Machine Learning model trained on that dataset inherits the sensitivity label, as does the inference endpoint that serves predictions. This cascading protection ensures governance controls remain consistent from source data to production deployment.
16+
17+
At the same time, you maintain flexibility for AI assets that require manual classification decisions. Custom classification rules let you define business-specific patterns—for example, identifying proprietary product designs or internal financial forecasts in training data. You create these rules using regular expressions or keyword matching, then assign them to scan policies that target specific storage accounts or resource groups. This becomes especially important when your organization's data sensitivity extends beyond regulatory categories into competitive intellectual property.
18+
19+
:::image type="content" source="../media/confidential-sensitivity-label-applied-train-dataset.png" alt-text="Diagram showing how a Confidential sensitivity label applied to a training dataset automatically propagates to derived models during training.":::
20+
21+
## Integration with governance workflows
22+
23+
The classified asset catalog becomes the foundation for downstream governance capabilities. With assets discovered and labeled, you can enforce access controls based on sensitivity. For example, your policy might restrict "Highly Confidential" AI models to private network access only, preventing public internet exposure. Purview's integration with Azure role-based access control (RBAC) lets you map sensitivity labels to permission requirements: data scientists can read training datasets labeled "Internal Use Only," while only designated model reviewers can access "Confidential" model artifacts.
24+
25+
Consider what happens when a new data scientist joins your team. Without Purview classification, they might accidentally use a dataset containing customer personal data for an experimental model, creating compliance risk. With classification in place, the dataset's "Confidential" label triggers an approval workflow before granting access. The data scientist submits a justification, their manager approves, and Purview logs the decision for audit purposes. This automated governance reduces security team workload by 40-60% compared to manual access request processing.
26+
27+
Now that you understand how Purview discovers and classifies AI assets, you're ready to explore how Azure Policy enforces guardrails that prevent noncompliant deployments before they reach production. The combination of asset visibility and proactive policy enforcement creates a defense-in-depth governance strategy.
28+
29+
:::image type="content" source="../media/microsoft-purview-data-map.png" alt-text="Diagram showing Azure subscriptions feeding into Microsoft Purview Data Map through Azure Resource Graph.":::
30+
31+
*Microsoft Purview Data Map discovering and cataloging AI assets across Azure environments with automated classification and sensitivity labeling*
32+
33+
34+

0 commit comments

Comments
 (0)