
- Module 1: Configure a project and repository structure to support secure pipelines.
In this module, you practice how to:
- Separate a project into team projects and repositories.
- Separate secure files between projects.
- Move the security repository away from a project.
- Assign project and repository permissions.
- Organize a project and repository structure.
- Module 2: Manage identity for projects, pipelines, and agents.
In this module, you practice how to:
- Configure a Microsoft-hosted pool.
- Configure agents for projects.
- Configure agent identities.
- Configure the scope of a service connection.
- Convert to a managed identity in Azure DevOps.
- Module 3: Configure secure access to pipeline resources.
In this module, you practice how to:
- Identify and mitigate common security threats.
- Configure pipeline access to specific agent pools.
- Manage secret variables and variable groups.
- Secure files and storage.
- Configure service connections.
- Manage environments.
- Secure repositories.
- Module 4: Configure and validate permissions.
In this module, you practice how to:
- Configure and validate user permissions.
- Configure and validate pipeline permissions.
- Configure and validate approval and branch checks.
- Manage and audit permissions in Azure DevOps.
- Module 5: Fundamental concepts and best practices for creating nested templates.
In this module, you practice how to:
- Create nested templates.
- Rewrite the main deployment pipeline.
- Configure the pipeline and the application to use tokenization.
- Remove plain text secrets.
- Restrict agent logging.
- Identify and conditionally remove script tasks in Azure DevOps.
- Module 6: Configure secure access to Azure Repos from pipelines.
In this module, you practice how to:
- Configure pipeline access to packages.
- Configure credential secrets, and secrets for services.
- Ensure that the secrets are in the Azure Key Vault.
- Ensure that secrets aren't in the logs.
- Module 7: This module is designed to help learners understand the importance of configuring pipelines to use variables and parameters securely in Azure DevOps.
In this module, you practice how to:
- Ensure that parameters and variables retain their type.
- Identify and restrict insecure use of parameters and variables.
- Move parameters into a YAML file that protects their type.
- Limit variables that can be set at queue time.
- Validate that mandatory variables are present and set correctly in Azure DevOps.