Dependabot に対する暗号化されたシークレットについて
Dependabot シークレットとは、Organization レベルまたはリポジトリレベルで作成する、暗号化された資格情報のことです。 シークレットを Organization レベルで追加した場合、そのシークレットにどのリポジトリがアクセスできるかを指定できます。 シークレットを使用して、プライベートパッケージレジストリにある依存関係を Dependabot が更新できるようにすることができます。 シークレットを追加すると、それが GitHub に届く前に暗号化され、それを Dependabot がプライベートパッケージレジストリにアクセスするために使用するまで暗号化されたままとなります。
Dependabot シークレットを追加後は、dependabot.yml 設定ファイルで ${{secrets.NAME}} のように参照できます。「NAME」は、シークレットに付けた名前としてください。 例:
password: ${{secrets.MY_ARTIFACTORY_PASSWORD}}
詳しい情報については、「依存関係の更新の設定オプション 」を参照してください。
シークレットに名前を付ける
Dependabot シークレットの名前には、以下の制限があります。
- 英数字 (
[A-Z],[0-9])、(_) のみ含めることができます。 スペースは使用できません。 小文字を入力すると、大文字に変換されます。 - 名前の最初を
GITHUB_プレフィックスにすることはできません。 - 最初を数字にすることはできません。
Dependabot にリポジトリシークレットを追加する
ユーザアカウントのリポジトリにシークレットを作成するには、そのリポジトリのオーナーでなければなりません。 Organizationのリポジトリにシークレットを作成するには、管理アクセス権を持っていなければなりません。
-
GitHubで、リポジトリのメインページにアクセスしてください。
-
リポジトリ名の下で Settings(設定)をクリックしてください。

-
左サイドバーで [Secrets] をクリックします。
-
サイドバーでDependabotをクリックしてください。

-
New repository secret(新しいリポジトリのシークレット)をクリックしてください。
-
[Name(名前)] 入力ボックスにシークレットの名前を入力します。
-
シークレットの値を入力します。
-
[Add secret(シークレットの追加)] をクリックします。
シークレットの名前が、Dependabot シークレットのページに一覧表示されます。 [Update] をクリックすると、シークレットの値を変更できます。 [Remove] をクリックすると、シークレットを削除できます。

Dependabot に Organization シークレットを追加する
Organizationでシークレットを作成する場合、ポリシーを使用して、そのシークレットにアクセスできるリポジトリを制限できます。 たとえば、すべてのリポジトリにアクセスを許可したり、プライベート リポジトリまたは指定したリポジトリ のリストのみにアクセスを制限したりできます。
Organizationのレベルでシークレットを作成するには、管理アクセス権を持っていなければなりません。
-
GitHubで、Organizationのメインページにアクセスしてください。
-
Organization名の下で、Settings(設定)をクリックしてください。

-
左サイドバーで [Secrets] をクリックします。
-
サイドバーでDependabotをクリックしてください。

-
New organization secret(新しいOrganizationのシークレット)をクリックしてください。
-
[Name(名前)] 入力ボックスにシークレットの名前を入力します。
-
シークレットの Value(値) を入力します。
-
[ Repository access(リポジトリアクセス) ドロップダウン リストから、アクセス ポリシーを選択します。
-
[Selected repositories] を選択した場合、以下の手順に従います。
- をクリックします。
- このシークレットにアクセスできるリポジトリを選択します。

- [Update selection] をクリックします。
-
[Add secret(シークレットの追加)] をクリックします。
シークレットの名前が、Dependabot シークレットのページに一覧表示されます。 [Update] をクリックすると、シークレットの値やアクセスポリシーを変更できます。 [Remove] をクリックすると、シークレットを削除できます。
