Skip to content

A complete Azure Virtual Desktop deployment solution focused on compatibility across all clouds used by US Government customers.

License

Notifications You must be signed in to change notification settings

Azure/FederalAVD

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

605 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ–₯️ Federal Azure Virtual Desktop Automation

Enterprise-grade Azure Virtual Desktop deployment automation for Azure Commercial, Government, Secret, and Top Secret clouds

License: MIT Azure


πŸ“‹ Overview

The Federal AVD solution provides comprehensive automation for deploying and managing Azure Virtual Desktop environments across all Azure cloud environments with built-in Zero Trust security controls, multi-cloud support, and enterprise-scale capabilities.

What You Can Deploy

Component Description Documentation
πŸš€ Quick Start Step-by-step guide for new deployments Quick Start Guide
🌐 Networking Virtual network, subnets, NSGs, NAT gateway, hub peering, route tables, private DNS zones Quick Start - Networking
🏒 Host Pools Complete AVD host pool deployments with networking, storage, monitoring, and security Host Pool Deployment Guide
πŸ“¦ Image Management Central artifact storage and management for software packages Artifacts & Image Management
🎨 Custom Images Automated custom image builds with artifact-based software deployment Image Build Guide
πŸ”§ Add-Ons Lifecycle automation and operational tools Add-Ons

Cloud Environment Support

βœ… Azure Commercial β€’ βœ… Azure Government β€’ βœ… Azure Government Secret β€’ βœ… Azure Government Top Secret


πŸš€ Quick Start

Ready to deploy? The Quick Start Guide walks you through the complete deployment process with decision trees, prerequisites, and step-by-step instructions.

Deployment Path Overview

graph TD
    A[Start] --> B{Have Existing<br/>VNet?}
    B -->|No<br/>Greenfield| C[🌐 Deploy<br/>Networking]
    B -->|Yes| D{Need Custom<br/>Software?}
    C --> D
    D -->|Yes| E[πŸ“¦ Deploy Image<br/>Management]
    D -->|No| F[Use Marketplace<br/>Image]
    E --> G{Build<br/>Custom Image?}
    G -->|Yes<br/>Pre-install| H[🎨 Build Custom<br/>Image]
    G -->|No<br/>Runtime install| I[🏒 Deploy<br/>Host Pool]
    H --> I
    F --> I
    I --> J[βœ… Complete]
Loading

Deployment Methods

Component Blue Button Template Spec PowerShell/CLI
Networking (VNet, subnets, routing) βœ… Com/Gov βœ… All clouds βœ… All clouds
Image Management (infrastructure) ❌ ❌ βœ… All clouds
Custom Image Build βœ… Com/Gov βœ… All clouds βœ… All clouds
Host Pool βœ… Com/Gov βœ… All clouds βœ… All clouds
Add-Ons βœ… Com/Gov βœ… All clouds βœ… All clouds

πŸ’‘ About Template Specs:

  • Provide guided form experience with built-in validation
  • Generate parameter files for automation workflows
  • Useful for teams unfamiliar with ARM/Bicep syntax
  • Only UI option for air-gapped clouds (Secret/Top Secret)
  • Not available for image management infrastructure deployment

πŸ‘‰ Get Started Now - Complete prerequisites, deployment options, and step-by-step instructions


πŸ—οΈ Architecture Components

Core Components

Image Management Resources

Central storage and management for software artifacts. Required for custom image builds or session host customizations.

Resources Created:

  • πŸ—„οΈ Storage Account with blob container for artifacts
  • πŸ†” Managed Identity with RBAC for secure access
  • πŸ–ΌοΈ Compute Gallery for custom images
  • πŸ” Private endpoints (optional, for Zero Trust)

Learn More:

Custom Image Building

Automated custom image build pipeline with artifact-based customizations.

Features:

  • Automated software installation from artifacts
  • Windows Updates and optimizations
  • Supports marketplace or custom base images
  • Regional image replication
  • Build automation with PowerShell script

Learn More:

Host Pool Deployment

Complete AVD environment deployment with enterprise features.

What's Included:

  • AVD host pool, workspace, and application groups
  • Session host virtual machines (pooled or personal)
  • FSLogix profile storage (Azure Files or NetApp Files)
  • Monitoring with Log Analytics and Application Insights
  • Key Vault for secrets management
  • Private endpoints and network security (Zero Trust)
  • Backup and recovery configuration

Learn More:


πŸ”§ Add-Ons

Optional add-ons extend the base AVD deployment with advanced lifecycle management and operational automation:

Add-On Purpose Documentation
πŸ”„ Session Host Replacer Automates rolling replacement of session hosts when new images are available with zero-downtime updates Session Host Replacer
πŸ“Š Storage Quota Manager Monitors and automatically increases Azure Files Premium share quotas for FSLogix storage Storage Quota Manager
πŸ”‘ Update Storage Keys Updates FSLogix storage account keys on session hosts for Entra ID-only deployments Update Storage Keys
πŸ“ Run Commands on VMs Execute scripts on selected virtual machines from a resource group Run Commands

πŸ”’ Zero Trust Security

This solution is architected to align with Microsoft's Zero Trust principles for Azure Virtual Desktop:

Security Controls

Layer Capability
🌐 Network Private endpoints, no public IPs, network segmentation
πŸ” Identity Managed identities, Entra ID authentication, conditional access
πŸ“ Data Customer-managed keys, encryption at rest/transit, private connectivity
🎯 Access RBAC least privilege, Azure Policy enforcement, user assignment restrictions
πŸ“Š Monitoring Centralized logging, diagnostic data collection, threat detection
βš™οΈ Configuration Immutable infrastructure, artifact-based deployment, integrity verification

Zero Trust Architecture Details


🌍 Identity Solutions

Support for multiple identity configurations to meet organizational requirements:

Identity Solution Description Use Case
Active Directory Domain Services Traditional hybrid identity with AD domain join Enterprise hybrid environments with on-premises AD
Entra Domain Services Managed domain services in Azure Cloud-focused without on-premises AD infrastructure
Entra Kerberos (Hybrid) Entra ID-joined hosts with AD user accounts Modernizing while maintaining AD user accounts
Entra Kerberos (Cloud-Only) Entra ID users with Kerberos authentication Cloud-native with Kerberos for FSLogix
Entra ID Pure cloud identity solution Fully cloud-native deployments

Identity Solutions Details


πŸ“š Documentation

Getting Started

Deployment Guides

Advanced Topics

Add-Ons


🀝 Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately. Simply follow the instructions provided by the bot.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with questions or comments.


πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


ℒ️ Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

About

A complete Azure Virtual Desktop deployment solution focused on compatibility across all clouds used by US Government customers.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published