DoD Zero Trust Strategy for the applications and workloads pillar
The DoD Zero Trust Strategy and Roadmap outlines a path for Department of Defense components and Defense Industrial Base (DIB) partners to adopt a new cybersecurity framework based on Zero Trust principles. Zero Trust eliminates traditional perimeters and trust assumptions, enabling a more efficient architecture that enhances security, user experiences, and mission performance.
This guide has recommendations for the 152 Zero Trust activities in the DoD Zero Trust Capability Execution Roadmap. The sections correspond with the seven pillars of the DoD Zero Trust model.
Use the following links to go to sections of the guide.
- Introduction
- User
- Device
- Applications and workloads
- Data
- Network
- Automation and orchestration
- Visibility and analytics
3 Applications and workloads
This section has Microsoft guidance and recommendations for DoD Zero Trust activities in the applications and workloads pillar. To learn more, see Secure applications with Zero Trust.
Note
Recommendations in this section align with the draft DoD Enterprise DevSecOps Reference Design.
3.1 Application inventory
Microsoft Entra ID is an identity provider (IdP) for applications and cloud platforms, not just Microsoft 365, and Azure. Microsoft Entra ID includes web portals and RESTful APIs to retrieve lists of integrated applications. Microsoft Defender for Cloud Apps, a component of Microsoft Defender XDR, has features to discover, inventory, and block unsanctioned apps.
DoD Activity Description and Outcome | Microsoft guidance and recommendations |
---|---|
Target 3.1.1 Application/Code IdentificationDoD Organizations create an inventory of approved applications and code (e.g., source code, libraries, etc.). Each organization will track the supportability (i.e., active, legacy, etc.) and hosted location (i.e., cloud, on-premises, hybrid, etc.) at least in the inventory. Outcome: - Component has identified applications and classified as either legacy, virtualized on-premises, and cloud hosted |
Microsoft Entra ID Use the Microsoft Entra admin center to download a list of Microsoft Entra registered applications. Select Download in the top ribbon. - Application resource type If your organization uses Active Directory Federation Services (AD FS), deploy Microsoft Entra Connect Health. Use the application activity report to discover AD FS applications. - Monitor AD FS with Connect Health - Application activity report Microsoft Defender Vulnerability Management Use software inventory in Defender Vulnerability Management to view software in your organization. - Software inventory Microsoft Defender for Cloud Apps Set up Cloud Discovery in Defender for Cloud Apps to get a snapshot of applications accessed by users. - Set up Cloud Discovery - Investigate apps Microsoft Intune discovered apps Intune discovered apps are detected by Intune enrolled devices in the tenant. It’s a software inventory of the tenant. On corporate devices, apps or managed apps aren’t collected for this report. - Discovered apps Azure DevOps Use this service for secure package management. Developers share code and manage packages in one place. - Azure Artifacts - Azure GitHub repos |
3.2 Secure software development and integration
GitHub features like GitHub Advanced Security (GHAS) and GitHub Actions help you establish Zero Trust software development and deployment practices. GitHub Enterprise Cloud integrates with Microsoft Entra ID to manage entitlement with Microsoft Entra ID Governance and secure access with Conditional Access policies.
Developers can use Microsoft Authentication Libraries (MSAL) to integrate applications with Microsoft Entra ID. For more information, see Authenticate users for Zero Trust.
DoD Activity Description and Outcome | Microsoft guidance and recommendations |
---|---|
Target 3.2.1 Build DevSecOps Software Factory Pt1The DoD enterprise creates the foundational standards for modern DevSecOps processes and CI/CD pipelines. The concepts are applied in a standardized technology stack across DoD organizations able to meet future Application Security requirements. An enterprise-wide Vulnerability Management program is integrated with the CI/CD pipelines following the Vulnerability Management Program activities. Outcomes: - Developed Data/Service Standards for DevSecOps - CI/CD Pipeline is fully functional and tested successfully - Vulnerability Management program is officially in place and operating |
GitHub Actions GitHub Actions uses continuous integration and continuous delivery (CI/CD) to automate deployment pipelines. - GitHub Actions GitHub Advanced Security Use GitHub Advanced Security for GitHub and Azure DevOps to enhance the security of your code and development processes. - Advanced Security - Advanced Security for Azure DevOps Microsoft Entra SSO and provisioning Configure single sign-on (SSO) for Git tools using Microsoft Entra ID. - SSO integration with GitHub Enterprise Cloud organization - SSO integration with GitHub Enterprise Server - Connect an organization to Microsoft Entra ID To learn more about DevSecOps for Azure and other clouds, see the DoD Cheif Information Officer (CIO) Library. |
Target 3.2.2 Build DevSecOps Software Factory Pt2DoD Organizations will use their approved CI/CD pipelines to develop most new applications. Any exceptions will follow a standardized approval process to be allowed to develop in a legacy fashion. DevSecOps processes are also used to develop all new applications and update existing applications. Continual validation functions are integrated into the CI/CD pipelines and DevSecOps processes and integrated with existing applications. Outcomes: - Development of applications is migrated to CI/CD pipeline - Continual validation process/technology is implemented and in use - Development of applications is migrated to DevSecOps process and technology |
GitHub Advanced Security Use GitHub Advanced Security to scan for code dependencies and vulnerabilities. Configure periodic builds to assess code quality. - Advanced Security - CodeQL code scanning - Secure supply chain Bicep in Azure Provision cloud infrastructure using infrastructure-as-code (IaC) with Azure Resource Manager (ARM) and Bicep templates. - Bicep Microsoft Defender for Cloud Enable Defender for Cloud workload protections for subscriptions with application workloads. - Protect cloud workloads Microsoft Defender for DevOps Use Defender for DevOps to monitor security and alerts of pipelines in Azure DevOps (ADO) and GitHub. - Defender for DevOps |
Target 3.2.3 Automate Application Security & Code Remediation Pt1A standardized approach to application security including code remediation is implemented across the DoD enterprise. Part one (1) of this activity includes the integration of a Secure API gateway with applications utilizing API or similar calls. Code reviews are conducted in a methodical approach and standardized protections for containers and their infrastructure are in place. Additionally, any serverless functions where the third-party manages the infrastructure such as Platform as a Service utilize adequate serverless security monitoring and response functions. Code Reviews, Container, and Serverless security functions are integrated into the CI/CD and/or DevSecOps process as appropriate. Outcomes: - Secure API Gateway is operational, and majority of API calls are passing through gateway - Application Security functions (e.g., code review, container, and serverless security) are implemented as part of CI/CD and DevSecOps |
Azure Application Gateway Put publicly accessible web applications and APIs with Azure Application Gateway and Web Application Firewall. - Web Application Firewall Microsoft Entra ID applications Microsoft Entra ID is an authorization gateway for web application and API access. Expose APIs for registered applications using Microsoft Entra. Use built-in authentication and authorization (Easy Auth) in Azure App Service and Azure Functions. For Microsoft Entra ID-unaware APIs, use OAuth Authorization in Azure API management. - Configure an app to expose Web API - Authenticate and authorize in Azure App Service and Azure Functions - Authenticate and authorize to APIs GitHub Advanced Security Use GitHub Advanced Security for GitHub and Azure DevOps. See Microsoft guidance in 3.2.1. Microsft Defender for Cloud Enable Defender for Cloud workload protections for Azure subscriptions with API workloads. See Microsoft guidance in 3.2.2. |
Advanced 3.2.4 Automate Application Security & Code Remediation Pt2DoD Organizations modernize approaches to delivering internally developed and managed services following best practice approaches such as Microservices. These approaches will enable more resilient and secure architectures by allowing for quicker changes to code in each microservice as security issues are discovered. Further advancement security remediation activities continue across the DoD Enterprise with the inclusion of runtime security functions for containers as appropriate, automated vulnerable library updates and automated CI/CD approvals during the release process. Outcomes: - Secure API Gateway is operational and majority of API calls are passing through gateway - Services are provided following a Service Oriented Architecture (SOA) - Security Remediation activities (e.g., runtime security, library updates, release approvals) are fully automated |
Complete activities 3.2.2 and 3.2.3. |
3.3 Software risk management
GitHub Actions help automate, customize, and execute software development workflows for DevSecOps. With GitHub Actions, generate a software bill of materials (SBOM), analyze code, and scan for supply chain and dependency vulnerabilities. To learn more about GitHub Actions, see GitHub Actions.
DoD Activity Description and Outcome | Microsoft guidance and recommendations |
---|---|
Target 3.3.1 Approved Binaries/CodeThe DoD enterprise uses best practice approaches to manage approved binaries and code in a methodical approach. These approaches will include supplier sourcing risk management, approved repository usage, bill of materials supply chain risk management, and industry standard vulnerability management. Outcomes: - Supplier sourcing risk evaluated and identified for approved source - Repository and update channel established for use by development teams - Bill of Materials is created for applications identify source, supportability, and risk posture - Industry standard (DIB) and approved vulnerability databases are pulled in to be used in DevSecOps |
GitHub Actions Standardize DevSecOps processes to generate a software bill of materials (SBOM) with a continuous integration and continuous delivery (CI/CD) pipeline. - Generate software bills of materials Use GitHub Dependabot and CodeQL to automate security checks and scan for dependency vulnerabilities. - CodeQL code scanning - Secure supply chain Windows Defender Application Control Use Windows Defender Application Control to prevent untrusted code from executing on managed endpoints. - Application Control and App locker - Platform code integrity |
Target 3.3.2 Vulnerability Management Program Pt1The DoD enterprise works with Organizations to establish and manage a Vulnerability Management program. The program includes a policy and standards agreed upon by all Organizations. The developed program includes at a minimum the track and management of public vulnerabilities based on DoD applications/services. Organizations establish a vulnerability management team with key stakeholders where vulnerabilities are discussed and managed following the enterprise policy and standards. Outcomes: - Vulnerability Management Team is in place w/ appropriate stakeholder membership - Vulnerability Management policy and process is in place and agreed to w/ stakeholders - Public source of vulnerabilities are being utilized for tracking |
Threat and Vulnerability Management VM capabilities enable asset visibility, and intelligent assessments. TVM has built-in remediation tools for endpoints and servers. Use TVM with a vulnerability management program. - Microsoft Defender TVM Microsoft cloud security benchmark Review how Microsoft online services conduct vulnerability management. - TVM overview - Posture and vulnerability management |
Target 3.3.3 Vulnerability Management Program Pt2Processes are established at the DoD Enterprise level for managing the disclosure of vulnerabilities in DoD maintained/operated services both publicly and privately accessible. DoD Organizations expand the vulnerability management program to track and manage closed vulnerability repositories such as DIB, CERT, and others. Outcomes: - Controlled (e.g., DIB, CERT) sources of vulnerabilities are being utilized for tracking - Vulnerability management program has a process for accepting external/public disclosures for managed services |
Threat and Vulnerability Management Use the weaknesses page in Microsoft Defender TVM to identify and prioritize vulnerabilities discovered on your organization’s devices and servers. - Vulnerabilities in the organization Track remediation activities using the TVM vulnerable devices report. - Vulnerable device report |
Target 3.3.4 Continual ValidationDoD Organizations will implement a continual validation approach for application development where parallel deployment is conducted and integrated with an approved environment level (e.g., user acceptance testing, Production). Applications unable to integrate continual validation into their CI/CD process are identified and exceptions are provided as needed using a methodical approach. Outcomes: - Updated Applications are deployed in a live and/or production environment - Applications that were marked for retirement and transition are decommissioned - Continual validation tools are implemented and applied to code in the CI/CD pipeline - Code requiring continuous validation is identified and validation criteria are established |
Azure Chaos Studio Use Azure Chaos Studio to validate workloads. - Continuous validation GitHub Advanced Security Use GitHub features and actions for vulnerability management in the DoD Enterprise DevSecOps Reference Design. See Microsoft guidance in 3.2.1. |
3.4 Resource authorization and integration
Conditional Access is the Zero Trust policy engine in Microsoft Entra ID. Connect your application workloads with Microsoft Entra ID. Use Microsoft Entra ID Governance to manage entitlements and secure sign ins with Conditional Access policies. The policies use security attributes, like device health, session details, and risk to make adaptive access decisions. Microsoft Entra ID, Azure Resource Manager, and CI/CD pipelines authorize resource deployment in Azure.
DoD Activity Description and Outcome | Microsoft guidance and recommendations |
---|---|
Target 3.4.1 Resource Authorization Pt1The DoD enterprise standardizes on resource authorization approaches (e.g., Software Defined Perimeter) with the organizations. At a minimum, the resource authorization gateways will be integrated with identities and devices. Organizations deploy approved resource authorization gateways and enable for external facing applications/services. Other applications for migration and applications unable to be migrated are identified for exception or decommission. Outcomes: - Resource Authorization Gateway is in place for external facing applications - Resource Authorization policy integrated with identity and device - Enterprise-wide guidance on conversion standards are communicated to stakeholders |
Microsoft Entra ID Microsoft Entra is an authorization gateway for application resources. Integrate modern and legacy applications for SSO with Microsoft Entra. See Microsoft guidance 1.2.4 in User. Microsoft Entra ID Governance Use Microsoft Entra ID Governance app roles for access to applications. Assign users to app roles using static membership, dynamic Microsoft Entra security groups, or entitlement management access packages. - Add app roles to an app and receive them in a token - Role-based access control Conditional Access Use Conditional Access policies to dynamically authorize, control, or block application access. See Microsoft guidance 1.8.3 in User and 2.1.4 in Device. Azure Application Gateway Enable publicly accessible web applications and APIs with Application Gateway and Web Application Firewall. See Microsoft guidance 3.2.3. |
Target 3.4.2 Resource Authorization Pt2Resource authorization gateways are used for all possible applications/services. Applications unable to utilize gateways are either decommissioned or excepted using a risk based methodical approach. Authorizations are further integrated with the CI/CD pipeline for automated decision making. Outcomes: - Resource Authorization gateway is utilized for all applications - Resource Authorization is integrated with DevSecOps and CI/CD for automated functions |
Microsoft Entra Workload ID Use Workload identity federation to configure a user-assigned managed identity, or app registration to trust tokens from an external identity provider (IdP). Use the federated workload identity for GitHub Actions workflows. - Workload identity federation Azure API Management Use Azure API Management to manage, authorize, and expose services hosted on and outside Azure as APIs. - Azure API Management |
Target 3.4.3. SDC Resource Authorization Pt1The DoD enterprise provides a standardized approach for code-based compute management (i.e., Software Defined Compute) following industry best practices. Using risk-based approaches baselines are created using the approved set of code libraries and packages. DoD Organizations work with the approved code/binaries activities to ensure that applications are identified which can and can't support the approach. Applications which can support a modern software-based configuration and management approaches are identified and transitioning begins. Applications which cannot follow software-based configuration and management approaches are identified and allowed through exception using a methodical approach. Outcomes: - Applications unable to be updated to use approved binaries/code are marked for retirement and transition plans are created - Identified applications without approved binaries and code are updated to use approved binaries/code - Enterprise-wide Guidance on conversion standards are communicated to stakeholders |
Secure development Design, develop, and deploy Azure applications following the security development lifecycle and published best practices. - Secure development - Infrastructure as code - Azure Policy as code workflows Microsoft Entra ID Use the Microsoft identity platform for application authentication and authorization. - Migrate apps and authentication Azure Migrate Migrate to modern app platforms like Azure Kubernetes Service (AKS) and App Service containers. - Migrate workloads to modern app platforms - Assess ASP.NET apps for migration to AKS - Assess ASP.NET apps for migration to Azure App Service |
Target 3.4.4 SDC Resource Authorization Pt2Applications which support software-based configuration and management have been transitioned to a production/live environment and are in normal operations. Where possible applications which cannot support software-based configuration and management are decommissioned. Outcomes: - Updated Applications are deployed in a live and/or production environment - Applications that were marked for retirement and transition are decommissioned |
Azure Migrate Containerize and migrate ASP.NET apps and Java web apps using the Azure Migrate: App Containerization tool. Decommission applications that can't be modernized. - ASP.NET app containerization and migration to AKS - ASP.NET app containerization and migration to Azure App Service - Java web app containerization and migration to AKS - Java web app containerization and migration to Azure App Service |
Advanced 3.4.5 Enrich Attributes for Resource Authorization Pt1Initial attributes from sources such as User and Entity Activity Monitoring, Micro-segmentation services, DLP, and data rights management (DRM) are integrated into the Resource Authorization technology stack and policy. Any other attributes for later integration are identified and planned. Attributes are used to create basic risk posture of users, nonperson entities (NPEs), and devices allowing for authorization decisions. Outcomes: - Most API calls are passing through the Secure API Gateway - Resource Authorization receives data from Analytics Engine - Authorization policies incorporate identified attributes in making authorization decisions - Attributes to be used for initial enrichment are identified |
Microsoft Entra applications Use Microsoft Entra ID to authorize modern applications and APIs. Deploy Microsoft Entra application proxy and Azure Arc-enabled servers to extend Microsoft Entra ID to legacy authentication protocols. See Microsoft guidance in 3.1.1 and in 3.2.3. Conditional Access Microsoft Entra is a secure gateway for resource authorization. Conditional Access is the authorization engine. Configure policies for detailed authorization using user, application, user, environment conditions, including device- compliance status. - Conditional Access - Conditional Access design - Require compliant devices Dynamic security groups Create dynamic security groups based on user attributes. Use dynamic groups to scope Conditional Access policies for static attribute authorization, based on user attributes. - Dynamic membership for groups - Users, groups, and workload identities Microsoft Purview sensitive information types Define sensitive information types with Exact Data Match (EDM). Use sensitive info types with Microsoft Purview Information Protection and Purview data loss prevention (DLP) policies. - Data match based on sensitive info types - Discover and protect sensitive info Microsoft Entra ID Governance Use Microsoft Entra ID Governance for access to applications with app roles. Assign users to app roles with static membership, dynamic security groups, or entitlement management access packages. - Add app roles and receive them in a token - Role-based access control |
Advanced 3.4.6. Enrich Attributes for Resource Authorization Pt2Extended identified attributes are integrated with the resource authorization technology and policy. Confidence scoring is introduced across the attributes to create a more advanced method of authorization decision making in an automated fashion. Outcomes: - Authorization policies incorporate confidence levels in making authorization decisions - Confidence levels for attributes are defined |
Microsoft Entra ID Protection Use sign-in risk and user signals from Microsoft Entra ID Protection in a Conditional Access policy set. Configure authentication context including risk to establish confidence levels, based on environmental details and risk level. - Microsoft Entra ID risks - Policy template: sign-in risk MFA - Authentication context example See Microsoft guidance 1.3.3 in User. Custom security attributes Manage and assign custom security attributes for Microsoft Entra ID users. Use role assignment conditions for dynamic attribute-based access control (ABAC). - Custom security attributes |
Advanced 3.4.7. REST API Micro-SegmentsUsing the DoD Enterprise approved API gateway(s), application calls are micro-segmented only allowing authenticated and authorized access to specific destinations (e.g., microservices). When possible, API Micro-Segmentation consoles are integrated and aware of other Micro-Segmentation consoles such as Software Defined Perimeter Controllers and/or Software Defined Networking Consoles. Outcome: - Approved enterprise APIs are Micro-Segmented appropriately |
Azure networking and connectivity Isolate, filter, and control network traffic across ingress and egress flows. Apply defense-in-depth principles using localized network controls at available network boundaries. Follow the Azure Well-Architected Framework. - Networking and connectivity recommendations - Segmentation strategy recommendations API design Follow recommended practices to design APIs for microservices. Protect and authorize APIs with Microsoft Entra ID. - Microservice APIs - Protect APIs |
3.5 Continuous monitoring and ongoing authorizations
Microsoft Defender for Cloud security standards continually assess in-scope Azure subscriptions, Amazon Web Services (AWS) accounts, and Google Cloud Platform (GCP) projects with Defender for Cloud enabled for compliance with regulatory standards.
DoD Activity Description and Outcome | Microsoft guidance and recommendations |
---|---|
Advanced 3.5.1 Continuous Authorization to Operate (cATO) Pt1DoD Organizations utilize automation solutions within the environment to standardize the monitoring of controls and offer the capability to identify deviations. Where appropriate monitoring and testing are integrated with DevSecOps processes. Outcomes: - Controls derivation is standardized and ready for automation - Controls testing is integrated with DevSecOps processes and technology |
DoD Chief Information Officer (CIO) Library Integrate monitoring and testing into DevSecOps processes. See the DoD Enterprise DevSecOps Reference Design - DoD CIO Library Microsoft Defender for Cloud Protect Azure and non-Azure workloads with Defender for Cloud. Use regulatory compliance and Azure Policy initiatives to assess infrastructure continuously with configuration standards. Prevent configuration drift. - Assign security standards - Multicloud environments Microsoft Sentinel Automate Sentinel integration and deployment operations with GitHub and Azure DevOps. - Sentinel and Azure DevOps integration - Deploy custom content from a repository |
Advanced 3.5.2 Continuous Authorization to Operate (cATO) Pt2DoD Organizations fully automate control derivation, testing and monitoring processes. Deviations are automatically tested and resolved using existing cross pillar automation infrastructure. Dashboarding is used to monitor the status of authorizations and analytics are integrated with the responsible authorizing officials.< /br> Outcomes: - Controls testing is fully automated - Integration with standard IR and SOC operations is automated |
Microsoft Defender Threat and Vulnerability Management Incorporate Threat and Vulnerability Management (TVM) in your vulnerability management program. See Microsoft guidance in 3.3.2. Azure DevOps and Microsoft Sentinel Automate Sentinel integration and deployment operations with Azure DevOps. - Sentinel integration with Azure DevOps Microsoft Defender XDR and Sentinel Integrate Microsoft Defender XDR and Defender for Cloud with Sentinel. - Sentinel and Defender XDR for Zero Trust |
Next steps
Configure Microsoft cloud services for the DoD Zero Trust Strategy:
- Introduction
- User
- Device
- Applications and workloads
- Data
- Network
- Automation and orchestration
- Visibility and analytics