Microsoft · GH-500
Validates expertise in configuring, managing, and operating GitHub Advanced Security tools including code scanning, secret scanning, and dependency management to secure software development workflows.
Practice Questions
299
≈ 5 practice exams
Duration
100 minutes
Passing Score
Not publicly disclosed
Difficulty
IntermediateLast Updated
Jan 2025
Use this GH-500 practice exam to prepare for GitHub Advanced Security (GH-500) with realistic questions, detailed explanations, and focused study modes. The practice bank includes 299 questions for Microsoft GH-500, so you can review the exam steadily instead of relying on one long cram session.
As you practice, pay extra attention to recurring topics such as GHAS Security Features, Secret Scanning, Dependabot & Dependency Review, Code Scanning with CodeQL, and Security Best Practices. Start with short sessions to identify weak areas, then move into timed quizzes once your accuracy is consistent.
The explanations are especially useful when you want to connect exam wording to the responsibilities and scenarios described in the official certification guidance. Use the free preview first, then unlock the full question bank when you are ready to build a complete study routine.
The GitHub Advanced Security (GH-500) certification validates proficiency in configuring, managing, and operationalizing the full suite of GitHub Advanced Security (GHAS) tools to secure modern software development workflows. Candidates demonstrate mastery across three core security pillars: secret scanning (including push protection and custom patterns), dependency management via Dependabot and Dependency Review, and automated code analysis using CodeQL and third-party SARIF-compatible tools. The exam also covers Security Overview, alert management, and enforcement of security policies through Repository Rulesets and GitHub Actions workflows.
The certification is maintained by GitHub and administered through Microsoft's Pearson VUE testing infrastructure. It was updated in 2025 to reflect a revised seven-domain structure, expanding coverage of GitHub Enterprise configuration and sharpening the weight given to best practices and corrective measures. Holding this credential demonstrates the ability to shift security left—embedding automated vulnerability detection directly into the development lifecycle rather than treating it as a post-deployment concern. The certification is valid for two years from the date of achievement.
The GH-500 exam targets system administrators, software developers, application administrators, and IT professionals who work with GitHub Enterprise Cloud (GHEC) or GitHub Enterprise Server (GHES) and are responsible for securing codebases at scale. Ideal candidates include DevSecOps engineers integrating security gates into CI/CD pipelines, application security specialists managing organizational vulnerability programs, and GitHub administrators enforcing repository and organization-level security policies.
Candidates should have hands-on experience enabling and configuring GHAS features across repositories and organizations, familiarity with GitHub Actions workflows, and an understanding of software supply chain security concepts including dependency graphs, SBOMs, and CVE/CWE classification. The intermediate difficulty level assumes prior GitHub platform experience; this is not an entry-level credential.
Microsoft does not list formal prerequisites for GH-500, but the official audience profile specifies intermediate-level experience with GitHub Enterprise Administration. Candidates are expected to understand GitHub's repository, organization, and enterprise permission model before attempting the exam, as access control questions appear across multiple domains.
Recommended preparation includes practical experience enabling GHAS features on private repositories, working knowledge of GitHub Actions (creating and modifying workflow YAML files), familiarity with CodeQL query suites and SARIF output formats, and experience interpreting Dependabot alerts and dependency graphs. Completing the official Microsoft Learn training course GH-500T00-A: GitHub Advanced Security provides structured coverage of all exam objectives and is the primary recommended prerequisite resource.
The GH-500 exam is delivered through Pearson VUE and includes a 100-minute time limit. The exam is proctored and may include interactive lab components in addition to standard multiple-choice and scenario-based questions. Candidates can experience the question interface in advance via the official exam sandbox at GHCertDemo.starttest.com before scheduling.
The exam is available in English, Spanish, Portuguese (Brazil), Korean, and Japanese. Pricing is approximately $99 USD, varying by country or region of testing. No official passing score is published on the Microsoft Learn certification page; third-party sources cite 700/1000 as a commonly reported threshold, but this should be verified against official communications at time of registration. If a candidate fails, a retake is permitted 24 hours after the first attempt; subsequent retake wait times vary per Microsoft's standard retake policy. A free practice assessment is available on Microsoft Learn (assessment ID 590484996).
Professionals holding the GH-500 certification are positioned for roles such as DevSecOps engineer, application security engineer, GitHub Enterprise administrator, and security-focused software developer. As software supply chain security has become a regulatory and enterprise priority — driven by executive orders, frameworks like SLSA, and incidents targeting dependency ecosystems — the ability to operationalize GHAS tools within existing GitHub workflows is a differentiated and in-demand skill. The certification is relevant across both enterprise cloud environments (GitHub Enterprise Cloud) and self-hosted deployments (GitHub Enterprise Server), broadening its applicability across industries.
Because the credential is issued by GitHub (administered via Microsoft) rather than a generic cloud provider, it signals specific platform expertise to employers already standardized on GitHub for source control and CI/CD. It complements adjacent certifications such as GitHub Actions (GH-200), GitHub Administration (GH-700), and Microsoft's AZ-500 (Azure Security Engineer) for professionals building a security specialization. The two-year validity period requires periodic renewal, keeping certified professionals current with an actively evolving product.
5 sample questions with answers and explanations. The full bank has 299 questions, enough for 5 full-length practice exams.
Preview — answers shown1. MultiLanguage Corp has applications written in both Java and Python. Their security team wants to understand CodeQL's analysis capabilities across different language types. What represents a potential limitation of CodeQL's analysis model?
Explanation
CodeQL's analysis effectiveness depends on its compilation models and language support completeness. For compiled languages like Java and C++, CodeQL needs to monitor the build process to understand the complete codebase, which can be challenging with complex build systems. For interpreted languages like Python, CodeQL analyzes source code directly but may have limitations in understanding dynamic features or runtime behaviors. Different languages have varying levels of support maturity, and some language features or frameworks may not be fully supported by CodeQL's analysis engine.
2. DataFlow Systems is configuring their CodeQL workflow and needs to handle SARIF file uploads properly. They want to avoid the SARIF Upload Rejected Because of Default Setup error. The DevSecOps team needs to understand when this error occurs and how to resolve it. What causes this specific error?
Explanation
The SARIF Upload Rejected Because of Default Setup error occurs specifically when CodeQL default setup is enabled in a repository and a process tries to upload a SARIF file containing CodeQL analysis results. This blocking mechanism prevents user confusion when multiple systems generate similar code-scanning alerts. The error applies only to SARIF files containing CodeQL results, not results from other analysis tools. To resolve this error, you need to disable CodeQL default setup in the repository settings and then retry uploading the SARIF file. This is a deliberate design choice to avoid duplicate or conflicting CodeQL analyses. The error is not related to file formatting, permissions, or category conflicts.
3. StartupCloud needs to enable Dependabot alerts for their private repositories. Their security engineer wants to understand the default behavior for different repository types. What are the default settings for Dependabot alerts in public versus private repositories?
Explanation
Dependabot alerts are enabled by default for public repositories but must be manually enabled for private repositories. This is because private repositories require a GitHub Advanced Security license to access security features like Dependabot alerts. Public repositories receive these security features automatically as part of GitHub's commitment to open source security. Organizations with private repositories need to enable Dependabot alerts explicitly and ensure they have appropriate GHAS licensing.
4. RegionalBank's compliance team needs to understand how code scanning integrates into their software development lifecycle for audit purposes. They want to demonstrate that security analysis occurs at appropriate points in their development process. At what stage does code scanning provide the most value in the software development lifecycle?
Explanation
Code scanning provides maximum value when integrated throughout the software development lifecycle with analysis occurring on commits, pull requests, and through scheduled scans. This continuous integration approach enables early vulnerability detection during development, security validation during code review, and ongoing monitoring of the codebase. By embedding security analysis at multiple touchpoints, organizations demonstrate continuous security oversight for compliance purposes while enabling developers to address issues when they are less costly to fix.
5. DataFlow Corporation wants to optimize their code scanning configuration to avoid unnecessary scans on documentation updates and non-code changes. They frequently update README files, documentation, and configuration files that don't require security analysis. How should they configure their scanning workflow to improve efficiency?
Explanation
DataFlow should use paths-ignore configuration in their code scanning workflow to exclude documentation files and non-code directories from triggering unnecessary scans. The paths-ignore configuration allows specification of file patterns or directories that shouldn't trigger code scanning when modified. For example, they can exclude files with extensions like .md, .txt, or entire directories like docs/ or documentation/ from triggering pull request scans. This optimization reduces unnecessary resource consumption and scan delays when developers make documentation-only changes while maintaining comprehensive security coverage for actual code modifications. The paths-ignore configuration supports glob patterns for flexible exclusion rules that can accommodate various documentation structures and file types.
Microsoft Certified: Fabric Data Engineer Associate (DP-700)
DP-700 · 819 questions
GitHub Actions (GH-200)
GH-200 · 310 questions
GitHub Administration (GH-100)
GH-100 · 447 questions
GitHub Copilot (GH-300)
GH-300 · 352 questions
Microsoft Certified: Identity and Access Administrator Associate (SC-300)
SC-300 · 489 questions
Microsoft Certified: Fabric Analytics Engineer Associate (DP-600)
DP-600 · 792 questions
$17.99
One-time access to this exam