secret scanningアラートページについて
リポジトリのsecret scanningを有効にするか、secret scanningが有効になっているリポジトリにコミットをプッシュすると、サービス プロバイダーで定義されているパターン、および Enterprise、organization、またはリポジトリで定義されているカスタム パターンと一致するシークレットについて、GitHub によりその内容がスキャンされます。
secret scanningでシークレットが検出されると、GitHub によってアラートが送信されます。GitHub のリポジトリの [セキュリティ] タブにアラートが表示されます。
アラートの表示
- お使いの GitHub Enterprise Server インスタンス で、リポジトリのメイン ページへ移動します。
- リポジトリ名の下にある [ セキュリティ] をクリックします。 [セキュリティ] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [セキュリティ] をクリックします。
- 左側のサイドバーの [Vulnerability alerts] (脆弱性アラート) で、 [Secret scanning] をクリックします。
- [Secret scanning]で、表示するアラートをクリックします。
アラートのフィルター処理
アラート リストにさまざまなフィルターを適用し、関心のあるアラートを見つけることができます。 アラート リストの上にあるドロップダウン メニューを使用したり、テーブルにリストされた修飾子を検索バーに入力したりすることができます。
修飾子 | 説明 |
---|---|
is:open | 開いたアラートを表示します。 |
is:closed | 終了したアラートを表示します。 |
secret-type:SECRET-NAME | たとえば、secret-type:github_personal_access_token のような特定のシークレット タイプのアラートを表示します。 サポートされているシークレットの種類のリストについては、「secret scanning パターン」を参照してください。 |
provider:PROVIDER-NAME | たとえば、provider:github のような特定のプロバイダーのアラートを表示します。 サポートされているパートナーのリストについては、「secret scanning パターン」を参照してください。 |
アラートの修正
シークレットがリポジトリにコミットされたら、シークレットが侵害されたと考える必要があります。 GitHub は、侵害されたシークレットに対して次のアクションを行うことをおすすめします。
- 侵害された GitHub personal access token については、侵害されたトークンを削除し、新しいトークンを作成し、古いトークンを使っていたサービスを更新してください。 詳しくは、「個人用アクセス トークンを管理する」を参照してください。
- 特定します。 詳しくは、「アクセス トークンによって実行される監査ログ イベントの識別」を参照してください。
- それ以外のすべてのシークレットについては、最初に GitHub Enterprise Server にコミットされたシークレットが有効であることを確認してください。 有効な場合は、新しいシークレットを作成し、古いシークレットを使用するサービスをすべて更新して、古いシークレットを削除します。
アラートの終了
-
お使いの GitHub Enterprise Server インスタンス で、リポジトリのメイン ページへ移動します。
-
リポジトリ名の下にある [ セキュリティ] をクリックします。 [セキュリティ] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [セキュリティ] をクリックします。
-
左側のサイドバーの [Vulnerability alerts] (脆弱性アラート) で、 [Secret scanning] をクリックします。
-
[Secret scanning]で、表示するアラートをクリックします。
-
アラートを無視するには、[次の状態として閉じる] ドロップダウン メニューを選び、アラートを解決する理由をクリックします。
-
必要に応じて、[コメント] フィールドに無視のコメントを追加します。 無視のコメントはアラート タイムラインに追加され、監査と報告の間に正当な理由として使用できます。 アラート タイムラインで、すべての無視されたアラートと無視コメントの履歴を確認できます。 また、Secret scanning API を使って、コメントを取得または設定することもできます。 コメントは
resolution_comment
フィールドに含まれています。 詳しくは、REST API ドキュメントの「シークレット スキャン用の REST API エンドポイント」をご覧ください。 -
[アラートをクローズする] をクリックします。
シークレット スキャンニング アラート
の通知を構成する
増分スキャンと履歴スキャンでは通知が異なります。
増分スキャン
新しいシークレットが検出されると GitHub Enterprise Server によって、通知設定に従ってリポジトリのセキュリティ アラートにアクセスできるすべてのユーザーに通知されます。 これらのユーザーは次のとおりです。
- リポジトリ管理者
- セキュリティマネージャー
- 読み書きアクセス権が与えられるカスタム ロールを持つユーザー
- Organization 所有者とエンタープライズ所有者。シークレットが漏洩したリポジトリの管理者である場合
注: コミット作成者がシークレットを間違ってコミットした場合、通知設定に関係なくその者に通知されます。
次の場合に、電子メール通知を受け取ります。
- リポジトリをウォッチしている。
- リポジトリ
通知設定について詳しくは、「リポジトリのセキュリティと分析設定を管理する」と「個々のリポジトリのウォッチ設定の構成」を参照してください。
履歴スキャン
履歴スキャンの場合、GitHub Enterprise Server では次のユーザーに通知します。
- 組織所有者、エンタープライズ所有者、セキュリティ マネージャー - 履歴スキャンの完了時に必ず。シークレットが見つからないとしても。
- リポジトリ管理者、セキュリティ マネージャー、読み書きアクセス権が与えられるカスタム ロールを持つユーザー - 履歴スキャンでシークレットが見つかったときは必ず。通知設定に基づいて。
コミット作成者には通知 "しません"。
通知設定について詳しくは、「リポジトリのセキュリティと分析設定を管理する」と「個々のリポジトリのウォッチ設定の構成」を参照してください。
シークレット スキャン アラートへの応答の監査
GitHub ツールを使用して、secret scanning アラートに応答して実行されたアクションを監査できます。 詳しくは、「セキュリティ アラートの監査」を参照してください。