注: この機能を使うには、サイト管理者が お使いの GitHub Enterprise Server インスタンス の secret scanning を有効にする必要があります。 詳しくは、「アプライアンスのシークレットスキャンを設定する」を参照してください。
シークレット スキャン を有効にする
組織によって所有されているリポジトリに対して シークレット スキャン を有効にすることができます。 有効にすると、secret scanningはGitHubリポジトリ中に存在するすべてのブランチのGit履歴全体に対して、あらゆるシークレットをスキャンします。
[コードのセキュリティと分析] の Organization 設定ページを使って、Organization 内のすべてのパブリック リポジトリに対して code scanning を有効にできます。
-
お使いの GitHub Enterprise Server インスタンス で、リポジトリのメイン ページへ移動します。 1. リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
-
サイドバーで、 [セキュリティと分析] をクリックします。
-
Advanced Security がまだリポジトリで有効化されていなければ、[GitHub Advanced Security] の右側で [有効化] をクリックしてください。
-
Advanced Securityの有効化の影響をレビューしてから、 [このリポジトリで GitHub Advanced Security を有効化] をクリックしてください。
-
Advanced Securityを有効化すると、Organizationの設定によってはリポジトリでsecret scanningが自動的に有効化されることがあります。 "Secret scanning" が [有効] ボタンと共に表示されている場合でも、 [有効] をクリックしてsecret scanningを有効にする必要があります。 [無効] ボタンが表示された場合、secret scanningは既に有効になっています。
シークレット スキャン からディレクトリを除外する
secret_scanning.yml ファイルを構成して、secret scanning からディレクトリを除外することができます。 たとえば、テストまたはランダムに生成されたコンテンツを含むディレクトリを除外できます。
-
お使いの GitHub Enterprise Server インスタンス で、リポジトリのメイン ページへ移動します。 1. ファイルの一覧の上にある、 [ファイルの追加] ドロップダウンを選んで、 [新しいファイルの作成] をクリックします。
-
ファイル名フィールドに「 .github/secret_scanning.yml」と入力します。
-
[新しいファイルの編集] で、
paths-ignore:
と入力してから、secret scanningから除外するパスを入力します。paths-ignore: - "foo/bar/*.js"
*
などの特殊文字を使用して、パスをフィルター処理することができます。 フィルター パターンの詳細については、「GitHub Actions のワークフロー構文」を参照してください。注:
paths-ignore
に 1,000 を超えるエントリがある場合、secret scanningでは、最初の 1,000 個のディレクトリのみがスキャンから除外されます。- secret_scanning.yml が 1 MB を超える場合、secret scanningではファイル全体を無視します。
secret scanning からの個々のアラートを無視することもできます。 詳しくは、「シークレット スキャンからのアラートの管理」を参照してください。