Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы, возможно, еще выполняется. Актуальные сведения см. в документации на английском языке.

Управление зашифрованными секретами для codespace

Вы можете хранить конфиденциальную информацию, например маркеры, которые нужны вам в пространствах кода, с помощью переменных среды.

Сведения о зашифрованных секретах для GitHub Codespaces

Можно добавить зашифрованные секреты в личную учетную запись, которую вы хотите использовать в codespace. Например, может потребоваться сохранить и иметь доступ к следующей конфиденциальной информации в виде зашифрованных секретов.

Можно выбрать какие репозитории должны иметь доступ к каждому секрету. Затем можно использовать секрет в любом codespace, создаваемом для репозитория с доступом к секрету. Чтобы поделиться секретом с codespace, созданным на основе шаблона, необходимо опубликовать codespace в репозитории на GitHub, а затем предоставить репозиторию доступ к секрету.

После создания секрета он будет доступен при создании или перезапуске codespace. Чтобы использовать только что созданный секрет в текущей среде codespace, необходимо остановить ее выполнение, а затем возобновить его. Сведения об остановке codespace см. в разделе Использование палитры команд Visual Studio Code в GitHub Codespaces.

Именование секретов

К именам секретов применяются следующие правила:

  • Имена секретов могут содержать только буквы и цифры ([a-z], [A-Z], [0-9]) или символы подчеркивания (_). Пробелы недопустимы.

  • Имена секретов не должны начинаться с префикса GITHUB_.

  • Имена секретов не должны начинаться с цифры.

  • В именах секретов регистр не учитывается.

  • Имена секретов должны быть уникальными на том уровне, на котором они были созданы. Например, секрет, созданный на уровне репозитория, должен иметь уникальное имя в этом репозитории.

    Если секрет с одним и тем же именем существует на нескольких уровнях, приоритет имеет секрет самого низкого уровня. Например, если секрет уровня организации имеет то же имя, что и секрет уровня репозитория, то приоритет имеет секрет уровня репозитория.

Ограничения для секретов

Можно хранить до 100 секретов для GitHub Codespaces.

Размер секретов ограничен 48 КБ.

Добавление секрета

  1. В правом верхнем углу любой страницы щелкните фотографию профиля, а затем выберите Параметры.

    Снимок экрана: меню учетной записи GitHub с параметрами для просмотра и изменения профиля, содержимого и параметров пользователями. Пункт меню "Параметры" выделен темно-оранжевым цветом. 1. В разделе "Код, планирование и автоматизация" на боковой панели нажмите Codespaces.

  2. Справа от "Секреты Codespaces" щелкните Создать секрет.

  3. В поле "Имя" введите имя секрета.

  4. В поле "Значение" введите значение секрета. 1. Выберите раскрывающееся меню "Доступ к репозиторию", а затем выберите репозиторий, к которому секрету требуется предоставить доступ. Повторите это действие для каждого репозитория, к которому секрету требуется предоставить доступ.

    Снимок экрана: раскрывающееся меню "Доступ к репозиторию". В раскрывающемся меню перечислены два репозитория.

  5. Щелкните Добавить секрет.

Изменение секрета

Можно обновить значение существующего секрета и изменить то, какие репозитории имеют доступ к секрету.

  1. В правом верхнем углу любой страницы щелкните фотографию профиля, а затем выберите Параметры.

    Снимок экрана: меню учетной записи GitHub с параметрами для просмотра и изменения профиля, содержимого и параметров пользователями. Пункт меню "Параметры" выделен темно-оранжевым цветом. 1. В разделе "Код, планирование и автоматизация" на боковой панели нажмите Codespaces.

  2. В разделе "Секреты Codespaces", справа от секрета, который нужно изменить, щелкните Обновить.

  3. В разделе "Значение" щелкните ссылку "Введите новое значение".

    Снимок экрана: страница "Codespaces / Update secret" (Кодовые пространства и секрет обновления). Ссылка "Введите новое значение" выделена темно-оранжевым контуром.

  4. В поле "Значение" введите значение секрета. 1. Выберите раскрывающееся меню "Доступ к репозиторию", а затем выберите репозиторий, к которому секрету требуется предоставить доступ. Повторите это действие для каждого репозитория, к которому секрету требуется предоставить доступ.

    Снимок экрана: раскрывающееся меню "Доступ к репозиторию". В раскрывающемся меню перечислены два репозитория.

  5. При необходимости, чтобы удалить доступ секрета к репозиторию, отмените выбор репозитория.

    Снимок экрана: список двух репозиториев. Для каждого из них установлен флажок.

  6. Нажмите кнопку Сохранить изменения.

Удаление секрета

  1. В правом верхнем углу любой страницы щелкните фотографию профиля, а затем выберите Параметры.

    Снимок экрана: меню учетной записи GitHub с параметрами для просмотра и изменения профиля, содержимого и параметров пользователями. Пункт меню "Параметры" выделен темно-оранжевым цветом. 1. В разделе "Код, планирование и автоматизация" на боковой панели нажмите Codespaces.

  2. В разделе "Секреты Codespaces", справа от секрета, который нужно удалить, щелкните Удалить.

  3. Ознакомьтесь с предупреждением и нажмите кнопку ОК.

Использование секретов

Секрет экспортируется в пользовательский сеанс терминала в качестве переменной среды.

Снимок экрана терминала в VS Code. Команда "echo $EXAMPLE_API_KEY" вернула "aBCdeFG1234567".

Можно использовать секреты в среде codespace после ее создания и запуска. Например, секрет можно использовать в следующих случаях:

  • При запуске приложения из встроенного терминала или сеанса SSH.
  • В скрипте жизненного цикла контейнера разработки, который запускается после запуска среды codespace. Дополнительные сведения о скриптах жизненного цикла контейнеров разработки см. в документации на веб-сайте "Контейнеры разработки: спецификация".

Секреты Codespace нельзя использовать:

  • Во время сборки codespace (то есть в dockerfile или пользовательской точке входа).
  • В компоненте контейнера разработки. Дополнительные сведения см. в свойстве features в спецификации контейнеров разработки на веб-сайте "Контейнеры разработки".

Дополнительные материалы