GitHub Advanced Security のライセンス
Advanced Security 製品には、2 つのライセンス SKU (在庫管理ユニット) があります。
- GitHub Secret Protection: secret scanning やプッシュ保護など、シークレットの漏洩の検出と防止に役立つ機能が含まれます。
- GitHub Code Security: code scanning、プレミアム Dependabot 機能、依存関係レビューなど、脆弱性の検出と修正に役立つ機能が含まれます。
詳細については、機能の概要と価格情報および「GitHub Advanced Security について」を参照してください。
GitHub Advanced Security ライセンスの使用状況の測定方法
GitHub.com 上のすべてのパブリック リポジトリでは、Advanced Security 機能のサブセットを無料で利用できます。 パブリック リポジトリの可視性をプライベートに変更し、Advanced Security の料金を支払わない場合、Advanced Security 機能はそのリポジトリに対して無効になります。
その他のすべてのリポジトリの Advanced Security 機能の使用にはライセンスが必要です。 ライセンスの使用量は、GitHub Secret Protection or GitHub Code Security 機能が有効になっているリポジトリに対する一意のアクティブ コミッターの数に基づいて計算されます。 GitHub App ボットは無視されます。 ボットとマシンのアカウントの違いについては、「GitHub Apps と OAuth アプリの違い」を参照してください。
アクティブおよび一意のコミッター
Advanced Security 機能が有効になっている少なくとも 1 つのリポジトリに対して、アクティブな各コミッターは 1 ライセンスを使います。 コミットの 1 つが過去 90 日以内にリポジトリにプッシュされた場合、そのコミットの作成日に関係なく、コミッターはアクティブと見なされます。
- アクティブ コミッターとは、少なくとも 1 つのリポジトリに貢献し、organization または Enterprise で GitHub Team または GitHub Enterprise ライセンスを持つコミッターです。 つまり、メンバー、Enterprise 管理ユーザー、外部コラボレーター、または organization または Enterprise に参加する招待を保留しているユーザーでもあります。
- 一意のコミッターとは、1 つのリポジトリのみ、または 1 つの organization 内のリポジトリのみに貢献したアクティブ コミッターの数です。 そのリポジトリまたは organization に対して GitHub Secret Protection or GitHub Code Security を無効にすると、この数のライセンスを解放できます。
メモ
リポジトリが GitHub に移行されると、GitHub Advanced Security は、移行前からの過去のすべてのコントリビューションを考慮するのではなく、移行後に行われたコミットとプッシュに対してのみライセンスを使用します。
Advanced Security の [Global settings] ページで、organization のアクティブおよび一意のコミッターを確認できます。 [Secret Protection repositories] と [Code Security repositories] に、概要とリポジトリレベルの詳細が報告されます。 「組織のグローバル セキュリティ設定の構成」を参照してください。
GitHub Advanced Security 機能の無料使用
GitHub では、GitHub.com 上で Advanced Security の一部の機能を無料で利用できます。
- すべてのパブリック リポジトリは、コード スキャン、シークレット スキャン、依存関係のレビューにアクセスできます。
- シークレット リスク評価は、GitHub.com 上の organization で利用できます。 「Organization のシークレット リスク評価レポートの表示」を参照してください。
使用できる機能の詳細については、「GitHub Advanced Security について」を参照してください。
GitHub.com 上のプライベート リポジトリ、GHE.com と GitHub Enterprise Server でホストされているすべてのリポジトリでは、有料で Advanced Security 機能を使用できます。
計画したライセンス数を超えた使用
アカウントによっては、使用できるライセンス数に制限が設けられている場合があります。 たとえば、ボリューム課金には、ライセンス数があらかじめ定められています。
一意のアクティブ コミッター数がライセンス制限を超えた場合、Advanced Security ライセンスによって制御される機能は、既に有効になっているすべてのリポジトリで引き続き機能します。
ただし、追加のリポジトリで GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security を有効にすることはできません。 GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security が自動的に有効になるように構成されている、organization で作成された新しいリポジトリは、製品を無効にして作成されます。
GitHub Advanced Security ライセンスの支払い
追加ライセンスの料金は、GitHub アカウントに設定した支払方法で支払います。「支払いおよび課金情報の管理」を参照してください。
ライセンスの支払い方法は 2 つあります。
-
従量制課金は、GitHub Enterprise Cloud および GitHub Connect を使用した GitHub Enterprise Server 3.13 以降で利用できます。
- ユーザーは、GitHub Secret Protection or GitHub Code Security を個別に有効にすることができます。
- アクティブなコミッターが使用するライセンス数に対して毎月課金されます。
- 事前に定義されたライセンス制限はありません。
- 超過料金はありません。使った分だけ支払います。
メモ
GitHub Enterprise Server 上で、Advanced Security 製品の従量課金の使用は、GitHub Enterprise Cloud 上のリンクされた Enterprise アカウントを通じて課金されます。
-
GitHub Enterprise プランでのみ使用可能なボリューム/サブスクリプション課金
- 定義された期間 (通常は少なくとも 1 年間) 有効な特定の数の GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security ライセンスを購入します。詳細については、「Organization または Enterprise 向け Advanced Security の購入」を参照してください。
- アクティブなコミッターによる Advanced Security の使用量が購入したライセンスの数を超える場合は、この超過分の使用量をカバーするために追加のライセンスを購入する必要があります。
現在のライセンスの使用状況を確認する方法については、「従量制課金製品とライセンスの使用状況の表示」を参照してください。
使用状況の把握
ユーザーは、複数のリポジトリまたは organization にコントリビュートできます。 使用状況は organization 全体または Enterprise 全体について測定され、ユーザーが貢献しているリポジトリや organization の数に関係なく、各メンバーが 1 つのライセンスを使うことが保証されます。
1 つ以上のリポジトリに対して GitHub Secret Protection or GitHub Code Security を有効または無効にすると、GitHub によって使用状況がどのように変わるかの概要が表示されます。
- 従量制課金。ライセンスを使用するアクティブなコミッターの数の増減を示します。
- ボリューム/サブスクリプション課金。一意のアクティブなコミッターによって使用または解放されたライセンスの数を示します。
アクティブ コミッター数が時間の経過と共にどのように変化するかを示す例
次のタイムラインの例は、organization または Enterprise 内で、Advanced Security ライセンスの一意のアクティブ コミッター数が時間の経過と共にどのように変化するかを示しています。 月ごとに、イベントと合わせてその結果のコミッター数と使用量ベース課金への影響が表示されます。
Date | その月のイベント | 一意のアクティブ コミッター | 使用量ベースの課金への影響 |
---|---|---|---|
4 月 15 日 | Enterprise のメンバーは、リポジトリ X に対して GitHub Secret Protection and GitHub Code Security を有効にします。リポジトリ X には、過去 90 日間で 50 人のコミッターがいます。 | 50 | コミッター数 50 に対して課金が開始されます。 |
5 月 1 日 | 開発者 A はチームを切り替え、X リポジトリへのコミットを停止します。開発者 A のコントリビューションは、引き続き 90日間カウントされます。 | 50 | 即時に変更はされません。 開発者 A は、コントリビューションが 90 日間非アクティブになるまで引き続き課金されます。 |
8 月 1 日 | 90 日が経過したので、開発者 A のコントリビューションは必要なライセンスに対してカウントされなくなります。 | 50 - 1 = 49 | 開発者 A は課金カウントから削除され、課金対象のコミッターが 49 に減ります。 |
8 月 15 日 | Enterprise のメンバーは、2 つ目のリポジトリであるリポジトリ Y に対して GitHub Secret Protection and GitHub Code Security を有効にします。このリポジトリには、過去 90 日間に合計 20 人の開発者が投稿しました。 この 20 人の開発者のうち、10 人が最近リポジトリ X でも作業しており、追加のライセンスは必要ありません。 | 49 + 10 = 59 | 一意のコントリビュータ―数 10 が追加されたため、コミッター数 59 に対する課金に増加します。 |
8 月 16 日 | Enterprise のメンバーは、リポジトリ X に対して GitHub Secret Protection and GitHub Code Security を無効にします。リポジトリ X で作業をしていた 49 人の開発者のうち、10 人はリポジトリ Y で作業を続けており、ここには合計で 20 人の開発者が過去 90 日間に投稿しました。 | 49 - 29 = 20 | リポジトリ X の課金は毎月の支払いサイクルの終わりまで続行されますが、次のサイクルでは、全体的な課金はコミッター数 20 に減少します。 |
Advanced Security の予算の管理
コミッターとコストの管理に使用できるオプションは、課金モデルによって異なります。
従量制課金
予算とアラートを使って使用量とコストを制御できます。 GitHub Enterprise Cloud を使っている場合、コスト センターとポリシーを使ってコストを制御することもできます。 「「従量制課金製品の支出を管理するための予算の設定」 」を参照してください。
メモ
GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security を有効にしたとき、[Billing & Licensing] タブの使用状況データに変更が表示されるまでに最長 2 時間かかります。
Enterprise が GitHub Enterprise Server と GitHub Enterprise Cloud の両方で Advanced Security を使っている場合は、環境間でライセンスの使用状況を同期することで、ユーザーが不必要に複数のライセンスを使わないようにすることができます。 「GitHub Enterprise Server からクラウドへのライセンス使用状況の同期」を参照してください。
ボリューム/サブスクリプション課金
各ライセンスは、Advanced Security を使用できるアカウントの最大数を指定します。 対象のリポジトリの少なくとも 1 つで製品が有効にされているアクティブなコミッターごとに、1 つのライセンスを使います。 organization アカウントからユーザーを削除すると、ユーザーのライセンスは 24 時間以内に解放されます。
ライセンスを使用可能にしたらすぐに、一部のリポジトリで GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security を無効にするか、ライセンス サイズを増やすと、GitHub Secret Protection, GitHub Code Security, and GitHub Advanced Security を有効にするオプションが再度通常どおり動作します。
Enterprise アカウントが所有する organization による Advanced Security の使用を許可または禁止するポリシーを適用できます。 「エンタープライズのコード セキュリティと分析のためのポリシーの適用」を参照してください。
ヒント
GitHub Enterprise Server のすべてのスタンドアロン インスタンスは、ボリュームまたはサブスクリプション ライセンスを使います。 ライセンスを変更する場合は、GitHub の営業チームにお問い合わせください。