📄️ Define ownership and governance model for DevSecOps privileged groups
Implementation Effort: Medium – Inventorying privileged GitHub and Azure DevOps groups, assigning owners, and standing up access reviews and access packages spans identity engineering and the DevSecOps platform team.
📄️ Define developer platform roles and access model
Implementation Effort: Medium – Designing a unified role model across GitHub, Azure DevOps, and Microsoft Entra ID takes several steps and coordination among platform, security, and identity teams.
📄️ Discover and remediate ungoverned developer platform accounts
Implementation Effort: Medium – Auditing every GitHub and Azure DevOps roster, then migrating, converting, or removing accounts, is a multi-step effort coordinated with platform and identity owners.
📄️ Integrate DevOps platforms with Microsoft Entra ID
Implementation Effort: Medium – Connecting GitHub EMU and Azure DevOps to Entra ID, setting up SCIM provisioning, and planning the account cutover involves several steps across identity and platform teams.
📄️ Define developer access policies using Privileged Identity Management
Implementation Effort: Medium – Scoping PIM eligibility to GitHub and Azure DevOps admin roles builds on existing Entra governance but requires identity and platform teams to configure and test activation policies.
📄️ Configure default branch protection controls
Implementation Effort: Low – Applying a branch-protection ruleset or branch policy is a one-time setting an admin configures at the organization or repository level.
📄️ Review and reduce platform-level administrative permissions
Implementation Effort: Medium – Auditing admin roles across GitHub and Azure DevOps and right-sizing each one takes methodical review and coordination with the teams that hold those roles.
📄️ Establish organization-wide secure defaults for repository security
Implementation Effort: Medium – Configuring organization and enterprise security settings plus repository onboarding automation across GitHub and Azure DevOps takes several steps and licensing coordination.
📄️ Establish credential governance and blocking controls for developer platforms
Implementation Effort: Medium – Standing up recurring token, key, and service-connection reviews plus enforcement policies across both platforms is a multi-step effort with security and platform owners.
📄️ Adopt centralized enterprise identity model for source platforms
Implementation Effort: High – Consolidating GitHub and Azure DevOps onto a single Entra identity source and retiring unmanaged accounts is an ongoing program spanning identity and platform teams.
📄️ Implement static analysis security testing (SAST)
Implementation Effort: Medium – Enabling CodeQL code scanning across repositories and wiring it into pull request and CI workflows takes setup and tuning across engineering teams.
📄️ Enable secret scanning and push protection
Implementation Effort: Low – Turning on secret scanning and push protection is mostly an administrator toggle at the organization or repository level.
📄️ Evaluate and integrate third-party SAST and DAST tools
Implementation Effort: High – Identifying coverage gaps, evaluating candidate tools, and integrating and maintaining them in pipelines is an ongoing program rather than a one-time setup.
📄️ Plan and implement emergency access for DevOps platforms
Implementation Effort: Medium – Creating break-glass accounts for GitHub, Azure DevOps, and Entra ID, excluding them from lockout dependencies, and scheduling recurring tests takes coordinated planning.
📄️ Enable Dependabot alerts and security updates
Implementation Effort: Low – Turning on the dependency graph, Dependabot alerts, and security updates is a quick settings change per repository or organization.
📄️ Configure dependency review in CI
Implementation Effort: Low – Adding the dependency-review check to pull request pipelines is a targeted, one-time pipeline change.
📄️ Implement SBOM generation in release pipelines
Implementation Effort: Medium – Choosing an SBOM format, adding generation to every release pipeline, and defining storage and verification policy takes several steps across build teams.
📄️ Implement artifact signing and build provenance
Implementation Effort: High – Standing up signing and provenance for every release, wiring in verification gates, and maintaining keys and tooling is a sustained program.
📄️ Configure Workload Identity Federation for keyless CI/CD
Implementation Effort: Medium – Configuring federated credentials, trust conditions, and scoped RBAC for each pipeline and platform is a multi-step effort with cloud and platform owners.