シークレットについて
シークレットは、Organization またはリポジトリで作成する暗号化された環境変数です。 作成したシークレットは、Codespaces で使用できます。 GitHub は libsodium sealed box を使用して、シークレットが GitHub に到達する前に暗号化し、codespace で使用する場合にのみ復号化します。
Organization レベルのシークレットを使用すると、複数のリポジトリ間でシークレットを共有できるため、重複するシークレットを作成する必要が軽減されます。 アクセスポリシーを使用して、Organization のシークレットを使用できるリポジトリを制御できます。
シークレットを作成すると、新しいcodespaceを作成したり、codespaceを再起動したりすれば、利用できるようになります。 作成したばかりのシークレットを現在のcodespaceで使うには、codespaceを停止して再開しなければなりません。 codespaveの停止に関する情報については「Codespacesでのコマンドパレットの利用」を参照してください。
シークレットに名前を付ける
シークレットの名前には次のルールが適用されます。
-
シークレット名には、英数字(
[a-z]
、[A-Z]
、[0-9]
)または下線(_
)のみを含めることができます。 スペースは使用できません。 -
シークレット名の最初を
GITHUB_
プレフィックスにすることはできません。 -
シークレット名の最初を数字にすることはできません。
-
シークレット名は大文字と小文字を区別しません。
-
シークレット名は、作成されたレベルで一意である必要があります。 たとえば、リポジトリレベルで作成されたシークレットは、そのリポジトリ内で一意の名前である必要があり、Organization レベルで作成されたシークレットは、そのレベルで一意の名前である必要があります。
If a secret with the same name exists at multiple levels, the secret at the lowest level takes precedence. たとえば、Organization レベルのシークレット名がリポジトリレベルのシークレット名と同じ場合、リポジトリレベルのシークレット名が優先されます。
シークレットの制限
Organization ごとに最大 100 個のシークレット、リポジトリごとに最大 100 個のシークレットを保存できます。
シークレットの容量は最大64 KBです。
リポジトリにシークレットを追加する
Organization リポジトリのシークレットを作成するには、管理者アクセス権が必要です。
- GitHub.comで、リポジトリのメインページにアクセスしてください。
- リポジトリ名の下で Settings(設定)をクリックしてください。
- In the "Security" section of the sidebar, select Secrets then click Codespaces.
- ページの上部にある [New repository secret] をクリックします。
- [Name(名前)] 入力ボックスにシークレットの名前を入力します。
- シークレットの値を入力します。
- [Add secret(シークレットの追加)] をクリックします。
Organization にシークレットを追加する
Organizationでシークレットを作成する場合、ポリシーを使用して、そのシークレットにアクセスできるリポジトリを制限できます。 たとえば、すべてのリポジトリにアクセスを許可したり、プライベート リポジトリまたは指定したリポジトリ のリストのみにアクセスを制限したりできます。
Organizationのレベルでシークレットを作成するには、管理
アクセス権を持っていなければなりません。
- GitHub.comで、Organizationのメインページにアクセスしてください。
- Organization 名の下で、クリックします
Settings.
- In the "Security" section of the sidebar, select Secrets then click Codespaces.
- ページの上部にある [New organization secret] をクリックします。
- [Name(名前)] 入力ボックスにシークレットの名前を入力します。
- シークレットの Value(値) を入力します。
- [ Repository access(リポジトリアクセス) ドロップダウン リストから、アクセス ポリシーを選択します。
- [Add secret(シークレットの追加)] をクリックします。
Organizationレベルのシークレットへのアクセスの確認
Organization 内のシークレットに適用されているアクセスポリシーを確認できます。
- GitHub.comで、Organizationのメインページにアクセスしてください。
- Organization 名の下で、クリックします
Settings.
-
In the left sidebar, click Secrets.
-
シークレットのリストには、設定済みのアクセス許可とポリシーが含まれます。 例:
-
各シークレットに設定されているアクセス許可の詳細については、[Update(更新)] をクリックしてください。