Skip to main content

リポジトリの暗号化されたシークレットと GitHub Codespaces の Organization を管理する

暗号化されたシークレットを使用すると、機密情報を Organization、リポジトリ、または GitHub Codespaces に保存できます。

Who can use this feature

To manage secrets for GitHub Codespaces for an organization, you must be an organization owner.

シークレットについて

シークレットは、Organization またはリポジトリで作成する暗号化された環境変数です。 作成したシークレットは、GitHub Codespaces で使用できます。 GitHub では、libsodium シール ボックスを使用して、シークレットが GitHub に到達する前に暗号化し、codespace で使用する場合にのみ復号化します。

Organization レベルのシークレットを使用すると、複数のリポジトリ間でシークレットを共有できるため、重複するシークレットを作成する必要が軽減されます。 アクセスポリシーを使用して、Organization のシークレットを使用できるリポジトリを制御できます。

Once you have created a secret, it will be available when you create a new codespace or restart the codespace. To use a secret that you've just created in a current codespace, you will need to stop the codespace and resume it. For information about stopping the codespace, see "Using the Visual Studio Code Command Palette in GitHub Codespaces."

シークレットに名前を付ける

シークレットの名前には次のルールが適用されます。

  • シークレット名には、英数字 ([a-z][A-Z][0-9]) またはアンダースコア (_) のみを含めることができます。 スペースは使用できません。

  • シークレット名の最初を GITHUB_ プレフィックスにすることはできません。

  • シークレット名の最初を数字にすることはできません。

  • シークレット名は大文字と小文字を区別しません。

  • シークレット名は、作成されたレベルで一意である必要があります。 たとえば、リポジトリレベルで作成されたシークレットは、そのリポジトリ内で一意の名前である必要があり、Organization レベルで作成されたシークレットは、そのレベルで一意の名前である必要があります。

    複数のレベルで同じ名前のシークレットが存在する場合、最も低いレベルのシークレットが優先されます。 たとえば、Organization レベルのシークレット名がリポジトリレベルのシークレット名と同じ場合、リポジトリレベルのシークレット名が優先されます。

シークレットの制限

Organization ごとに最大 100 個のシークレット、リポジトリごとに最大 100 個のシークレットを保存できます。

シークレットの容量は最大64 KBです。

リポジトリにシークレットを追加する

Organization リポジトリのシークレットを作成するには、管理者アクセス権が必要です。

  1. On GitHub.com, navigate to the main page of the repository. 1. リポジトリ名の下の [ 設定] をクリックします。 リポジトリの設定ボタン 1. サイドバーの [セキュリティ] セクションで、 [シークレット] を選んでから、 [Codespaces] をクリックします。

  2. ページの上部にある [新しいリポジトリ シークレット] をクリックします。

  3. [名前] 入力ボックスにシークレットの名前を入力します。

  4. シークレットの値を入力します。

  5. [シークレットの追加] をクリックします。

Organization にシークレットを追加する

Organizationでシークレットを作成する場合、ポリシーを使用して、そのシークレットにアクセスできるリポジトリを制限できます。 たとえば、すべてのリポジトリにアクセスを許可したり、プライベート リポジトリまたは指定したリポジトリ のリストのみにアクセスを制限したりできます。

組織レベルでシークレットを作成するには、admin アクセス権が必要です。

  1. On GitHub.com, navigate to the main page of the organization. 1. Organization 名の下で、 [設定] をクリックします。 Organization の設定ボタン 1. サイドバーの [セキュリティ] セクションで、 [シークレット] を選んでから、 [Codespaces] をクリックします。

  2. ページの上部にある [新しい Organization のシークレット] をクリックします。

  3. [名前] 入力ボックスにシークレットの名前を入力します。

  4. シークレットの [値] を入力します。

  5. [リポジトリ アクセス] ドロップダウン リストから、アクセス ポリシーを選択します。 プライベート リポジトリが選択された [リポジトリ アクセス] リスト

  6. [シークレットの追加] をクリックします。

Organizationレベルのシークレットへのアクセスの確認

Organization 内のシークレットに適用されているアクセスポリシーを確認できます。

  1. On GitHub.com, navigate to the main page of the organization. 1. Organization 名の下で、 [設定] をクリックします。 Organization の設定ボタン 1. サイドバーの [セキュリティ] セクションで、 [シークレット] を選んでから、 [Codespaces] をクリックします。

  2. シークレットのリストには、設定済みのアクセス許可とポリシーが含まれます。 次に例を示します。 シークレットの一覧

  3. 各シークレットに構成されているアクセス許可の詳細については、 [更新] をクリックします。

参考資料