GitHub Secret Protection について
Secret Protection に含まれる次の機能は、シークレットの漏洩を検出して防止するのに役立ち、監視と検出を継続的に行うことができます。 機能とその利用可能性について詳しくは、「GitHub Secret Protection」をご覧ください。。
-
Secret scanning: リポジトリにチェックインされているシークレット (たとえばキーやトークンなど) を検出し、アラートを受信します。
-
プッシュ保護: シークレットを含むコミットを禁止することで、シークレットの漏洩を発生前に防ぎます。
-
Copilot シークレット スキャン: AI を活用して、リポジトリにチェックインされたパスワードなどの非構造化資格情報を検出します。
-
カスタム パターン: organization 固有のシークレットの漏洩を検出および防止します。
-
プッシュ保護の委任されたバイパスと委任されたアラートの無視: Enterprise 内で機密性の高いアクションを実行できるユーザーをより適切に制御するための承認プロセスを実装し、ガバナンスを大規模にサポートします。
-
セキュリティの概要: organization 全体のリスク分散を理解します。
さらに、Secret Protection には無料のスキャン機能であるリスク評価レポートが含まれており、organization が GitHub 境界全体でシークレットの漏洩の範囲を把握するのに役立ちます。 「シークレット リスク評価について」を参照してください。
Secret Protection は、それが有効になっているリポジトリに対するアクティブなコミッターごとに課金されます。 GitHub Team または GitHub Enterprise プランをお持ちのユーザーは、それを使用できます。「GitHub Advanced Security の課金について」をご覧ください。
Organization のすべてのリポジトリに対して Secret Protection を有効にする必要がある理由
GitHub は、シークレットの漏洩や公開のリスクから organization を保護するため、すべてのリポジトリで GitHub Secret Protection 製品を有効にすることをお勧めします。 GitHub Secret Protection は、パブリック リポジトリに対しては無料で有効にでき、プライベートと内部のリポジトリでは購入可能なアドオンとして利用できます。
-
無料のsecret risk assessmentは、アーカイブされたリポジトリ内のコードを含め、organization 内の "コードのみ" をスキャンします。__ スキャン対象のサーフェスを拡張して、pull request、issue、wiki、および GitHub Secret Protection を伴う GitHub Discussions のコンテンツをカバーできます。。 「シークレット スキャンについて」を参照してください
-
secret risk assessment と secret scanning は、リポジトリに_既にコミットされているコードをスキャンします_。 プッシュ保護では、コミットが GitHub に保存される "前の" プッシュ プロセスの間に、コードでシークレットがスキャンされて、シークレットが検出されるとプッシュはブロックされます。__ 「プッシュ保護について」を参照してください。
-
Organization の内部的なシークレット パターンが 1 つ以上ある場合、それらは secret scanning でサポートされている既定のパターンでは検出されません。 ユーザーの organization 内でのみ有効なカスタム パターンを定義し、secret scanning 機能を拡張してこれらのパターンを検出できます。 「シークレット スキャンのカスタム パターンの定義」を参照してください。
-
悪用される可能性があるシークレットがわかっていれば、secret scanning によって検出された漏洩したシークレットの修復を優先しやすくなります。 有効性チェックを使うと、アクティブなシークレットが引き続き悪用される可能性があるため、これらのアラートを確認し、優先して修復する必要があるかどうかがわかります。 「リポジトリの有効性チェックの有効化」を参照してください。
-
また、パスワードなどの非構造化シークレットの漏洩を検出することもできます。 これは、AI 搭載の Copilot シークレット スキャン によって可能です。 「Copilotシークレットスキャンを使用したジェネリックシークレットの責任ある検出」を参照してください。
-
セキュリティ データの防止、検出、修復の視覚化は、作業対象の場所とセキュリティ イニシアティブが影響を与えている場所を理解するために重要です。 セキュリティの概要には、organization と Enterprise のレベルでコードベースの現状を詳しく調べることができる専用のビューがあります。 「セキュリティの概要について」を参照してください。
シークレットの漏洩の検出と防止に加えて、ソフトウェア サプライ チェーンを保護するため、organization のすべてのワークフローにコード セキュリティを組み込むことを検討する必要があります。 「サプライ チェーンのセキュリティについて」を参照してください。
セキュリティのニーズやオプションの評価に関するサポートが必要な場合は、GitHub の営業チームにお問い合わせください。
または、ニーズの評価に GitHub Advanced Security を無料で試すこともできます。 「GitHub Advanced Security の試用版を計画する」を参照してください。
Secret Protection の有効化
GitHub-recommended security configuration (organization 内のリポジトリに適用できるセキュリティ有効化設定のコレクション) を使用すると、セキュリティ機能を大規模にすばやく有効にすることができます。 その後、global settings を使うと、organization レベルで Advanced Security の機能をさらにカスタマイズできます。 「大規模なセキュリティ機能の有効化について」をご覧ください。
Security configurations は、Enterprise と organization のレベルで適用できます。 Organization に対して追加のセキュリティ設定を構成することもできます。 global settings と呼ばれるこれらの設定は、その後、organization 内のすべてのリポジトリによって継承されます。 global settings を使うと、セキュリティ機能による organization の分析方法をカスタマイズできます。 「組織のグローバル セキュリティ設定の構成」を参照してください。
さらに、リポジトリ管理者はリポジトリ レベルでセキュリティ機能を有効にできます。
secret risk assessment からの Secret Protection の有効化
メモ
secret risk assessmentレポートは現在パブリック プレビュー段階であり、変更される可能性があります。 フィードバックや質問がある場合は、GitHub Community のディスカッションに参加してください。
-
GitHub で、organization のメイン ページに移動します。
-
組織名の下で、 [ セキュリティ] をクリックします。
-
サイドバーの [Security] で、[Assessments] をクリックします。
-
バナー表示の [Enable Secret Protection] ドロップダウンをクリックしてから、organization のリポジトリで機能を有効にするオプションのいずれかを選びます。
-
無料のパブリック リポジトリの場合: organization 内のパブリック リポジトリについて "のみ" クリックして有効にします。__
-
すべてのリポジトリの場合: [Enable Secret Protection] をクリックし、表示される見積もりコストで、secret scanning とプッシュ保護の両方を organization 内のすべてのリポジトリに対して有効にします。 使用コストを払うか、GitHub Secret Protection ライセンスを購入する必要があります。
または、[Configure in settings] をクリックして、Secret Protection を有効にするリポジトリをカスタマイズします。 「組織での GitHub で推奨されるセキュリティ構成の適用」と「カスタム セキュリティ構成の作成」をご覧ください。
-