# GitHub Advanced Security 许可证计费

了解如何衡量功能的使用情况 Advanced Security 以及如何为其他许可证付费。

## 针对GitHub Advanced Security的许可证

Advanced Security 产品具有两个许可证 SKU（库存单位）：

* **GitHub Secret Protection**，包括可帮助你检测和防止机密泄露的功能，例如 secret scanning 和推送保护。
* **GitHub Code Security**，包括有助于查找和修复漏洞的功能，例如 code scanning、高级 Dependabot 功能和依赖项评审。

有关详细信息，请参阅[功能摘要和定价信息](https://github.com/enterprise/advanced-security#pricing)以及 [关于GitHub高级安全性](/zh/get-started/learning-about-github/about-github-advanced-security)。

## 如何衡量许可证的 GitHub Advanced Security 使用情况

向Advanced Security\*\*\*\*GitHub.com某个 \*\*\*\* 功能子集。 如果将公共存储库的可见性更改为专用存储库且不付费 Advanced Security， Advanced Security 则会禁用该存储库的功能。

Advanced Security使用**所有其他存储库中的功能需要许可证**。 在启用 \*\*\*\* 功能的情况下，可根据存储库的GitHub Secret Protection or GitHub Code Security数量计算许可证使用情况。
GitHub App 机器人将被忽略。 有关机器人帐户和计算机帐户之间的差异，请参阅“[GitHub 应用和 OAuth 应用之间的差异](/zh/apps/oauth-apps/building-oauth-apps/differences-between-github-apps-and-oauth-apps#machine-vs-bot-accounts)”。

### 活动提交者和唯一提交者

在启用 \*\*\*\* 功能的情况下，每个至少提交到一个存储库的Advanced Security都使用**一个许可证**。 如果提交者的一个提交在过去 90 天内被推送到存储库，则提交者被视为处于活跃状态，无论最初创作的时间如何。

* **活动提交者** 是那些参与至少一个代码库并且为你的组织或企业拥有GitHub Team或GitHub Enterprise许可证的提交者。 也就是说，他们也是成员、企业管理的用户、外部协作者，或者具有待处理的组织或企业加入邀请。
* **唯一提交者**是指只为一个仓库或一个组织的仓库做出贡献的活动提交者数。 通过为该存储库或组织禁用GitHub Secret Protection or GitHub Code Security，可以释放此数量的许可证。

> \[!NOTE] 使用 GitHub 将存储库迁移到 GitHub Enterprise Importer 时，GitHub Advanced Security 仅将许可证用于迁移\_后\_进行的提交和推送。 不考虑迁移 *前* 的历史贡献。 有关详细信息，请参阅“[关于 GitHub Enterprise Importer](/zh/migrations/using-github-enterprise-importer/understanding-github-enterprise-importer/about-github-enterprise-importer)”。

在 Advanced Security 的“全局设置”页面上，可以查看某个组织的活动唯一提交者。 在“Secret Protection 存储库”和“Code Security 存储库”下，将报告摘要和存储库级别详细信息。 请参阅“[配置组织的全局安全设置](/zh/code-security/how-tos/secure-at-scale/configure-organization-security/establish-complete-coverage/configure-global-settings)”。

## 免费使用GitHub Advanced Security功能

GitHub 在 Advanced Security 上免费提供部分 GitHub.com 功能。

* **所有公共仓库**均有权进行代码扫描、机密扫描和依赖项评审。
* **Secret risk assessment**适用于GitHub.com上的组织。 请参阅  文档中的 [](/zh/code-security/how-tos/secure-at-scale/configure-organization-security/configure-specific-tools/viewing-your-security-risk-assessment-reports)。
* **Code security risk assessment**适用于GitHub.com上的组织。 请参阅 [代码安全风险评估](/zh/code-security/concepts/code-scanning/risk-assessment)。

有关可用功能的完整详细信息，请参阅 [关于GitHub高级安全性](/zh/get-started/learning-about-github/about-github-advanced-security)。

需要**付费**才能在Advanced Security**专用存储库**GitHub.com中以及托管GHE.comGitHub Enterprise Server的所有存储库中使用功能。

## 使用超出计划的许可证

你的帐户可能对可以使用的许可证数量有限制。 例如，批量计费指定一定数量的许可证。

在您的唯一的、活跃的提交者数量超过许可证限制后，Advanced Security 由许可控制的功能将继续在所有已启用的存储库中发挥作用。

但是，将无法在任何其他存储库上启用 GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security 。 在将 GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security 配置为自动启用的组织中创建的任何新存储库都将在禁用产品的情况下创建。

## 支付 GitHub Advanced Security 许可证费用

使用为 GitHub 帐户设置的付款方式支付其他许可证的费用。 请参阅 [管理付款和账单信息](/zh/billing/how-tos/set-up-payment/manage-payment-info)。

有两种不同的许可证付款方式。

* **按流量计费**可用于 GitHub Enterprise Cloud，从 GitHub Enterprise Server 3.13 开始使用 GitHub Connect
  提供

  * 用户可以独立启用 GitHub Secret Protection or GitHub Code Security 。
  * 活动提交者使用的许可证数的每月结算。
  * 没有预定义的许可证限制。
  * 没有超额状态，只需为使用量付费。

  > \[!NOTE]
  > 在GitHub Enterprise Server 上，Advanced Security 产品的计量使用将通过 GitHub Enterprise Cloud 上的链接企业帐户计费。

* **批量/订阅计费**仅适用于GitHub Enterprise计划

  * 购买一个特定数量的GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security许可证，这些许可证的有效期为定义的时间段（通常至少为一年），请参阅文档中的[](/zh/billing/how-tos/products/buy-advanced-security)。
  * 如果活动提交者的 Advanced Security 使用量超过购买的许可证数量，则需要购买额外的许可证来覆盖这种超额使用量。

要查看当前许可证使用情况，请参阅 [查看按流量计费的产品和许可证的使用情况](/zh/billing/how-tos/products/view-productlicense-use)。

### 了解使用量

用户可以参与多个存储库或组织。 使用情况在整个组织或企业范围内进行衡量，以确保每个成员都使用一个许可证，无论用户对多少个仓库或组织做出贡献。

为一个或多个存储库启用或禁用 GitHub Secret Protection or GitHub Code Security 时， GitHub 显示如何更改使用情况的概述。

* 按流量计费，显示使用许可证的活动提交者人数的增加或减少。
* 批量/订阅计费，显示唯一活动提交者使用或释放的许可证数。

### 显示活动提交者数量如何随时间变化的示例

以下示例时间线演示了 Advanced Security 许可证的唯一活跃提交者数量如何在组织或企业中随时间变化。 每月你都会找到事件、由此产生的提交者计数以及对于按使用量计费的影响。

| Date                                               | 本月活动                                                                                                                                                          |       唯一活动提交者 | 对按使用量计费的影响 |
| :------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------: | :--------- |
| <span style="white-space: nowrap;">4 月 15 日</span> | 企业成员支持 GitHub Secret Protection and GitHub Code Security 存储库 **X**。存储库 **X** 在过去 90 天内有 50 个提交者。                                                              |               |            |
| **50**                                             | 针对 50 个提交者开始计费。                                                                                                                                               |               |            |
| <span style="white-space: nowrap;">5 月 1 日</span>  | 开发人员 **A** 切换团队并停止向存储库 **X** 进行提交。开发人员 **A** 的贡献将继续在 90 天内纳入计算。                                                                                               |               |            |
| **50**                                             | 无即时更改。 开发人员 **A** 将继续计费，直到其贡献处于非活动状态达 90 天为止。                                                                                                                 |               |            |
| <span style="white-space: nowrap;">8 月 1 日</span>  | 开发人员 **A** 的贡献不再计入所需的许可证，因为已超过 90 天。                                                                                                                          |  50 - 1 =<br> |            |
| **49**                                             | 开发人员 **A** 将从计费计数中移除，从而将应计费提交者人数减少到 49 个。                                                                                                                     |               |            |
| <span style="white-space: nowrap;">8 月 15 日</span> | 企业的一名成员为第二个存储库 GitHub Secret Protection and GitHub Code Security 启用了 \*\*\*\*。在过去 90 天内，共有 20 名开发人员参与了该存储库。 在这 20 名开发人员中，有 10 名最近还参与了存储库 **X** 的开发，不需要额外的许可证。 | 49 + 10 =<br> |            |
| **59**                                             | 计费增加至 59 个提交者，计入了 10 个新增的唯一贡献者。                                                                                                                               |               |            |
| <span style="white-space: nowrap;">8 月 16 日</span> | 企业 GitHub Secret Protection and GitHub Code Security 成员禁用存储库 **X**。在处理存储库 **X** 的 49 名开发人员中，10 个开发人员仍在处理存储库 **Y**，该存储库在过去 90 天内总共贡献了 20 名开发人员。                | 49 - 29 =<br> |            |
| **20**                                             | 存储库 **X** 会继续计费，直到当月计费周期结束为止，但整个计费计数会在下一个周期减少到 20 个提交者。                                                                                                       |               |            |

## 管理 Advanced Security 的预算

用于管理提交者和成本的可用选项取决于计费模式。

### 按流量计费

可以通过预算和警报来控制使用情况和成本。 如果使用 GitHub Enterprise Cloud，则还可以使用成本中心和策略来控制成本。
请参阅
[设置预算以控制按流量计费的产品的支出](/zh/billing/how-tos/set-up-budgets)

。

#### GitHub Advanced Security SKU 的硬性预算

Advanced Security 产品（Secret Protection 和 Code Security）的 SKU 级预算支持 **当达到预算上限时限制使用量** 选项。 对于 Advanced Security，此选项会阻止新的启用。 它 **不会** 在已处于活动状态的存储库上禁用 Advanced Security 。

达到预算限制时：

* 已启用的 Advanced Security 存储库将继续正常运行。 这些存储库中的活跃提交者仍会被计入统计并收费。
* Advanced Security 在预算增加或新的计费周期开始之前，无法对任何其他存储库启用。

有两种情况可能超过预算：

* 一名新的提交者在已启用 Advanced Security 的仓库中开始活跃。 需要支付额外的许可证费用。
* 当你在某个仓库上启用 Advanced Security，且该仓库中的活跃提交者数量超过剩余预算所允许的数量时，启用会成功，但超出预算限制的任何使用量都将被计费。

有关预算的详细信息，请参阅 [预算和警报](/zh/billing/concepts/budgets-and-alerts)。

> \[!NOTE] 启用 GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security 后，在“Billing and licensing”选项卡的使用情况数据中显示更改之前，最多会有两个小时的延迟。

如果企业同时使用Advanced Security这两种GitHub Enterprise ServerGitHub Enterprise Cloud许可证，则可以通过在环境之间同步许可证使用情况来确保用户不会不必要的使用多个许可证。 请参阅“[将许可证使用情况从 GitHub Enterprise Server 同步到云](/zh/billing/how-tos/manage-server-licenses/sync-license-usage)”。

### 批量/订阅计费

每个许可证指定可以使用 Advanced Security的最大帐户数。 至少一个启用了该产品的仓库的每个活动提交者消耗一个许可证。 从 组织 帐户中删除用户时，用户的许可证在 24 小时内释放。

一旦使许可证可用、在某些存储库中禁用 GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security 或增加许可证大小，启用 GitHub Secret Protection, GitHub Code Security, and GitHub Advanced Security 的选项将照常工作。

可以强制实施策略，以允许或禁止企业帐户所有的组织使用 Advanced Security。 请参阅“[强制实施企业的代码安全性和分析策略](/zh/enterprise-cloud@latest/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise)”。

> \[!TIP]
> 所有独立实例GitHub Enterprise Server均使用批量许可/订阅许可证。 如果要更改许可证，请联系 [GitHub销售团队](https://enterprise.github.com/contact) 。

## 在企业中禁用GitHub Advanced Security

若要禁用 GitHub Advanced Security 和防止企业内意外重新启用，企业所有者可以使用企业许可页中提供的 **“禁用 Advanced Security** ”选项。 这对计量用户尤其有用，可确保 GitHub Advanced Security 完全被禁用，且未经明确批准无法重新启用。

**“禁用Advanced Security**”选项：

* 在所有私有存储库和内部存储库中禁用GitHub Advanced Security
* 设置策略以防止未来付费使用
* 停止未来使用计费（仅限按使用计费）

请参阅“[禁用企业GitHub高级安全性](/zh/billing/how-tos/products/disable-ghas-for-enterprise)”。

## 其他阅读材料

* [计划试用 GitHub Advanced Security](/zh/code-security/tutorials/trialing-github-advanced-security/planning-a-trial-of-ghas)

* [大规模启用安全功能](/zh/code-security/concepts/security-at-scale/organization-security)

* [强制实施企业的代码安全性和分析策略](/zh/enterprise-cloud@latest/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise)