GitHub は、Advanced Security 機能のサブセットを、GitHub.com 上のすべてのパブリック リポジトリで無料で利用できるようにします。 さらに、無料のsecret risk assessmentを使用して、漏洩したシークレットへの露出に関する分析情報を取得できます。 「Organization のシークレット リスク評価レポートの表示」を参照してください。
プライベート リポジトリで Advanced Security 機能を使用するには、料金を支払う必要があります。 パブリック リポジトリの可視性をプライベートに変更し、Advanced Security の料金を支払わない場合、Advanced Security 機能はそのリポジトリに対して無効になります。
Advanced Security 製品のライセンスの種類
Advanced Security 製品のライセンスは柔軟であり、ビジネス ニーズに合ったオプションを簡単に選択できます。
- GitHub Secret Protection: secret scanning やプッシュ保護など、シークレットの漏洩の検出と防止に役立つ機能が含まれます。
- GitHub Code Security: code scanning、プレミアム Dependabot 機能、依存関係レビューなど、脆弱性の検出と修正に役立つ機能が含まれます。
たとえば、まずすべてのリポジトリで GitHub Secret Protection を使用し、リスクの高いリポジトリで GitHub Code Security をパイロット運用することができます。 支払いは必要な製品に対してのみ行い、コードのセキュリティの利点が見られたら展開します。
詳細については、機能の概要と価格情報および「GitHub Advanced Security について」を参照してください。
Advanced Security 製品の課金モデル
Advanced Security 製品が有効になっている少なくとも 1 つのリポジトリに対してアクティブな各コミッターがそれぞれ 1 つのライセンスを使用します。 コミットの 1 つが過去 90 日以内にリポジトリにプッシュされた場合、そのコミットの作成日に関係なく、コミッターはアクティブと見なされます。
ライセンスの支払い方法は 2 つあります。
-
従量制課金
- ユーザーは、GitHub Secret Protection or GitHub Code Security を個別に有効にすることができます。
- アクティブなコミッターが使用するライセンス数に対して毎月課金されます。
- 事前に定義されたライセンス制限はありません。
- 超過状態はありません。使用した分についてのみ支払います。
-
GitHub Enterprise プランでのみ使用可能なボリューム/サブスクリプション課金
- ユーザーは、課金を設定するように営業チームに依頼する必要があります。
- 特定の数の GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security ライセンスを、定義された期間 (通常は少なくとも 1 年間) 購入します。
- アクティブなコミッターによる Advanced Security の使用量が購入したライセンスの数を超える場合は、この超過分の使用量をカバーするために追加のライセンスを購入する必要があります。
コミッターとコストの管理
GitHub Team プランでは、使用状況を制御することで、コミッターとコストを管理します。 使用できるオプションは、課金プラットフォームによって異なります。
Advanced Security の使用はコミッターごとに課金され、リポジトリごとに有効になります。 Organization からコミッターを削除した場合、またはリポジトリですべての GitHub Secret Protection or GitHub Code Security 機能を無効にした場合、現在の月次支払いサイクルが終了するまで、そのコミッターは課金対象のままです。 コミッターが月の途中で追加された場合にのみ、日割り計算による課金が適用されます。 コミッターの追跡と課金の方法については、「使用状況の把握」を参照してください。
予算およびアラートを使用して、使用量とコストを制御できます。 「「Preventing overspending」 」を参照してください。
Note
GitHub Secret Protection or GitHub Code Security を有効にしたとき、[Billing & Licensing] タブの使用状況データに変更が表示されるまで、最大 2 時間かかります。
各ライセンスは、Advanced Security を使用できるアカウントの最大数を指定します。 対象のリポジトリの少なくとも 1 つで製品が有効にされているアクティブなコミッターごとに、1 つのライセンスを使います。 organization アカウントからユーザーを削除すると、ユーザーのライセンスは 24 時間以内に解放されます。
ライセンス制限を超えた場合、Advanced Security ライセンスによって制御される機能は、既に有効になっているすべてのリポジトリで引き続き機能します。 ただし、追加のリポジトリで GitHub Secret Protection or GitHub Code Security を有効にすることはできません。 GitHub Secret Protection or GitHub Code Security が自動的に有効になるように構成されている、organization で作成された新しいリポジトリは、製品を無効にして作成されます。
ライセンスを使用可能にしたらすぐに、一部のリポジトリで GitHub Secret Protection or GitHub Code Security を無効にするか、ライセンス サイズを増やすと、GitHub Secret Protection and GitHub Code Security を有効にするオプションが再度通常どおり動作します。
Enterprise アカウントが所有する organization による Advanced Security の使用を許可または禁止するポリシーを適用できます。 「エンタープライズのコード セキュリティと分析のためのポリシーの適用」を参照してください。
アクティブおよび一意のコミッター
GitHub Secret Protection or GitHub Code Security を使用する一意のアクティブなコミッターの数によって、ライセンスの使用が制御されます。
Advanced Security の [Global settings] ページで、organization のアクティブおよび一意のコミッターを確認できます。 [Secret Protection repositories] と [Code Security] に、概要とリポジトリレベルの詳細が報告されます。 「組織のグローバル セキュリティ設定の構成」を参照してください。
- [Active committers] は、少なくとも 1 つの organization 所有リポジトリに投稿した、organization 内のライセンスを使用するコミッターの数です。 つまり、organization のメンバー、外部のコラボレーターでもあるか、organization に参加するための保留中の招待状を持っており、GitHub App のボットではないということです。 ボットとマシンのアカウントの違いについては、「GitHub Apps と OAuth アプリの違い」を参照してください。
- [Unique committers] は、1 つのリポジトリ、または 1 つの organization 内のリポジトリにのみ投稿したアクティブなコミッターの数です。 この数値は、そのリポジトリまたは organization の GitHub Secret Protection or GitHub Code Security を無効にすることで解放できるライセンスの数を示しています。
リポジトリまたは organization の一意のコミッターがいない場合は、すべてのアクティブなコミッターが Advanced Security ライセンスを使用する他のリポジトリまたは organization にも投稿しています。 そのリポジトリまたは organization の製品を無効にしても、ライセンスが解放されたり、使用コストが削減されたりすることはありません。
課金プラットフォーム
2024 年 6 月に、GitHub は、有料製品の使用に関するより詳細な分析情報と制御を提供する新しい課金プラットフォームを導入しました。 すべての organization は新しい課金プラットフォームに移行されます。
新しい課金プラットフォーム
- GitHub の任意のページの右上隅にある、自分のプロフィール写真を選択します。
- Organization の場合は、[Your organizations] をクリックし、organization の横にある [Settings] をクリックします。
Organization で新しい課金プラットフォームを使用している場合は、サイドバーに [Billing & Licensing] オプションが表示されます。「Managing your billing」を参照してください。
元の課金プラットフォーム
元の課金プラットフォーム上の各 organization には、新しい課金プラットフォームへの移行の前に GitHub から連絡があります。 まだ連絡がない場合は、元の課金プラットフォームを使用している可能性があります。「Managing your billing」を参照してください。
使用状況の把握
ユーザーは、複数のリポジトリまたは organization にコントリビュートできます。 使用状況は organization 全体について測定され、ユーザーが投稿しているリポジトリや organization の数に関係なく、各メンバーが 1 つのライセンスを使うことが保証されます。
1 つ以上のリポジトリに対して GitHub Secret Protection or GitHub Code Security を有効または無効にすると、GitHub によって使用状況がどのように変わるかの概要が表示されます。
- 従量制課金。ライセンスを使用するアクティブなコミッターの数の増減を示します。
- ボリューム/サブスクリプション課金。一意のアクティブなコミッターによって使用または解放されたライセンスの数を示します。
以下のタイムラインの例は、Advanced Security 製品のアクティブなコミッター数が Enterprise 内で時間と共にどのように変化しうるかを示しています。 月ごとに、イベントと合わせてその結果のコミッター数と使用量ベース課金への影響が表示されます。
Note
ユーザーには、コミットが過去 90 日間より前に作成されていたとしても、リポジトリのいずれかのブランチにコミットをプッシュしていればアクティブのフラグが立ちます。
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 に減少します。 |