Skip to main content
我们经常发布文档更新,此页面的翻译可能仍在进行中。 有关最新信息,请访问英语文档

此版本的 GitHub Enterprise 已停止服务 2023-03-15. 即使针对重大安全问题,也不会发布补丁。 为了获得更好的性能、更高的安全性和新功能,请升级到最新版本的 GitHub Enterprise。 如需升级帮助,请联系 GitHub Enterprise 支持

关于机密扫描

GitHub Enterprise Server 扫描仓库查找已知的密码类型,以防止欺诈性使用意外提交的密码。

Secret scanning 可用于 GitHub Enterprise Server 中的组织拥有的存储库。 有关详细信息,请参阅 “关于机密扫描”和“关于 GitHub 高级安全性”。

Note: Your site administrator must enable secret scanning for your GitHub Enterprise Server instance before you can use this feature. For more information, see "Configuring secret scanning for your appliance."

About secret scanning

If your project communicates with an external service, you might use a token or private key for authentication. Tokens and private keys are examples of secrets that a service provider can issue. If you check a secret into a repository, anyone who has read access to the repository can use the secret to access the external service with your privileges. We recommend that you store secrets in a dedicated, secure location outside of the repository for your project.

Secret scanning will scan your entire Git history on all branches present in your GitHub repository for secrets.

You can audit the actions taken in response to secret scanning alerts using GitHub tools. For more information, see "Auditing security alerts."

Service providers can partner with GitHub to provide their secret formats for scanning. To find out about our partner program, see "Secret scanning partner program" in the GitHub Enterprise Cloud documentation.

About secret scanning on GitHub Enterprise Server

Secret scanning is available on all organization-owned repositories as part of GitHub Advanced Security. The feature is not available on user-owned repositories. When you enable secret scanning for a repository, GitHub scans the code for patterns that match secrets used by many service providers. When a supported secret is leaked, GitHub Enterprise Server generates a secret scanning alert. For more information, see "Secret scanning patterns."

If you're a repository administrator, you can enable secret scanning for any repository. Organization owners can also enable secret scanning for all repositories or for all new repositories within an organization. For more information, see "Managing security and analysis settings for your repository" and "Managing security and analysis settings for your organization."

You can also define custom secret scanning patterns for a repository, organization, or enterprise. For more information, see "Defining custom patterns for secret scanning."

Accessing secret scanning alerts

When you enable secret scanning for a repository or push commits to a repository with secret scanning enabled, GitHub scans the contents of those commits for secrets that match patterns defined by service providers and any custom patterns defined in your enterprise, organization, or repository.

If secret scanning detects a secret, GitHub generates an alert.

  • GitHub sends an email alert to the repository administrators and organization owners. You'll receive an alert if you are watching the repository, and if you have enabled notifications either for security alerts or for all the activity on the repository.
  • If the contributor who committed the secret isn't ignoring the repository, GitHub will also send an email alert to the contributor. The emails contains a link to the related secret scanning alert. The commit author can then view the alert in the repository, and resolve the alert.
  • GitHub displays an alert in the Security tab of the repository.

For more information about viewing and resolving secret scanning alerts, see "Managing alerts from secret scanning."

Repository administrators and organization owners can grant users and teams access to secret scanning alerts. For more information, see "Managing security and analysis settings for your repository."

You can use security overview to see an organization-level view of which repositories have enabled secret scanning and the alerts found. For more information, see "About security overview."

You can also use the REST API to monitor results from secret scanning across your repositories or your organization. For more information about API endpoints, see "Secret scanning."

Further reading