Skip to main content

Copilot シークレット スキャンを使ってカスタム パターンの正規表現を生成する

Copilot シークレット スキャン の レギュラー エクスプレション ジェネレーター を使って、カスタム パターンの正規表現を記述することができます。 ジェネレーターは AI モデルを使用して、入力に一致する式と、必要に応じて文字列の例を生成します。

この機能を使用できるユーザーについて

リポジトリの所有者、組織の所有者、セキュリティ マネージャー、および 管理者 ロールを持つユーザー

Copilot シークレット スキャン

を使ってリポジトリの正規表現を生成する

Note

Copilot シークレット スキャン の レギュラー エクスプレション ジェネレーター を使用するには、GitHub Copilot のサブスクリプションは必要ありません。 Copilot シークレット スキャン機能は、GitHub Advanced Securityが有効になっているGitHub Enterprise Cloud企業のプライベート リポジトリで使用できます。

  1. GitHub で、リポジトリのメイン ページに移動します。

  2. リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  3. サイドバーの [Security] セクションで、[ Code security] をクリックします。

  4. [Code security] の下にある [GitHub Advanced Security] を見つけます。

  5. [Secret scanning] の [カスタム パターン] で、 [新しいパターン] をクリックします。

  6. [Pattern name] (パターン名) フィールドにパターンの名前を入力します。

  7. 右上の [Generate with AI] (AI で生成) をクリックします。

    Note

    ジェネレーターを使う代わりに、[Secret format] フィールドにシークレット パターンの形式の正規表現を入力して、正規表現を手動で入力できます。 詳しくは、「リポジトリのカスタム パターンの定義」または「組織のカスタム パターンの定義」を参照してください。

  8. 表示されるスライディング パネルで、次の操作を行います。

    • [I want a regular expression that] (正規表現が必要です) フィールドに、正規表現でキャプチャするパターンを記述します。理想的には、単純な英語で記述します。 他の自然言語を使用できますが、パフォーマンスは英語ほど良くない場合があります。

    • [Examples of what I'm looking for] (探しているものの例) フィールドに、スキャンしたいパターンの例を入力します。

    • [Generate suggestions] (提案の生成) をクリックします。

    • 必要に応じて、候補をクリックして正規表現の説明を表示します。

    • 表示される「Results」(結果) セクションで、使用したい結果の [Use results] (結果を使用) をクリックします。

      ジェネレーターが使用する、入力したカスタムの secret scanning パターン形式のスクリーンショット。

  9. [その他のオプション ] をクリックして、シークレットのフォーマットのその他の周辺コンテンツあるいは追加のマッチ要件を指定できます。 GitHub では、スライディング パネルに入力した例が** [Test string] (テスト文字列)** フィールドに追加されます。

  10. 新しいカスタム パターンをテストする準備ができたら、アラートを作成せずにリポジトリで一致するものを特定するために、 [保存してドライ ラン] をクリックします。

  11. ドライ ランが完了すると、結果のサンプル (最大 1000 個) が表示されます。 結果をレビューし、誤検知の結果を特定します。

    ドライ ランの結果を示すスクリーンショット。

  12. 新しいカスタム パターンを編集して結果に関するすべての問題を修正してから、 [保存してドライ ラン] をクリックして変更をテストします。

  13. 新しいカスタム パターンに問題がなければ、 [パターンの発行] をクリックします。

コミットが既定のブランチにマージされる前に、カスタム パターンのプッシュをチェックするように secret scanning を構成できます。 詳細については、「カスタム パターンのプッシュ保護を有効にする」を参照してください

Copilot シークレット スキャン

を使って organization の正規表現を生成する

  1. GitHub の右上隅で、プロフィール写真を選択し、 あなたの組織をクリックします。

  2. 組織の隣の [設定] をクリックします。

  3. サイドバーの [セキュリティ] セクションで、[ コードのセキュリティ][グローバル設定] をクリックしてください。 1。 [Custom patterns] (カスタム パターン) で、[新しいパターン] をクリックします。

  4. [Pattern name] (パターン名) フィールドにパターンの名前を入力します。

  5. 右上の [Generate with AI] (AI で生成) をクリックします。

    Note

    ジェネレーターを使う代わりに、[Secret format] フィールドにシークレット パターンの形式の正規表現を入力して、正規表現を手動で入力できます。 詳しくは、「リポジトリのカスタム パターンの定義」または「組織のカスタム パターンの定義」を参照してください。

  6. 表示されるスライディング パネルで、次の操作を行います。

    • [I want a regular expression that] (正規表現が必要です) フィールドに、正規表現でキャプチャするパターンを記述します。理想的には、単純な英語で記述します。 他の自然言語を使用できますが、パフォーマンスは英語ほど良くない場合があります。

    • [Examples of what I'm looking for] (探しているものの例) フィールドに、スキャンしたいパターンの例を入力します。

    • [Generate suggestions] (提案の生成) をクリックします。

    • 必要に応じて、候補をクリックして正規表現の説明を表示します。

    • 表示される「Results」(結果) セクションで、使用したい結果の [Use results] (結果を使用) をクリックします。

      ジェネレーターが使用する、入力したカスタムの secret scanning パターン形式のスクリーンショット。

  7. [その他のオプション ] をクリックして、シークレットのフォーマットのその他の周辺コンテンツあるいは追加のマッチ要件を指定できます。 GitHub では、スライディング パネルに入力した例が** [Test string] (テスト文字列)** フィールドに追加されます。

  8. 新しいカスタム パターンをテストする準備ができたら、アラートを作成せずにリポジトリ内の一致を特定するには、 [保存してドライ ラン] をクリックします。

  9. ドライ ランを実行するリポジトリを選びます。

    • Organization 全体でドライ ランを実行するには、Organization のすべてのリポジトリを選びます。
    • ドライ ランを実行するリポジトリを指定するには、 [選択済みリポジトリ] を選び、最大 10 個のリポジトリを検索して選びます。
  10. 新しいカスタム パターンをテストする準備ができたら、 [実行] をクリックします。

  11. ドライ ランが完了すると、結果のサンプル (最大 1000 個) が表示されます。 結果をレビューし、誤検知の結果を特定します。

    ドライ ランの結果を示すスクリーンショット。

  12. 新しいカスタム パターンを編集して結果に関するすべての問題を修正してから、 [保存してドライ ラン] をクリックして変更をテストします。

  13. 新しいカスタム パターンに問題がなければ、 [パターンの発行] をクリックします。

コミットが既定のブランチにマージされる前に、カスタム パターンのプッシュをチェックするように secret scanning を構成できます。 詳細については、「カスタム パターンのプッシュ保護を有効にする」を参照してください

参考資料