Skip to main content

AI を使用したカスタム パターンの正規表現の生成

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

パートナーに対するシークレット スキャンニング アラート はパブリック リポジトリとパブリック npm パッケージで自動的に実行され、GitHub.com で漏洩したシークレットについてサービス プロバイダーに通知します。

ユーザーに対するシークレット スキャンニング アラート は、すべてのパブリック リポジトリで無料で利用できます。 GitHub Enterprise Cloud を使い、GitHub Advanced Security のライセンスを持っている組織は、プライベート リポジトリと内部リポジトリに対して ユーザーに対するシークレット スキャンニング アラート を有効にすることもできます。 詳細については、「シークレット スキャンについて」と「GitHub Advanced Security について」を参照してください。

GitHub Advanced Security の無料試用については、「GitHub Advanced Security の無料試用版を設定する」を参照してください。

注: レギュラー エクスプレション ジェネレーター はベータ版です。 機能とドキュメントテーションは変更される場合があります。 エンタープライズ アカウントがあれば、GitHub Advanced Security を使用すると、GitHub Advanced Security AI 機能の待機リストに参加できます。

About the レギュラー エクスプレション ジェネレーター

カスタムパターンは正規表現で書式設定されています。 GitHub に正規表現を手動で入力することも、レギュラー エクスプレション ジェネレーター を使用することもできます。 ジェネレーターは、検出すべき必要な文字を含め、検出したいパターンの種類のテキストを入力する事ができる生成型 AI モデルを使用しています。 このモデルでは、確認できる最大 3 つの正規表現が返されます。

リポジトリまたは組織の正規表現を手動で生成する方法については、「シークレット スキャンのカスタム パターンの定義」を参照してください。

ジェネレーターの詳細については、「カスタム パターンの正規表現ジェネレーターについて」をご覧ください。

ジェネレーターを使用したリポジトリの正規表現の生成

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

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

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

  3. サイドバーの [セキュリティ] セクションで、 [コードのセキュリティと分析] をクリックします。

  4. [コードのセキュリティと分析] の下で、「GitHub Advanced Security」を見つけてください。

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

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

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

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

  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 を構成できます。 詳細については、「カスタム パターンのプッシュ保護を有効にする」を参照してください

ジェネレーターを使用して組織の正規表現を生成する

  1. GitHub.com の右上隅にあるプロファイル写真を選択し、次に自分の組織をクリックします。

    @octocat のプロファイル写真の下にあるドロップダウン メニューのスクリーンショット。 [Your organizations] (自分の組織) が濃いオレンジ色の枠線で囲まれています。

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

  3. サイドバーの [セキュリティ] セクションで、 [コードのセキュリティと分析] をクリックします。

  4. [コードのセキュリティと分析] の下で、「GitHub Advanced Security」を見つけてください。

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

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

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

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

  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. ドライ ランを実行するリポジトリを選びます。

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

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

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

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

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